策略路由PBR命令详解

策略路由PBR命令详解

2023年7月4日发(作者:)

PBR

1 命令汇总

1. set ip next-hop { ip-address [...ip-address] | recursive ip-address }

允许写多个下一跳IP,但这些IP必须是直连路由器的接口IP

如果定义了多个下一跳IP,则当第一个下一跳关联的本地出接口DOWN掉,则自动切换到下一个next-hop

recursive next-hop(递归下一跳)特性突破了传统下一跳必须是直连路由器下一跳接口IP的限制。Recursive

next-hop可以不是直连网络,只要路由表中有相关的路由可达即可。一般recursive next-hop不可达,数据将交由路由处理(一般就被默认路由匹配走了)

如果在一个route-map列表的同一个序列中同时使用ip next-hop及ip next-hop recursive,则ip next-hop 有效。如果ip next-hop 挂了,则启用ip next-hop recursive,如果ip next-hop recursive和ip next-hop 都挂了,则丢给路由表处理。注意:一个route-map序列,只允许配置一个ip next-hop recursive

2. set ip next-hop verify-availability [ next-hop-address sequence track object ]

检测下一跳的可达性,默认是关闭的

Sequence of next hops. The acceptable range is from 1 to 65535.

此条命令可以下列方式使用:

 在PBR环境下使用CDP检测下一跳IP可达性(不加后面的可选参数)

使用该特性可能会一定程度上降低设备性能,另外必须保证自己以及邻居路由器接口CDP都是开启的,最后过程交换及CEF都支持该特性,但dCEF不支持。

该特性借助设备的CDP表来判断下一跳的可达性,

如果本端开启了该特性,next-hop设备不支持CDP,则切换至下一个next-hop,如果没,则跳过PBR

如果本端没开启该特性,那么数据包要么被成功策略路由,要么永远无法正常路由出去(被丢弃)

如果仅仅想检测部分next-hop设备的可达性,则可以配置不同的route-map条目,来选择性的使用该特性(同一个route-map)。

 结合object tracking来检测一个远端设备(或IP)的可达性

使用object tracking,PBR可以做的更加灵活,可依据ICMP、HTTP、路由表中某条路由的存在与否、接口的up/DOWN等来进行决策。

注意: 如若基于CDP的检测及基于object tracking的检测都应用了,则后者优先

3. set ip next-hop 与set ip default next-hop的区别比较简单,这里就不解析了

SPOTO 全球 培训 ● 项目 ● 人才

1 PBR

2 实验验证

2.1 set ip next-hop

GW的配置如下:

access-list 1 permit any

route-map PBR permit 10

match ip address 1

set ip next-hop 10.1.1.2 10.2.2.2

interface fast 1/0

ip policy route-map PBR

!! GW并无其他关于路由的配置

实验现象:

1. 当网络正常时,数据强制走ISP1,ping 100的远程网络数据到ISP1

2. 当ISP1宕机时,GW连接ISP1的接口DOWN掉,则PC访问100的流量自动切换至ISP2

3. 当ISP1宕机时,且GW检测不到时(也就是GW连接ISP1的接口没DOWN),PC访问100的流量仍然被扔给ISP1,这就断网了

补充:

Set ip next-hop ip1 ip2 ip3,这个知识点已经没问题了吧?match住相关条件后,数据包首先被送到第一个next-hop ip address,如果这个ip地址所关联的直连接口DOWN了,则切换至下一个next-hop ip address,如此反复,可以配置多个next-hop。但是,如果直连的next-hop(对端路由器或其接口)自己挂了,而本地直连接口没感知到(如中间串了台switch),则无法自动切换,路由器仍然会一股脑的把数据丢给这个next-hop。

SPOTO 全球 培训 ● 项目 ● 人才

2 PBR

另外,如果配置的时候命令这么写的话:

Set ip next-hop ip1

Set ip next-hop ip2

……

则IOS会自动将命令变成Set ip next-hop ip1 ip2 ……

2.2 set ip next-hop verify-availability

GW的配置如下:

