首页 > 解决方案 > 获取 Linux 服务器机器的公共主机名

问题描述

有没有办法获取我们服务器的公共主机名?我尝试了常用的命令,如主机名,甚至 Java 实用程序,如 InetAddress.getHost 等。但它们都给了我们私有 IP/主机名。

我们有 2 个不同的环境。在开发中,我们使用 AWS EC2 实例。在生产中,我们使用客户提供给我们的虚拟机实例。

使用上述方法,对于 EC2 实例,我得到了类似 ip-172.30.*** 的东西,而对于生产服务器实例,我也得到了类似的东西。我需要的是我们为这台特定机器定义的 dns 主机名。

如果我们有公共 IP 地址,我们可以尝试进行 dig 或 nslookup 来获取 dns 主机名,但获取它也存在与上述相同的问题。(ipconfig 还提供了机器的私有 IP) 现在,我只是在服务器属性中设置公共主机名。但是请让我知道是否有更好的方法来做到这一点 - 最好是在 Java 中或使用一些 Linux 实用程序。

有一种方法可以在 EC2 实例上获取此公共主机名,但这不是通用解决方案。例如:它不适用于虚拟服务器(非 EC2)

请建议。唵

标签: amazon-web-servicesamazon-ec2dnsip

解决方案


推荐阅读