Debian接口文件 – 忽略来自dhcp的网关和dns条目

在gentoo中,这个如下简单:

 dhcp_ethX =“nodns nogateway”

我应该如何在接口文件中解决这个问题?

编辑/etc/dhcp3/dhclient.conf

检查行:

#prepend domain-name-servers 127.0.0.1; 

并取消注释,并设置任何你想使用的DNS服务器

那么在下面的请求部分会有这样的内容:

 request subnet-mask, broadcast-address, time-offset, routers, domain-name, domain-name-servers, host-name, netbios-name-servers, netbios-scope, interface-mtu; 

删除域名服务器和路由器,这应该通过DHCP删除DNS服务器和路由器/网关请求

虽然没有按照你所要求的那样做,但是这个ifmetric软件包可能会提供一个更好的解决scheme。

 sudo aptitude install ifmetric 

然后在/ etc / network / interfaces文件中为您的接口分配指标。 请注意, 具有度量标准与具有零度量标准相同。

 allow-hotplug eth0 iface eth0 inet dhcp metric 1 allow-hotplug eth1 iface eth1 inet dhcp 

上面说的是,当eth1插入时,其路由优先于来自eth0的路由。 这可能会更好,因为您允许路由进行故障切换,即使拔出eth1接口,路由仍然会有默认路由。

这不会影响dns的设置,所以根据你的需要,你可能还需要取消注释并修改/etc/dhcp3/dhclient.conf中的行:

 #prepend domain-name-servers 127.0.0.1; 

并从紧随其后的请求列表中删除域名服务器

我不认为/ etc / network / interfaces有完全一样的命令; 你将不得不通过后续命令设置你喜欢的方式,很可能。

如果你控制DHCP服务器,那么根据MAC地址为这个特定主机设置你想要的设置,否则在/ etc / network / interfaces中设置一个后备脚本可能是最简单的select