access-list 1 permit any

route-map PBR permit 10

match ip address 1

set ip next-hop 10.1.1.2 10.2.2.2

set ip next-hop verify-availability

interface fast 1/0

ip policy route-map PBR

!! GW并无其他关于路由的配置

!! ISP1、ISP2及GW都需开启CDP

实验现象:

1. 当网络正常时,数据强制走ISP1,ping 100的远程网络数据到ISP1

2. 当ISP1宕机时,且GW连接ISP1的接口DOWN掉,则PC访问100网络的数据切换至ISP2

3. 当ISP1宕机时,且GW连接ISP1的接口没DOWN(如关闭ISP1的CDP),由于GW丢失了ISP1的CDP信息,因此仍未ISP1挂了,于是PC访问100网络的数据切换至ISP2,网络不断

SPOTO 全球 培训 ● 项目 ● 人才

3 PBR

2.3 set ip next-hop verify-availability基于object tracking

ip sla monitor responder

ip sla monitor 1

type echo protocol ipIcmpEcho 10.1.1.2 source-ipaddr 10.1.1.1

frequency 10

exit

ip sla monitor schedule 1 life forever start-time now

track 1 rtr 1 reachability

ip sla monitor 2

type echo protocol ipIcmpEcho 10.2.2.2 source-ipaddr 10.2.2.1

frequency 10

exit

ip sla monitor schedule 2 life forever start-time now

track 2 rtr 2 reachability

access-list 1 permit any

route-map PBR permit 10

match ip address 1

set ip next-hop verify-availability 10.1.1.2 10 track 1

set ip next-hop verify-availability 10.2.2.2 20 track 2

实验现象:

1. 当网络正常时,数据强制走ISP1,ping 100的远程网络数据到ISP1

2. 当ISP1故障,GW通过tracking感知到,于是数据切换至ISP2

3. 回复ISP1,GW通过tracking感知到,数据又切换回ISP1

SPOTO 全球 培训 ● 项目 ● 人才

4 PBR

技术解析:

1. 首先定义track object,关联到一个ip sla monitor

使用ICMP协议去探测10.1.1.2的可达性(使用源地址10.1.1.1去ping10.1.1.2)

Track object 的ID为1,关联到ip sla monitor 1

当10.1.1.2可达,则track 对象为true

ip sla monitor 1

type echo protocol ipIcmpEcho 10.1.1.2 source-ipaddr 10.1.1.1

frequency 10

exit

ip sla monitor schedule 1 life forever start-time now

track 1 rtr 1 reachability

2. 然后在route-map中调用该track object

route-map PBR permit 10

match ip address 1

set ip next-hop verify-availability 10.1.1.2 10 track 1

当track1为true,也就是10.1.1.2可达,则PC访问100网络的数据被丢给10.1.1.2,如果track 1挂了,则切换至下一个next-hop

2.4 set ip next-hop recursive

SPOTO 全球 培训 ● 项目 ● 人才

5 PBR

GW的配置如下:

access-list 1 permit any

route-map PBR permit 10

match ip address 1

set ip next-hop 10.2.2.2

set ip next-hop recursive 10.1.12.2

ip route 10.1.12.0 255.255.255.0 10.1.1.2

ip route 0.0.0.0 0.0.0.0 serial s0/2

实验现象:

1. 正常情况下,数据优先走ip next-hop,也就是走ISP2

2. 当GW连接ISP2的出接口DOWN掉(也就是ISP2挂了),则切换至ip next-hop recursive,也就是ISP2

注意,这个时候是才用路由表递归找到去往10.1.12.2的路由的,因此路由表里必须有可达路由

3. 当GW丢失了去往10.1.12.2的路由,并且连接ISP2的连接也丢失了,则走默认路由

红茶三杯(SPOTO 朱SIR),更多技术文档及CCIE教学视频请关注: /vinsoney

SPOTO 全球 培训 ● 项目 ● 人才

6

发布者:admin,转转请注明出处:http://www.yc00.com/news/1688418964a135579.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信