loo*_*bee 4 networking linux boot debian routing
我有一台带有两个接口的 debian 机器,由 dhcp 配置:
allow-hotplug eth0
iface eth0 inet dhcp
allow-hotplug eth1
iface eth1 inet dhcp
Run Code Online (Sandbox Code Playgroud)
启动时,默认路由添加到 eth1:
0.0.0.0 10.200.10.253 0.0.0.0 UG 0 0 0 eth1
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.200.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
Run Code Online (Sandbox Code Playgroud)
但是我需要将默认路由作为 eth0 上的网关。删除默认路由并在启动后运行 dhclient 工作:
$ sudo route del default
$ sudo dhclient -v eth0
Run Code Online (Sandbox Code Playgroud)
我知道我可以穿上它rc.local
,但是有没有更“干净”的方法来做到这一点?
我不能使用静态地址。
对我来说,看起来两个 DHCP 客户端都产生了 - 每个都为其相应的 iface - 获得默认网关和比赛。事情以这种方式发生,即eth1
可靠地获胜(无论出于何种原因)。
解决方案似乎并不明显,因为它取决于您的设置。逻辑上使用 DHCP 获取默认 GW 意味着您不关心它在哪里。
interface eth1 {
supersede routers ""
}
Run Code Online (Sandbox Code Playgroud)
要/etc/dhcp/dhclient.conf
看看会发生什么。这个想法是supersede
任何routers
经由达成的DHCP服务器提供的eth1
什么也没有。
归档时间: |
|
查看次数: |
5028 次 |
最近记录: |