在Red Hat或CentOS中向主机添加新名称服务器的首选方法

我正在pipe理一个特定的主机,我想在本地添加一个新的名称服务器来查询(即不通过dhcp服务器更改其名称服务器设置)。 似乎有多种方式来添加一个新的名称服务器。

  • 将'nameserver'指令直接添加到resolv.conf文件中
  • 将一个“DNS {1,2} =地址”指令添加到ifcfg-ethX文件
  • 将一个'append domain-name-servers'指令添加到dhclient.conf文件中。 (让我们假设主机使用DHCP)。

也许还有更多的方法…

哪种方式是首选? 如果我想让名称服务器地址在重新启动后保留,并且在主机的下一个查找中可以立即使用,哪个选项最好?

谢谢

我会

  • 将其添加到DHCP服务器的域名服务器选项列表中
  • 将其添加到/etc/resolv.conf

客户端将立即开始使用它,下次刷新它的DHCP租用/选项时,它也会从服务器获取它。

您也可以将新服务器添加到DHCP服务器的域名服务器列表中,并重新启动客户端上的networking,以便立即从服务器更新

service network restart 

如果您不想更改DHCP服务器configuration,则可以使用/etc/dhcp/dhclient.conf文件将地址附加或预先添加到域名服务器列表

 append domain-name-servers 8.8.4.4; 

会在8.8.4.4将名称服务器添加到/etc/resolv.conf中名称服务器列表的末尾。 使用prepend将会把它放在一开始。

请注意,/etc/resolv.conf中名称服务器列表中的最大条目数是3。

我一直这样做的方式是修改/ etc / network / interfaces。

所有我的主机的条目如下所示:

 dns-nameservers 8.8.8.8 8.8.4.4 

这将8.8.8.8和8.8.4.4设置为您的DNS服务器,当然,您可以用您决定使用的任何DNSreplace这些DNS服务器。 修改该文件后,请确保发出/etc/init.d/networking restart,以使更改生效。

通过添加适当的条目在/etc/resolv.conf更改这是在Linux发行版/版本中最一致的方法。 此外,它立即活跃并持续重启。 一致性是关键。

我不会依赖ifcfg-ethX文件或类似dhclient的configuration文件。 该系统可能不应该使用DHCP(除非它是一个工作站),这是一个假设,不扩展…