更改主机名不会将本地 IP 映射到主机名

更改主机名不会将本地 IP 映射到主机名

我尝试通过以下命令从 fedora 机器的 localhost.localdomain 更改我的主机名

hostnamectl set-hostname example.com --static

之后我重启了网络。但是当我尝试 ping example.com 时,它没有映射到机器的本地 ip 地址。我的电脑位于路由器后面,私有地址为 192.168.1.2。

我检查了 /etc/hostname 是否已正确更新,但 /etc/hosts 仍然有以下条目

127.0.0.1       localhost.localdomain   localhost
::1             localhost6.localdomain6 localhost6

如何更改主机名以便它映射到本地 IP?

附言:我尝试重新启动机器,但没有帮助。

答案1

ping 使用 DNS 而不是本地主机名来解析 example.com 的 IP 地址。您需要在 DNS 中设置 IP 地址。

您可以在本地计算机上执行此操作,方法是example.com在 /etc/hosts 中添加 127.0.0.1 和 ::1 行。这将使 DNS 将 example.com 解析为 127.0.0.1 (IPv4) 或 ::1 (IPv6)。您还需要确保在 /etc/nsswitch.conf 中,单词files出现在 之前dns,以便主机上的 IP 解析首先查看 /etc/hosts,然后再转到 DNS。

如果您希望更改在全球范围内生效,则需要在 DNS 提供商处添加 DNS A 记录,将您的公共 IP 地址与 example.com 关联。

相关内容