如何在两个网络接口上处理 DHCP,一个破坏另一个的 /etc/resolv.conf

如何在两个网络接口上处理 DHCP,一个破坏另一个的 /etc/resolv.conf

我有一个嵌入式 Debian Linux 系统。它有两个网络接口:eth0 和 ppp0(通过蜂窝调制解调器)。我遇到的问题是,当系统启动时,它会通过 eth0 上的 DHCP 获取地址。如果调制解调器连接,那么它也会获取它自己的 IP 地址并破坏 /etc/resolv.conf 的内容。在我的应用程序中,如果 eth0 处于活动状态,我需要将 eth0 作为默认路由。如果我将 eth0 设置为默认路由,则 DNS 将不再工作,因为无法访问来自调制解调器 DHCP 请求的名称服务器。

奇怪的是,如果我在所有这些运行之后运行“dhclient eth0”,它会做正确的事情并将其名称服务器添加到现有文件中,而不是破坏它。

有什么好的和标准的方法来处理这种双 DHCP 网络情况吗?

答案1

man interface-order第一的。

还有一种方法可以忽略 DHCP 提供的某些设置。检查prependrequest选项man dhclient.conf

相关内容