我正在尝试删除默认的 eth0 路由,以便将默认路由提供给 wlan0 (wifi)。我在
/etc/network/interfaces.d/
sudo nano /etc/network/interfaces.d/eth0 allow-hotplug eth0 iface eth0 inet dhcp up route del default
sudo nano /etc/network/interfaces.d/wlan0 auto wlan0 iface wlan0 inet dhcp wpa-ssid "XXXX" wpa-psk xxxxx up route add default gw 192.168.1.1 netmask 0.0.0.0
但是当我重新启动并执行“route -n”时,我得到了
Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 wlan0 0.0.0.0 192.168.10.1 0.0.0.0 UG 202 0 0 eth0 0.0.0.0 192.168.1.1 0.0.0.0 UG 303 0 0 wlan0
这显然不是我想要的……
我开始变得疯狂,有人可以向我解释为什么我的配置不起作用吗?!
答案1
DHCP 将设置您的默认路由,这很可能在执行脚本后发生up
。因此,不要尝试处理竞争条件(插入 sleep 等),而是将的值dhclient
配置/etc/dhcp/dhclient.conf
为。supersede
routers
eth0
(我自己没有这样做过,但这是我首先会尝试的。)
答案2
我似乎找到了答案:
我只需要添加
interface eth0 nogateway
/etc/dhcpcd.conf