我有两台redhat 6.3机器,两者都没有在/ etc / hosts中更改(即,我还没有为它们添加IP地址)。在我的机器上可以正常运行getLocalhost并返回主机名a.domain.com。另一个失败,发生UnknownHostException。
以前,我总是将ip添加到/ etc / hosts,但是我想知道为什么这台机器不需要它。两台机器上的/etc/nsswitch.conf都有“主机:文件dns”,因此两台机器上的相同。
/ etc / sysconfig / network-scripts / ifcfg- eth0脚本有很大的不同。得到UnknownHostException的节点是这样的
DEVICE="eth0" BOOTPROTO="static" NM_CONTROLLED="yes" ONBOOT="yes" TYPE="Ethernet" IPADDR=10.10.1.5 PREFIX=23
工作的人有这样的事情…
DEVICE="eth0" HWADDR="AA:AA:AA:AA:3F:A8" NM_CONTROLLED="yes" ONBOOT=yes TYPE=Ethernet BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME="System eth0" IPADDR=10.10.1.2 PREFIX=23 GATEWAY=10.10.1.1 DNS1=10.20.100.100 DNS2=10.20.100.101 DOMAIN="domain.com sub.domain.com"
这可能是某种原因吗?或我可以查看哪些其他文件以查看为什么它不起作用?我假设Java正在对计算机进行一些linux getLocalHost api调用以获取主机名。
谢谢,院长
啊,我偶然发现了差异。在我的/ etc / sysconfig / network文件中,我在工作计算机上具有FQDN,但在另一台计算机上,我只有主机名“ b”,因此将其更改为“ b.domain.com”可以解决此问题,而我没有根本不需要修改我的/ etc / hosts文件!!!!
院长