策略路由实例

如上图网络拓扑所示,将建立两条不同的路径使其接入网络,下面将使用ip命令在三层交换机中建立起两条路径,路由来自不同网络的数据包。

在三层交换机中建立两条WAN连接,分别标识为WAN1、WAN2。WAN1使用的虚拟网络接口eth0.3,配以静态IP地址172.16.100.254,经过网关172.16.100.253接入互联网,内网的网络接口为br0,使用IP地址172.16.1.254, WAN2链接中外网的网络接口为eth0.4,使用IP地址192.168.100.254,经过网关192.168.100.253接入互联网,对应的内网的网络接口br1,使用IP地址192.168.1.254。 现在我们要实现两点:

(1) 内网172.16.1.0/24网段主机的数据包通过eth0.3接口路由到外网;

(2) 内网192.168.1.0/24网段主机的数据包通过eth0.4接口路由到外网。

在linux的链接中,首先匹配策略路由的方式,其次是匹配静态路由,也就是我们的route命令显示的结果。所以我们通过配置策略路由的方式,经br0接收的包通过策略路由经eth0.3转发出去,经br1接收的包经过策略路由经eth0.4转发出去。

一.配置路由

1) 在rt_table 里面建立新的路由表wan1和wan2,表的编号分别为100和101

#echo "100 wan1" >> /etc/iproute/rt_tables

#echo "101 wan2" >>/etc/iproute/rt_tables

2) 为wan1表制定默认路由为eth0.3,网关172.16.100.253,为wan2表制定默认路由为eth0.4网关192.168.100.253

#ip route add default via 172.16.100.253 table wan1

#ip route add default via 192.168.100.253 table wan2

3) 分别配置网段路由到高级路由表

#ip route add 172.16.1.254/32 dev br0 table wan1

#ip route add 172.16.100.254/32 dev eth0.3 table wan1

#ip route add 192.168.1.254/32 dev br1 table wan2

#ip route add 192.168.100.254/32 dev eth0.4 table wan2

4) 强制LAN口的包查询每个WAN连接的高级路由表

#ip rule add from 172.16.1.0/24 iif br0 table wan1

#ip rule add from 192.168.1.0/24 iif br1table wan2

5) 制定详细匹配,为每个WAN口上网配置策略路由

#ip rule add from 172.16.100.254/32 pref 100 tablewan1

#ip rule add from 192.168.100.254/32 pref 100 tablewan2

匹配路由规则时,将按优先级pref值从低到高匹配,直到找到匹配的规则。如果pref值不指定,则将在已有规则最小序号前插入。

二.配置NAT

经路由之后,LAN口的使用NAT进行伪装,在之前的网段NAT后面增加下面,匹配所有的网段。

#iptables -t nat -A POSTROUTING -o eth0.3 -jMASQUERADE

#iptables -t nat -A POSTROUTING -o eth0.4 -jMASQUERADE


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值