debian 9 多个网卡就有多个默认路由,如何保证只有一个默认路由?

设备有两张网卡,在 debian 9 会有两个默认路由

$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    100    0        0 enp0s8
default         gateway         0.0.0.0         UG    101    0        0 enp0s3
10.0.2.0        0.0.0.0         255.255.255.0   U     100    0        0 enp0s3
link-local      0.0.0.0         255.255.0.0     U     1000   0        0 enp0s8
192.168.20.0    0.0.0.0         255.255.255.0   U     100    0        0 enp0s8

必须删除一个才能连接外网

由于找不到相关设置,所以就想使用脚本开机自动执行删除命令

route del -net default netmask 0.0.0.0 dev enp0s8

在开机的时候该脚本执行失败,而且还有一个问题,如何保证该脚本在网络配置完成后运行。

所以该如何保证只有一个默认路由呢?
所以该如何保证只有一个默认路由呢?
所以该如何保证只有一个默认路由呢?

阅读 7k
1 个回答

可修改 debian 网络设置文件 /etc/network/interfaces,两种参考方法

  1. 对不需要设置网关的接口,用静态 IP,不用 DHCP,如

    auto eth_master inet dhcp
    
    auto eth_slave inet static
      address 192.168.20.0
      netmask 255.255.255.0
  2. 在两个接口都要 DHCP 时,可加 metrics 调整优先级,如

    auto eth_master inet dhcp
      metric 0
    
    auto eth_slave inet dhcp
      metric 100
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题