linux多ISP的策略路由

#!/bin/bash
# BY kerryhu
# QQ:263205768
# MAIL:[email protected]
# BLOG:http://kerry.blog.51cto.com
# Please manual operation yum of before Operation.....

#安装iproute2
tar -zxvf iproute2-2.6.16-060323.tar.gz
cd iproute2-2.6.16-060323
make SBINDIR=/sbin
make SBINDIR=/sbin install
mv -v /sbin/arpd /usr/sbin

 

ISP1 电信:222.188.110.32/27
ISP2 网通:122.96.240.16/28
eth0:222.188.110.43
网关:222.188.110.33
eth1:122.96.240.18
网关:122.96.240.17

额外创建两个路由表, T1 和 T2。 加入到 /etc/iproute2/rt_tables 中。
vi /etc/iproute2/rt_tables
10 T1
20 T2

然后如下设置两个路由表中的路由:
ip route add 222.188.110.32/27 dev eth0 src 222.188.110.43 table T1
ip route add default via 222.188.110.43 table T1
ip route add 122.96.240.16/28 dev eth1 src 122.96.240.18 table T2
ip route add default via 122.96.240.17 table T2
  
 
设置“main”路由表

ip route add 222.188.110.32/27 dev eth0 src 222.188.110.43 table main
ip route add 122.96.240.16/28 dev eth1 src 122.96.240.18 table main
    
然后,设置你的缺省路由: 
ip route add default via 222.188.110.43
    
接着,设置路由规则。这实际上在选择用什么路由表进行路由。你需要确认当你
从一个给定接口路由出数据包时,是否已经有了相应的源地址:你需要保证的就
是如果你已经有了相应的源地址,就应该把数据包从相应的网卡路由出去:
ip rule add from 222.188.110.43 table T1
ip rule add from 122.96.240.18 table T2
 
    
以上命令保证了所有的回应数据都会从他们来的那块网卡原路返回。


ip route add default scope global nexthop via 222.188.110.43 dev eth0 weight 30 netxthop via 122.96.240.18 eth1 weight 70

这样就可以均衡两个ISP的路由。通过调整“weight”参数我们可以指定其中一个ISP的优先权高于另一个

你可能感兴趣的:(linux,route,休闲,策略路由,多ISP)