有人可以解释一下主机名和Canonical Host Name之间的区别吗?
我目前正在使用InetAddress类使用IP地址获取主机名。我遇到了这两个API。 所以我只是想知道,我应该选择哪一个?
答案 0 :(得分:26)
两者之间存在一些差异:
getCanonicalHostName()
会尝试解析FQDN。因此,您将获得 foo.mycompany.com ,而getHostName()
可能只返回 foo 。
getCanonicalHostName()
将始终执行反向DNS查找,而getHostName()
将返回存储的主机名,如果您在InetAddress
构造函数中提供了主机名。
如果您打算将IP地址映射到主机名,我怀疑您会想要使用getCanonicalHostName()
。