PBR 路由策略
PBR 策略路由
通过流量策略来执行选路的一种转发手段。
传统的路由表转发只能通过数据的目标地址做决策提供路由
策略路由可以根据源地址、目的地址、源端口、目的端口、协议、TOS等流量特征来做决策提供路由,灵活性高,但由于只能手工配置导致不适用于中大型企业网络里。
路由表与策略路由的关系
策略路由是先与路由表执行的,策略路由没有被捕获的流量依然会去执行路由表。
两种配置:
1.接口下配置
只能捕获该接口的入接口流量做策略(不能处理本路由器产生的流量)
R5(config)#access-list 100 permit ip host 1.1.1.1 any //用acl捕获流量
R5(config)#route-map pbr permit 10 //定义route-map
R5(config-route-map)#match ip address 100 //调用被acl捕获的流量
R5(config-route-map)#set ip next-hope 10.1.1.1 //设置下一跳
R5(config)#int e/1
R5(config-if)#ip policy route-map pbr //接口下调用
2.全局配置
能够捕获所有接口入接口流量以及本路由器产生的流量(源地址是本路由器地址)
3.策略路由的冗余设置
route-map PBR permit 10
match ip address 1
set ip next-hope verify-availability 10.1.24.2 1 track 1 //设置track监控,如果监控成功则执行该语句,如果不成功则转为执行下有一条set语句。
set ip next-hope 10.1.34.3
track 1 ip sla 1
//定义一个track监控sla的探测结果
ip sla 1 //定义一个sla
icmp-echo 10.1.12.1 source-ip 10.4.4.4 //设置其探针
ip sla schedule 1 life forever start-time now //设置sla 1的执行时间
4.default语句
在route-map的set ip default这个位置输入,定义为被捕获的流量的先查路由表如果能精确匹配(如果抓的10.5.5.5,路由表中有10.5.5.0/24这就不叫精确匹配,如果10.5.5.5/32则叫精确匹配)就执行路由表,如果不能则执行策略路由
R5(config)#access-list 100 permit ip host 1.1.1.1 any //用acl捕获流量
R5(config)#route-map pbr permit 10 //定义route-map
R5(config-route-map)#match ip address 100 //调用被acl捕获的流量
R5(config-route-map)#set ip next-hope 10.1.1.1 //设置下一跳
R5(config)#int e/1
R5(config-if)#ip policy route-map pbr //接口下调用
策略在转发层面不如路由表,原因是匹配的东西过多,底层芯片处理支持有限。使用原则是能不就不用,如果出现非目的地址的转发策略果断用。
策略路由其他功能–为流量打tos标记
#router-map PBR permit10
#atch ip address 1
#set ip precedence priority //设置队列优先级(优先出接口)
acl的缺点:
eg:
10.0.0.0/24
10.0.0.0/8
10.0.0.0/16
用acl匹配10.0.0.0 0.0.255.255
通配符里0表示在意,1表示不在意–>只要10.0开头就匹配---->三条全匹配上了
前缀类表

掩码小于8(0-8位)
ge是大于,le是小于
也可以在后面 ge 16 le 24 ,即:匹配16-24位
