Linux - 通过以太网路由特定流量

时间:2015-04-29 11:45:34

标签: linux routing

在工作中,我们有2个网络;用于普通互联网接入的WiFi和用于回购等的内部LAN。我最近开始使用Linux,并且不得不经常在有线和WiFi之间切换。在Windows上,我们通过运行命令来解决它(以便我们可以同时连接到两个网络):

# Add a route for all traffic to any destination starting with 10 (internal traffic):
route add 10.0.0.0 mask 255.0.0.0 10.18.21.129 metric 40 -p
# Move the default route to a higher metric:
route change 0.0.0.0 mask 0.0.0.0 10.18.21.129 metric 40

运行这些并连接到WiFi后,一切都神奇地起作用。必要的Linux命令可以实现相同的结果?我用route命令摆弄了很多东西,但没有运气。感谢任何帮助。

编辑: 以下是输入任何其他命令之前route -n命令的输出:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.18.21.129    0.0.0.0         UG    0      0        0 eth0
10.18.21.128    0.0.0.0         255.255.255.128 U     1      0        0 eth0
192.168.56.0    0.0.0.0         255.255.255.0   U     0      0        0 vboxnet0
192.168.88.0    0.0.0.0         255.255.252.0   U     9      0        0 wlan0

1 个答案:

答案 0 :(得分:2)

变式1:将您的解决方案直接翻译为linux

路线命令:

  • route add -net 10.0.0.0/8 gw 1​​0.18.21.125 metric 40
  • route del default
  • route add default gw 1​​0.18.21.125 metric 40

ip route命令:

  • ip route add 10.0.0.0/8 via 10.18.21.125 metric 40
  • ip route del default via 10.18.21.125
  • ip route add default via 10.18.21.125 metric 40

在连接wifi或启动脚本后添加这些命令的启动。

变体2. 关闭魔法:)

  • 使用以下命令通过LAN接口转换10.0.0.0网络的路由:ip route add 10.0.0.0/8 via 10.18.21.125 metric 10。 在这种情况下,所有流量都将通过默认接口进行路由,但10.0.0.0/8网络除外。
  • 增加默认wifi路由的优先级,如果他低于LAN one

PS。可能这个问题应放在服务器故障站点上:)

编辑:根据提供的路线图

  • route del default
  • route add default gw [wifi gateway ip]
  • route add -net 10.0.0.0/8 gw 1​​0.18.21.125