36

谁能解释一下主机名和规范主机名之间的区别?

我目前正在使用 InetAddress 类使用 IP 地址获取主机名。我遇到了这两个 API。所以我只是想知道,我应该选择哪一个?

4

1 回答 1

37

两者之间有一些区别:

  • getCanonicalHostName()将尝试解析FQDN。因此,您将获得foo.mycompany.comgetHostName()可能只返回foo

  • getCanonicalHostName()将始终进行反向 DNS 查找,而getHostName()如果您在InetAddress构造函数中提供了一个,则将返回存储的主机名。

getCanonicalHostName()如果您打算将 IP 地址映射到主机名,我怀疑您会想要使用。

于 2012-10-01T08:55:41.880 回答