【问题标题】:Java comparing if virtual host name and physical host name are sameJava比较虚拟主机名和物理主机名是否相同
【发布时间】:2014-03-21 07:24:28
【问题描述】:

在我们的专用网络中。我们将物理主机名 (x.mycompany.com) 和 dns 可解析 (x1.mycompany.com) 虚拟主机名配置为实际的物理主机名。

如何在 java 中验证它们是否都解析为相同?

虚拟主机有自己的IP地址,与物理主机不同。所以我无法比较 IP 地址来检查它们是否相同。

感谢任何帮助。谢谢。

【问题讨论】:

  • InetAddress.getLocalHost()?请注意,与它的名字似乎暗示的不同,这将不会返回localhost;它返回在操作系统级别定义的机器的“主”名称
  • @fge - 我们已经知道主机有两个不同的 IP 地址。

标签: java virtualhost inetaddress


【解决方案1】:

假设:

  1. 主机的网络接口已为其所有 IP 地址配置,并且

  2. 您正在主机本身上运行“测试”代码,

然后您可以将主机名解析为 IP 地址,并将它们与绑定到 NetworkInterface.getNetworkInterfaces() 返回的 NetworkInterface 对象的所有地址进行比较。

如果其中任何一个假设不正确,那么我认为没有简单的方法可以做到这一点。

【讨论】:

    猜你喜欢
    • 2011-11-04
    • 2012-03-17
    • 2020-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-10
    • 2013-12-13
    相关资源
    最近更新 更多