![多宿主:我是否需要 2 个接口的路由指标,其中只有一个可以访问互联网?](https://linux22.com/image/766623/%E5%A4%9A%E5%AE%BF%E4%B8%BB%EF%BC%9A%E6%88%91%E6%98%AF%E5%90%A6%E9%9C%80%E8%A6%81%202%20%E4%B8%AA%E6%8E%A5%E5%8F%A3%E7%9A%84%E8%B7%AF%E7%94%B1%E6%8C%87%E6%A0%87%EF%BC%8C%E5%85%B6%E4%B8%AD%E5%8F%AA%E6%9C%89%E4%B8%80%E4%B8%AA%E5%8F%AF%E4%BB%A5%E8%AE%BF%E9%97%AE%E4%BA%92%E8%81%94%E7%BD%91%EF%BC%9F.png)
我有 2 台多宿主服务器,除了每台服务器通过其中一个 NIC 连接到 Internet 之外,它们还通过第二个 NIC 彼此背靠背连接。
我用来systemd-networkd
为 Internet 链接配置 DHCP,并为它们的交叉连接配置 Link-Local IP。交叉连接配置文件如下所示:
$ less /etc/systemd/network/25-other.network
[Match]
Name=eth5
[Network]
LinkLocalAddressing=yes
这是可行的,并且服务器在其辅助接口上分别分配了诸如 169.254.245.165/16 之类的 IP。
我对路由不是很熟悉,我想知道我是否会因为路由而遇到互联网连接问题。内核是否曾尝试通过辅助接口访问互联网?如何做出决定?我知道路由指标可用于此,但不确定我的情况是否需要它们(因为没有目的地可通过两个接口获得),所以我需要这个吗?
[Network]
Metric=20
或许是这个?
[Network]
RouteMetric=20
编辑:正如接受的答案所说,无需添加路由,一切都很好。发布输出以查看ip route
是否有帮助。它显示了通过我的路由器的默认路由和通过本地链路 IP 的第二条路由。
default via 192.168.2.1 dev enp111s0 proto dhcp src 192.168.2.11 metric 1024
169.254.0.0/16 dev enpa1a2 proto kernel scope link src 169.254.2.11
答案1
操作系统使用路由表netstat -rn
来确定使用哪个接口。您可能有一个使用“互联网”接口的默认路由。除非您正在做一些不寻常的事情,否则您不需要弄乱指标。