默认网关路由自动添加到主表

默认网关路由自动添加到主表

我的机器连接了 2 个网络接口。(Fwiw 是一个 aws 实例,带有主(默认)ENI 和附加的辅助 ENI,每个 ENI 都关联有公有和私有 IP 地址。)

我添加了第二个路由表,引入了表规则,并根据我的喜好在主表和附加表中添加和删除了几条路由。

一切工作正常,除了定期将额外的不需要的(破坏事物的)默认网关路由添加到主表之外。负责这个的守护进程是什么?


为了以防万一,以下是我的配置:

内容/etc/netplan/50-cloud-init.yaml

    version: 2
    ethernets:
        ens5:
            dhcp4: true
            match:
                macaddress: 06:c5:b4:81:5d:a2
            set-name: ens5
        ens6:
            dhcp4: true
            match:
                macaddress: 06:23:d7:eb:f9:f1  # ENI assigned
            set-name: ens6

main桌子:

default via 10.1.2.1 dev ens5 proto dhcp src 10.1.2.251 metric 100 
10.1.2.0/24 dev ens5 proto kernel scope link src 10.1.2.251 
10.1.2.1 dev ens5 proto dhcp scope link src 10.1.2.251 metric 100 

rt2桌子:

default via 10.1.2.1 dev ens6 src 10.1.2.34 
10.1.2.0/24 dev ens6 scope link src 10.1.2.34

路由表rt2稳定,但main路由表将不会长时间包含单个默认网关。有时我可以终止 ssh 会话并返回,一切都保持不变;其他时候,如果我等待更长时间,当我 ssh 返回时,新的默认网关就会被添加。Ubuntu 20.04 中的某些东西,可能是在 netplan 或 dhcp 守护程序中,也可能是 aws(?) 或其他东西,会定期将以下 2 行添加回表中main

default via 10.1.2.1 dev ens6 proto dhcp src 10.1.2.34 metric 100
10.1.2.1 dev ens6 proto dhcp scope link src 10.1.2.34 metric 100

我可以使用类似以下命令再次删除它们sudo ip route del default via 10.2.1.1 dev ens6,但它们永远不会停止重新添加。这会导致不对称路由的情况,非常不方便,因为它会中断我与 iface 的 ssh 连接ens6

答案1

这很可能是来自 DHCP 服务器。您已启用 DHCP,但未指定不想从 DHCP 服务器获取路由。

为了避免这种情况,您可以指定:

dhcp4-overrides:
  use-routes: false

相关内容