![具有动态 DNS 的服务器上的主机文件?](https://linux22.com/image/16721/%E5%85%B7%E6%9C%89%E5%8A%A8%E6%80%81%20DNS%20%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84%E4%B8%BB%E6%9C%BA%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我正在设置一个基于 RHEL 的服务器,该服务器与 DynDNS 的动态 DNS 关联,其域为“abc.dyndns.org”,该域会使用服务器的 IP 地址动态更新。
我读过,为了确保访问服务器的服务,您的 /etc/hosts 中至少需要有以下内容:
127.0.0.1 localhost.localdomain 本地主机
xxx.xxx.xxx.xxx redhatbox.yourcompany.com redhatbox
其中“xxx.xxx.xxx.xxx”是您的服务器拥有的任何 IP 地址,“redhatbox”是计算机的名称。这是我的问题:
(1) 因为我的服务器有一个由 ISP 的 DHCP 动态分配的 IP,所以没有一个 IP 可以代替 xxx.xxx.xxx.xxx,在这种情况下我该怎么办?
(2) 我是否应该简单地将“redhatbox.yourcompany.com”替换为我的 DynDNS 域“abc.dyndns.org”?并将“redhatbox”别名替换为“abc”?
如果有人能为像我这样的新手解释这一切,那就太好了。非常感谢您的详细解答和耐心。
答案1
一些背景:
当程序要求您的计算机将主机名解析为 IP 地址时,它会查找您的 IP 地址/etc/hosts
,如果未找到,则会进行 DNS 查询。
您不需要在其上保留非环回 IP 地址。您通常可以保留localhost
条目和别名。
看,这就是我的/etc/hosts
内容:
[braga@coleman ~]$ cat /etc/hosts
127.0.0.1 localhost.localdomain localhost
127.0.0.1 coleman.jazz coleman
::1 localhost6.localdomain6 localhost
coleman.jazz
或coleman
(以音乐家 Ornette Coleman 命名)只是我的机器的别名。
直接回答:
把它留下吧。
您可以在任何您想要的地方替换它。这只是一个别名。您甚至可以将其替换为
www.google.com
(并且www.google.com
在您的机器上将指向您自己的机器)。