通过特定网络接口路由特定 ip 的所有流量

Fre*_*iek 23 networking linux routing

我有一个需要获得一些路由的 linux 服务器。我对此很陌生,我在谷歌上找不到任何明确的来源。

设置应该很简单:
所有到 ip 192.168.72.20 上的服务器的流量都应该通过接口 3 发送。所有其他接口目前都无关紧要。

在这里你有输出 route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.72.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.72.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1
192.168.72.0    0.0.0.0         255.255.255.0   U     0      0        0 eth2
192.168.72.0    0.0.0.0         255.255.255.0   U     0      0        0 eth3
192.168.72.0    0.0.0.0         255.255.255.0   U     0      0        0 eth4
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
0.0.0.0         192.168.72.12   0.0.0.0         UG    0      0        0 eth0
Run Code Online (Sandbox Code Playgroud)

Law*_*ceC 30

尝试:

ip route add 192.168.72.20/32 dev eth3

  • 如果无法直接访问目标 IP,请不要忘记 `via <gateway_ip>`! (5认同)
  • 请注意:要永久保留此配置,请确保将其添加到`/etc/rc.local` 或您的发行版等价物。它不会在重新启动之间持续存在。 (4认同)
  • 我尝试使用相同的格式将 IP 映射到 Ubuntu 14.04 上的 wlan0 并得到 `RTNETLINK 答案:无效参数` 我不得不从 IP 中删除 /** 所以我最终得到:`sudo ip route add 192.168.50.15 dev wlan0`——我想我会提到,以防其他人遇到这个问题。感谢您的回答 Ultrasawblade,它很有帮助。 (2认同)