我正在尝试从DNS检索特定计算机的FQDN,但在我的环境中,当我在主机名上使用nslookup
时,我得到了它的FQDN但是当我在Java中尝试使用此代码时,我只获取主机名回来了:
InetAddress.getByName("Host name or address").getCanonicalHostName()
可能是什么原因? 有没有更好的方法从主机名获取FQDN而没有凭据或连接到LDAP服务器?
答案 0 :(得分:0)
这是系统配置的问题。
来自Javadoc:
如果有安全管理器,则此方法首先使用hostname和-1作为其参数调用其checkConnect方法,以查看是否允许调用代码知道此IP地址的主机名,即连接到主机。如果不允许该操作,它将返回IP地址的文本表示。
您可以尝试更改系统设置以允许解析FQDN,也可以尝试执行ping命令,解析它并从中获取主机名。