PBR
PBR(策略路由):PBR使得网络设备不仅能够基于报文的目的IP地址进行数据转发,更能基于其他元素进行数据转发,例如源IP地址、源MAC地址、目的MAC地址、源端口号、目的端口号、VLAN-ID等等。
::: tip 模拟器中只能使用Router设备来实现PBR。 ::: 拓扑中Router做OSPF邻居,OSPF链路开销无论带宽都是1。
最短路径优先原则,PC1访问PC2、3不会走AR3:
要求通过PBR做策略路由将PC1访问PC3的流量引导到AR3进行数据转发。
::: tip 步骤:
- 使用ACL匹配出想要做策略的流量(一般是源地址或目标地址,源地址没有唯一性,二选一时选择目标地址)。目标地址匹配使用高级ACL。
- 使用策略匹配该流量指定下一跳转发。
:::
::: warning[AR1-acl-adv-3000]rule 5 permit ip source 192.168.1.1 0 destination 172.16.2.3 0
只看ACL无法得知是匹配路由还是流量,ACL应用在对于流量做管控的设备(PBR)上,匹配出的就是流量。 :::
[AR1]policy-based-route test permit node 10
[AR1-policy-based-route-test-10]if-match acl 3000
[AR1-policy-based-route-test-10]apply ip-address next-hop 10.1.13.3
如上命令的作用是新建一条策略匹配出acl 3000抓取的流量,把acl 3000对应的流量按照下一跳10.1.13.3进行转发,不按照路由表的10.1.12.2转发,即从AR3进行转发。
::: tip PBR支持全局调用和接口调用:
- 接口调用:对于接口接收到的流量执行对应的策略。
- 全局调用:对于自身的始发流量执行对应的策略。
接口和全局的策略可以同时调用。
:::
由上可得,对于PC1去往PC3的流量,如果采用接口调用的方式,需要在E0/0/0接口做PBR。
查看效果: ::: warning 做策略后,路由表保持不变,原因是路由表是控制平面,PBR是转发平面。 ::: 查看PBR策略的转发条目:[AR1-Ethernet0/0/0]ip policy-based-route test 接口调用策略
[AR1-acl-adv-3000]rule 10 permit ip source 192.168.1.254 0 destination 172.16.2.3 0 [AR1]ip local policy-based-route test
::: tip 策略路由的ACL只能用permit,不能用deny。 ::: AR1新建lo0口测试:
[AR1-acl-adv-3000]rule 15 permit ip source 1.1.1.1 0 destination 172.16.2.3 0
[AR1-acl-adv-3000]rule 15 deny ip source 1.1.1.1 0 destination 172.16.2.3 0
配置成deny模式后,如果是按照路由表转发,路由表的下一跳被拒绝,就无法进行通信。如果按照转发表转发时,deny的配置在接口和全局上都不会生效。
MQC
MQC(模块化QoS命令行)是指通过将具有某类共同特征的数据流划分为一类,并为同一类数据流提供相同的服务,也可以对不同类的数据流提供不同的服务。 MQC包含三个要素:流分类、流行为和流策略。 ::: tip 1.流分类:定义一组流量匹配规则,以对报文进行分类。 2.流行为:用来定义执行的动作,支持报文过滤、重标记优先级、重定向、流量统计等动作。 3.流策略:将流分类和流行为绑定,对分类后的报文执行对应流行为中定义的动作。 一个流策略可以绑定多个流分类和流行为。 ::: MQC的流行为支持重定向报文,因此可以使用MQC实现IP单播策略路由。 上述拓扑新建完成后,PC1-1访问PC2-1和PC2-2的路径:
使用MQC的方式实现流量途径AR3-1设备:
[AR1]acl 3000
[AR1-acl-adv-3000]rule 10 permit ip source 192.168.1.1 0 destination 172.16.2.1 0
[AR1]traffic classifier PC1-1_PC2-1 流分类
[AR1-classifier-PC1-1_PC2-1]if-match acl 3000 匹配对应的业务流
::: tip operator参数的含义是:如果有多条if-match语句,用来标明是与还是或。 默认是或的关系。 :::
[AR1]traffic behavior PC1-1_PC2-1 流行为
[AR1-behavior-PC1-1_PC2-1]redirect ip-nexthop 10.1.13.3 更改流量转发的下一跳
[AR1]traffic policy test 流策略
[AR1-trafficpolicy-test]classifier PC1-1_PC2-1 behavior PC1-1_PC2-1 将流分类和流行为进行关联
流策略的调用是在流量接收的接口。
[AR1-GigabitEthernet0/0/0]traffic-policy test inbound 接收流量的入方向调用流策略
PC1-1访问PC2-1路径经过AR3: ::: warning 流策略的调用必须经过接口才会触发策略。 :::