如何覆盖 DHCP 提供的名称服务器?

Dav*_*rks 15 networking dhcp resolv.conf

我(认为)我已经在以下位置配置了一个静态 IP 地址/etc/network/interfaces

# The primary network interface 
auto eth0 
iface eth0 inet static
    address 10.1.1.2
    netmask 255.255.255.0
    network 10.1.1.0
    broadcast 10.1.1.255
    gateway 10.1.1.1
Run Code Online (Sandbox Code Playgroud)

我更改文件/etc/resolv.conf以包含所需的名称服务器。

然后我重新启动网络 sudo /etc/init.d/networking restart

但是几个小时后,resolv.conf 总是恢复到 DHCP 名称服务器。


我还应该说这是只有l0eth0接口的Ubuntu 服务器。

poo*_*lie 37

如果要覆盖或附加到 DHCP 服务器建议的名称服务器,可以在 中进行配置/etc/dhcp/dhclient.conf,例如:

interface "eth0" {
    prepend domain-name-servers 10.0.0.2;
}
Run Code Online (Sandbox Code Playgroud)

您也可以通过 Unity 或 GNOME 网络指示器中的“编辑连接”控件执行此操作。

  • 这是最好的解决方案,我发布了另一个选项,但意识到在 AWS EC2 环境中设置静态 IP 不是一个好主意。:) (5认同)
  • 将 `prepend` 替换为 `supersede` 以完全覆盖 DHCP 值。 (3认同)
  • @ctrl-alt-delor是的,你可以将`prepend`或`supersede`放在顶层,没有`interface`块 (2认同)