Ubuntu设置多网卡优先级

如果设备有多个网卡,可能因为默认路由优先级的原因,导致不能上外网,这里介绍下通过netplan设置网卡优先级的方法。

使用route -n命令可以看到网卡的路由状态

目标             网关            子网掩码         标志   跃点   引用    使用 接口
0.0.0.0         192.168.43.1    0.0.0.0         UG    100    0        0 usb0
0.0.0.0         192.168.137.1   0.0.0.0         UG    101    0        0 eth0
192.168.43.0    0.0.0.0         255.255.255.0   U     100    0        0 usb0
192.168.137.0   0.0.0.0         255.255.255.0   U     101    0        0 eth0

可以看到,默认路由使用了usb0的网卡,但是我们要使用eth0来上网。

可以通过设置网络接口默认跃点的方式来控制路由优先级,默认跃点约小优先级越高。

编辑netplan配置文件,将usb0跃点设置成200,因为网卡的默认跃点是100,所以eth0的网络优先级就比usb0

network:
  version: 2
  renderer: NetworkManager
  ethernets:
    eth0:
      dhcp4: true
    usb0:
      dhcp4: true
      dhcp4-overrides:
        route-metric: 200

编辑完后应用配置

netplan generate
netplan apply
上一篇
下一篇