你知道什么是策略路由吗?
你知道为什么要用策略路由吗?
你知道如何使用策略路由吗?
一、 什么是策略路由
策略路由简称PBR(Policy-Based Routing),是针对某种数据包,直接制定的选路策略。
都是选路,那策略路由和普通路由有什么区别?
举个例子来看
现在希望张三访问外网走线路1,其他人访问外网走线路2。 如果在路由器上,用常规路由如何实现?
是不是发现常规路由无法完成,因为常规路由都是按目标地址来选路,而这里的需求,是按源地址选路。
只要源地址为张三的数据包,就走线路1,不管目标是什么。
今天的主角,策略路由很容易解决这个问题。
策略路由的做法是,首先用ACL来定义一种特别的数据包(比如源地址为张三的包),然后再针对这个ACL定义的包,配置一个选路策略(走线路1)
二、 为什么要做策略路由
虽然策略路由配置起来相对复杂,选路策略也必须手动指定,不会像OSPF一样自动学习路由表,但是实际项目中还是经常会用到策略路由,来实现常规路由无法实现的需求。
比如,多出口网络中,同时有电信和联通的线路,但是服务器对外映射的是电信的公网IP,那就必须强制服务器从电信线路走。
这时就需要用策略路由,来针对源地址为服务器的数据包,做强制走电信线路的规则。
再比如,某些网络安全项目上,要求某些关键数据包,必须经过安全设备的过滤,如下图。
现在希望税务局访问政务服务器的数据包,必须经过安全设备。
就需要在核心设备上,针对税务局的包做策略路由,因为选路策略要考虑源地址。
三、 策略路由怎么做
第一步:定义感兴趣流,也就是策略路由要针对什么样的数据包做动作 如:用acl 3000来定义1.0访问3.0的数据包。
acl 3000
rule 5 permit ip source 10.1.1.0 0.0.0.255 dest 10.1.3.0 0.0.0.255
第二步:定义流分类,流分类是关联ACL的。如:用名字为huawei-control1的流分类,来关联acl 3000
traffic classifier huawei-control1
if-match acl 3000
第三步:定义流行为,流行为是配置选路规则的,如:用名字为huuawei-control1的流行为,做一个选路策略,选路的规则,是下一跳12.1.1.2
traffic behavior huawei-control1
redirect ip-nexthop 12.1.1.2
第四步:定义流策略,流策略是将前面配好的流分类和流行为进行关联
traffic policy huawei-control1
classifier huawei-control1 behavior huawei-control1
第五步:在路由器的入接口调用流策略
int g0/0/2
traffic-policy huawei-control1 inbound
小思考:策略路由和路由策略,区别是什么?