amazon-web-services - 获取 Linux 服务器机器的公共主机名
问题描述
有没有办法获取我们服务器的公共主机名?我尝试了常用的命令,如主机名,甚至 Java 实用程序,如 InetAddress.getHost 等。但它们都给了我们私有 IP/主机名。
我们有 2 个不同的环境。在开发中,我们使用 AWS EC2 实例。在生产中,我们使用客户提供给我们的虚拟机实例。
使用上述方法,对于 EC2 实例,我得到了类似 ip-172.30.*** 的东西,而对于生产服务器实例,我也得到了类似的东西。我需要的是我们为这台特定机器定义的 dns 主机名。
如果我们有公共 IP 地址,我们可以尝试进行 dig 或 nslookup 来获取 dns 主机名,但获取它也存在与上述相同的问题。(ipconfig 还提供了机器的私有 IP) 现在,我只是在服务器属性中设置公共主机名。但是请让我知道是否有更好的方法来做到这一点 - 最好是在 Java 中或使用一些 Linux 实用程序。
有一种方法可以在 EC2 实例上获取此公共主机名,但这不是通用解决方案。例如:它不适用于虚拟服务器(非 EC2)
请建议。唵
解决方案
推荐阅读
- python-3.x - 计算从两个时间值计算的 ISO8601 格式时间戳字符串
- javascript - htmltocanvas 未捕获地图
- kotlin - Kotlin 中的 @Inject 有什么用?
- vba - 确定系统的列表分隔符
- python - 调用将 lambda 函数加在一起的自定义函数时内核重新启动
- database - 集群中的TDengine服务已经启动,但是客户端连接不上
- javascript - 制作“猜颜色”游戏,但不知道如何添加正确答案
- flutter - 无法获取 StreamBuilder 数据
- spring - 如何让多个 FeignClient-s 使用相同的 serviceId/name?
- xamarin - Xamarin.Forms:检测 BindableLayout 中的最后一项