我有一台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
感谢
答案 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