【问题标题】:java getLocalHost() UnknownHostException /etc/hosts file differs linux api?java getLocalHost() UnknownHostException /etc/hosts 文件与 linux api 不同?
【发布时间】:2012-08-28 12:40:51
【问题描述】:

我有两台 redhat 6.3 机器,两台 /etc/hosts 都没有变化(即我没有给它们添加 IP 地址)。在我的机器上可以正常运行 getLocalhost 并返回主机名 a.domain.com。另一个因 UnknownHostException 而失败。

以前,我总是将 ip 添加到 /etc/hosts,但我想知道为什么这台机器不需要它。两台机器上的 /etc/nsswitch.conf 都有“hosts: files 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 调用以获取主机名。

谢谢, 院长

【问题讨论】:

    标签: java linux


    【解决方案1】:

    啊,我偶然发现了不同之处。在我的 /etc/sysconfig/network 文件中,我在工作机器上有 FQDN,但在另一台机器上,我只有主机名“b”,因此将其更改为“b.domain.com”解决了问题,但我没有根本不需要修改我的 /etc/hosts 文件!!!!

    院长

    【讨论】:

      猜你喜欢
      • 2012-03-05
      • 2021-10-16
      • 2011-08-14
      • 1970-01-01
      • 2014-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多