Fedora
更改主機名不會將本地 ip 映射到主機名
我嘗試通過給出以下命令從 Fedora 機器的 localhost.localdomain 更改我的主機名
hostnamectl set-hostname example.com --static
之後我重新啟動了網路。但是當我嘗試 ping example.com 時,它並沒有映射到機器的本地 IP 地址。我的 PC 位於私有地址為 192.168.1.2 的路由器後面。
我檢查了正確更新的 /etc/hostname 但 /etc/hosts 仍然有以下條目
127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6
如何更改主機名以使其映射到本地 IP?
PS:我嘗試重新啟動機器,但沒有幫助。
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 相關聯。