Java InetAddress无法检索FQDN,而nslookup可以
我正在尝试从DNS检索特定计算机的FQDN,但在我的环境中,当我对主机名使用Java InetAddress无法检索FQDN,而nslookup可以,java,ldap,dns,Java,Ldap,Dns,我正在尝试从DNS检索特定计算机的FQDN,但在我的环境中,当我对主机名使用nslookup时,我会获取其FQDN,但当我在Java中尝试此代码时,我只会获取主机名: InetAddress.getByName(“主机名或地址”).getCanonicalHostName() 原因可能是什么? 是否有更好的方法从主机名获取FQDN,而无需凭据或连接到LDAP服务器?这是系统配置的问题 从Javadoc: 如果有安全管理器,此方法首先调用其checkConnect方法,并将hostname和-1作
nslookup
时,我会获取其FQDN,但当我在Java中尝试此代码时,我只会获取主机名:
InetAddress.getByName(“主机名或地址”).getCanonicalHostName()
原因可能是什么?
是否有更好的方法从主机名获取FQDN,而无需凭据或连接到LDAP服务器?这是系统配置的问题 从Javadoc: 如果有安全管理器,此方法首先调用其checkConnect方法,并将hostname和-1作为其参数,以查看是否允许调用代码知道此IP地址的主机名,即连接到主机。如果不允许该操作,它将返回IP地址的文本表示形式
您可以尝试更改系统设置以允许解析FQDN,也可以尝试执行ping命令,对其进行解析并从中获取主机名。您知道是什么设置阻止此操作吗?DNS中有什么?客户机里有什么?为什么此设置不阻止nslookup查找FQDN?我不能100%确定(我自己从未遇到过问题),但我相信这可能会有帮助: