Linux 双网卡互联网接入

Linux 双网卡互联网接入

我有一台带有两个 NIC 的 Linux 服务器。我怎么也想不出如何设置默认路由,以便互联网流量从一个 NIC 退出,而不尝试使用另一个 NIC。以下是我认为相关的配置项。

cat /etc/systemd/network/10-eth0.network

[Match]
Name=eth0

[Network]
Gateway=172.31.16.129
Address=172.31.16.149/27
DHCP=no

[DHCP]
UseDNS=false

cat /etc/systemd/network/10-eth1.network

[Match]
Name=eth1
[Network]
Gateway=192.168.100.1
Address=192.168.100.2/24
DHCP=no
[DHCP]
UseDNS=false


route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.100.1   0.0.0.0         UG    0      0        0 eth1
0.0.0.0         172.31.16.129   0.0.0.0         UG    0      0        0 eth0
172.31.16.128   0.0.0.0         255.255.255.224 U     0      0        0 eth0
192.168.100.0   0.0.0.0         255.255.255.0   U     0      0        0 eth1

我尝试创建一条到 172.xx 网络的特定持久路由并删除 quad 0 路由……但没用。我知道这是一件基本的事情,但我似乎无法弄清楚。

最终,我希望能够使用 172.xxx 通过 SSH 进入盒子,但盒子应该使用 192.168.xxx 才能访问其他所有内容,例如互联网。抱歉,我猜网络方面不太擅长。

提前致谢

答案1

  1. NIC 的默认网关为该 IP 添加 0.0.0.0/0 路由,又称默认路由。
  2. 路由器引擎通常(但并非总是)路由到它们能找到的最具体的路由,任何路由都比 0.0.0.0/0 更具体
  3. 因此,在特定系统上只能有一个 0.0.0.0/0 路由。所有其他路由都必须更加具体,对于您的情况,您可以在要用于除管理之外的所有用途的 NIC 上有一个 0.0.0.0/0 路由,然后为您的其他 NIC 设置一个到例如 172.16.0.0/12 的路由(但前提是您的网络设置如此,并且 172.16.0.0/12 中的所有内容确实位于该 NIC 后面)

相关内容