一 、PBR的概述
1.定义
策略路由: PBR 是一种覆盖路由器默认路由决策机制的技术。它允许管理员根据策略(而不仅仅是目标地址)来设置数据包的下一跳 IP 地址、出站接口、IP 优先级/DSCP 值等。
路由策略:是指在路由器或三层设备上,通过一系列规则和条件,对路由信息进行过滤、修改、发布等操作 ,从而影响路由表的生成和路由的选择。它主要侧重于对路由信息本身的处理,目的是控制路由的传播和选择最优路径。
2.总结
- 路由策略:作用对象是路由信息,主要对路由表的生成和路由的传播进行控制,间接影响数据包的转发路径。
- 策略路由:作用对象是数据包,直接对数据包的转发路径进行干预,不依赖于路由表的信息 ,优先于路由表对数据包进行处理。

二、PBR的原理
1. 入口数据包
当数据包到达设备的接口时,流程开始。数据包可以是来自网络中的其他设备,也可以是本地产生的。
2. 策略路由判断
设备首先判断是否需要对该数据包应用策略路由。这通常取决于设备上是否配置了策略路由规则。
- 如果不需要(
N
),数据包将按照正常的路由转发流程处理,即根据目标地址查找路由表进行转发。 - 如果需要(
Y
),数据包将进入策略路由的处理流程。
3. 匹配条目检查
在策略路由的处理流程中,设备会检查是否有匹配的策略路由条目。这通常是通过访问控制列表(ACL)或其他匹配条件来实现的。
- 如果没有匹配的条目(
N
),数据包将退回到正常的路由转发流程。 - 如果有匹配的条目(
Y
),数据包将继续进行下一步的处理。
4. Permit 检查
在找到匹配的策略路由条目后,设备会检查该条目的动作是 “Permit”(允许)还是 “Deny”(拒绝)。
- 如果是 “Deny”(
N
),数据包将退回到正常的路由转发流程。 - 如果是 “Permit”(
Y
),数据包将按照策略路由条目中定义的动作进行处理。
5. 策略路由处理
如果数据包通过了所有的检查,设备将按照策略路由条目中定义的动作进行处理。这可能包括:
- 指定下一跳地址。
- 指定出接口。
- 修改数据包的优先级或其他属性。
6. 正常路由转发
如果数据包在任何一个步骤中没有通过检查(即选择了 N
路径),它将按照正常的路由转发流程处理。这意味着设备将根据数据包的目标地址查找路由表,并按照路由表中的信息进行转发。