在nslookup能够的时候,InetAddress无法检索FQDN

时间:2012-03-12 12:00:37

标签: java ldap dns

我正在尝试从DNS检索特定计算机的FQDN,但在我的环境中,当我在主机名上使用nslookup时,我得到了它的FQDN但是当我在Java中尝试使用此代码时,我只获取主机名回来了:

InetAddress.getByName("Host name or address").getCanonicalHostName()

可能是什么原因? 有没有更好的方法从主机名获取FQDN而没有凭据或连接到LDAP服务器?

1 个答案:

答案 0 :(得分:0)

这是系统配置的问题。

来自Javadoc:

如果有安全管理器,则此方法首先使用hostname和-1作为其参数调用其checkConnect方法,以查看是否允许调用代码知道此IP地址的主机名,即连接到主机。如果不允许该操作,它将返回IP地址的文本表示。

getCanonicalHostName

您可以尝试更改系统设置以允许解析FQDN,也可以尝试执行ping命令,解析它并从中获取主机名。