centos策略路由-基于源地址的策略路由ip rule


1、首先先定义自定义的路由表,不然写路由条目的时候会写到主路由表,那就会导致选路错乱了。
vi /etc/iproute2/rt_tables
100 tab1

2、添加静态默认路由。
ip route add default via 172.16.60.1 dev ppp0 table tab1
这里是在tab1这张路由表里面添加一个默认路由,默认网关出口是ppp0的接口。

查看tab1的路由表命令

ip route list table tab1

3、给用户接入进来的地址打上标记,然后强制打上标记的数据使用tab1这张路由表。
数字3是打标记的名称。
iptables -A PREROUTING -t mangle -s 172.16.131.0/24 -j MARK --set-mark 3

查看上述命令的生效:

iptables -t mangle -L


ip rule add fwmark 3 table tab1

4、使用ip rule来根据源地址来使用路由表。
ip rule add from 172.16.131.0/24 table tab1

查看ip rule,可以查看上面两条命令是否生效

ip rule
0: from all lookup local
32764: from 172.16.131.0/24 lookup tab1
32765: from all fwmark 0x3 lookup tab1
32766: from all lookup main
32767: from all lookup default

5、最后一步,设置iptables转发。
iptables -A POSTROUTING -s 172.16.131.0/24 -o ppp0 -j MASQUERADE

查看上述命令生效

cat /etc/sysconfig/iptables

service iptables restart

6、设置开机启动
chmod +x /etc/rc.d/rc.local
vi /etc/rc.d/rc.local

pon pptpvpn

sleep 10
ip route add default via 172.16.60.1 dev ppp0 table tab1
iptables -A PREROUTING -t mangle -s 172.16.131.0/24 -j MARK --set-mark 3
ip rule add fwmark 3 table tab1
ip rule add from 172.16.131.0/24 table tab1

route add -net 172.16.60.0 netmask 255.255.255.0 gw 172.16.60.1

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM