;>;/etc/iproute2/rt_table#iprouteadddefaultvia2、电信、网通双线自切——速度问题解决全过程、Linux文化、Linux教程">
>>> 此贴的回复 >> 以下是我根据你的情况,自己总结的,你试一下
CODE:[Copy to clipboard]# echo "200 DIANXIN" >;>; /etc/iproute2/rt_table # ip route add default via 222.168.1.2 table DIANXIN # iptables -t mangle -A PREROUTING -i eth0 -s 192.168.0.0/24 -d $电信IP -j MARK --set-mark 1 # ip rule add fwmark 1 table DIANXIN # ip route flush cache # iptables -t nat -F # iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE 参考文档: http://iptables-tutorial.frozentux.net/cn/iptables-tutorial-cn-1.1.19.html http://www.linuxaid.com.cn/engineer/ideal/article/policy_pouting.htm http://bbs.chinaunix.net/forum/viewtopic.php?t=304033&highlight=platinum
>>> 此贴的回复 >> # echo "200 DIANXIN" >;>; /etc/iproute2/rt_table # ip route replace default via 222.168.1.2 table DIANXIN # iptables -t mangle -A PREROUTING -i eth0 -s 192.168.0.0/24 -d $电信IP -j MARK --set-mark 1 # ip rule add fwmark 1 table DIANXIN # ip route flush cache # iptables -t nat -F # iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d $电信地址-j SNAT --to $电信网卡的WAN地址 # iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to $网通网卡的WAN地址
哈哈哈哈
一切終於正常了
額且最有意思的就是與順序有關
得先
iptables -t mangle -I PREROUTING -i eth0 -s 192.168.0.0/24 -d 222.222.5.0/15 -j MARK --set-mark 1 iptables -t mangle -I PREROUTING -i eth0 -s 192.168.0.0/24 -d 222.240.0.0/13 -j MARK --set-mark 1
再這個
iptables -t nat -I POSTROUTING -s $PRIVATE -d 222.222.5.0/15 -j SNAT --to $DIANXIN iptables -t nat -I POSTROUTING -s $PRIVATE -d 222.240.0.0/13 -j SNAT --to $DIANXIN
然後規則用
# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to $网通网卡的WAN地址
一切OK
如果點到了SNAT,呵呵.默認的網通就成電信了
>>> 此贴的回复 >> 呵呵,这也就是我为什么 iptables -t nat -F 的原因了
我没写mangle表,你也可以加一个 iptables -t mangle -F 然后把-I换成-A就可以了
我总结一下,正确的是
CODE:[Copy to clipboard]# echo "200 DIANXIN" >;>; /etc/iproute2/rt_table(这个是添加到文件,执行一次即可) # ip route replace default via 222.168.1.2 table DIANXIN # ip rule add fwmark 1 table DIANXIN(这个注意顺序,用ip rule可以查看) # iptables -t nat -F # iptables -t mangle -F # iptables -t mangle -A PREROUTING -i eth0 -s 192.168.0.0/24 -d 222.222.5.0/15 -j MARK --set-mark 1 # iptables -t mangle -A PREROUTING -i eth0 -s 192.168.0.0/24 -d 222.240.0.0/13 -j MARK --set-mark 1 # iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 222.222.5.0/15 -j SNAT --to $DIANXIN # iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 222.240.0.0/13 -j SNAT --to $DIANXIN # iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to $接网通线路网卡的地址 # ip route flush cache 这样的结果,是访问222.222.5.0/15和222.240.0.0/13走电信网卡、电信路由,伪装成电信出口地址,其他默认网通
参考文档: http://iptables-tutorial.frozentux.net/cn/iptables-tutorial-cn-1.1.19.html http://www.linuxaid.com.cn/engineer/ideal/article/policy_pouting.htm http://bbs.chinaunix.net/forum/viewtopic.php?t=304033&highlight=platinum
__________________________________
摘自:chinaunix.net