linux路由特定的机器流量抛出特定的输出接口

时间:2012-09-04 18:25:51

标签: linux ubuntu routing routes iptables

我有一台Linux机器用作路由器,具有多种接口和多种互联网连接 说eth0 - isp1

eth1--isp2

eth2--isp3

网关是eth0 throw isp1

和eth3 - local1 10.0.0.x

eth4--local2 192.168.1.x

我需要local1 ip 192.168.1.10去抛出isp3,eth2

感谢

2 个答案:

答案 0 :(得分:0)

尝试route add 192.168.1.0 netmask 255.255.255.0 dev eth4--local,假设这些是本地连接的网络。如果没有,您还需要指定一个网关机器来路由数据包。说实话,你的问题是格式错误的(可能属于serverfault)。如果您已在这些网络上拥有地址,则这些路径应该已存在。如果不这样做,您的问题可能比您想象的要复杂得多。

答案 1 :(得分:0)

您需要为此使用策略路由。您创建一个新的路由表,并在源IP为192.168.1.10时使用它。

ip route add ... table $TABLENUM                  # your usual routes, for the new table
...
ip route add default via $ISP3 table $TABLENUM    # gateway for the new table
ip rule add from 192.168.1.10/32 lookup $TABLENUM # use the new table for this IP
ip rule add to 192.168.1.10/32 lookup $TABLENUM   # make it symmetric, for clarity