![如何指定从哪个 DHCP 服务器获取名称服务器?](https://linux22.com/image/529810/%E5%A6%82%E4%BD%95%E6%8C%87%E5%AE%9A%E4%BB%8E%E5%93%AA%E4%B8%AA%20DHCP%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%8E%B7%E5%8F%96%E5%90%8D%E7%A7%B0%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9F.png)
我使用 Debian Lenny,它有两个以太网卡,一个插入另一个网络。我的目标是将两个接口都设置为 DHCP,但我希望只从其中一个获取名称服务器。问题是,最后获得 DHCP 的那个接口会将 /etc/resolv.conf 文件覆盖为错误的名称服务器!我删除了 network-manager 和 network-manager-gnome,因为它们一次只能使用一个接口。两个接口都在 /etc/networking/interfaces 中设置为 DHCP 和“自动”,如下所示:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
allow-hotplug eth0
iface eth0 inet dhcp
auto eth1
allow-hotplug eth1
iface eth1 inet dhcp
我希望始终从 eth1 获取名称服务器,我该怎么做?
谢谢!
答案1
我不是 Debian 的专家,所以我不能告诉你如何在他们的 rc 脚本中做到这一点。但是,如果你正在运行 dhclient,那么在配置中做到这一点并不难。你可以在 dhclient.conf 中定义要从服务器检索哪些选项:
(来自的例子男人页)
interface "ep0" {
send host-name "andare.fugue.com";
send dhcp-client-identifier 1:0:a0:24:ab:fb:9c;
send dhcp-lease-time 3600;
supersede domain-name "fugue.com rc.vix.com home.vix.com";
prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, host-name;
require subnet-mask, domain-name-servers;
script "/etc/dhclient-script";
media "media 10baseT/UTP", "media 10base2/BNC";
}