流量过滤与转发路径控制
本文主要介绍使用策略路由、MQC、流量过滤等方式控制报文的转发路径和进行流量过滤。
策略路由
PBR(policy-based routing):策略路由使网络设备不仅能够基于报文的目的IP地址进行数据转发,还能基于其它元素进行转发,如源IP地址、源MAC、源/目端口号等。
PBR策略的优先级高于传统路由表,匹配的报文会优先根据PBR的策略进行转发。
PBR语法
PBR语法与route-policy类似,也是有多个节点组成,每个节点有匹配条件(条件语句)和执行动作(执行语句)。
PBR与路由策略的区别
名称 | 操作对象 | 描述 |
route-policy | 路由信息 |
路由策略是一套用于对路由信息进行过滤、属性设置等操作的方法。通过对路由的操作或控制,来影响数据报文的转发路径。 |
PBR | 数据报文 | PBR直接对数据报文进行操作,通过多种手段匹配感兴趣的报文,然后执行丢弃或强制转发路径等操作。 |
PBR典型应用场景
场景一:数据引流
场景二:多ISP出口
PBR典型配置示例
1.配置ACL3000,rule 1 deny网段1访问服务器的流量,rule 2 permit网段1访问internet的流量。
[RTA]acl 3000 [RTA-acl-adv-3000]rule 1 deny ip source 10.1.1.0 0.0.0.255 destination 10.1.3.354 0 [RTA-acl-adv-3000]rule 2 permit ip source 10.1.1.0 0.0.0.255 destination 0.0.0.0 0
2.配置ACL3001,rule 1 deny网段2访问服务器的流量,rule 2 permit网段2访问internet的流量。
[RTA]acl 3001 [RTA-acl-adv-3000]rule 1 deny ip source 10.1.2.0 0.0.0.255 destination 10.1.3.354 0 [RTA-acl-adv-3000]rule 2 permit ip source 10.1.2.0 0.0.0.255 destination 0.0.0.0 0
3.创建策略路由abc,创建节点10,调用ACL3000,指定其转发下一跳为202.1.2.3。
[RTA]policy-based-route abc permit node 10 [RTA-policy-based-route-abc-10]if-match acl 3000 [RTA-policy-based-route-abc-10]apply ip-address next-hop 202.1.2.3
4.创建策略路由abc,创建节点20,调用ACL3001,指定其转发下一跳为154.1.2.3。
[RTA]policy-based-route abc permit node 20 [RTA-policy-based-route-abc-20]if-match acl 3001 [RTA-policy-based-route-abc-20]apply ip-address next-hop 154.1.2.3
5.在路由器接口上调用策略路由abc(PBR只能在三层接口上调用)。
[RTA]interface GigabitEthernet 0/0/0 [RTA-GigabitEthernet0/0/0]ip policy-based-route abc
MQC
MQC(modular QoS command-line interface)是指将具有某类共同特征的数据流划分为一类,为不同类的数据流提供不同的服务。
MQC三要素
流分类(traffic classifier)
定义一组流量匹配规则,以对报文进行分类。
用于匹配感兴趣的数据流。可基于ACL、VLAN、Tag、DSCP等进行匹配。
流行为(traffic behavior)
用来定义执行的动作,支持报文过滤、重标记优先级、重定向、流量统计等动作。
将感兴趣的报文进行重定向。可以设置下一跳IP或出接口。
流策略(traffic policy)
将流分类和流行为进行绑定,一个流策略可以绑定多个流分类和流行为。
流策略存在方向的概念(inbound、outbound)。
流策略不同于PBR,PBR只能调用在三层接口,流策略也可以在二层接口、全局、板卡等应用。
MQC典型配置示例
1.创建ACL分别匹配网段1、网段2访问Internet的流量。
[RTA]acl 3000 [RTA-acl-adv-3000]rule 5 permit ip source 10.1.1.0 0.0.0.255 destination0.0.0.0 0 [RTA]acl 3001 [RTA-acl-adv-3001]rule 5 permit ip source 10.1.2.0 0.0.0.255 destination0.0.0.0 0
2.创建流分类a、b分别匹配ACL3000、ACL3001。
[RTA]traffic classifier a [RTA-classifier-a]if-match acl 3000 [RTA]traffic classifier b [RTA-classifier-b]if-match acl 3001
3.创建流行为aa、bb执行将报文重定向的动作。
[RTA]traffic behavior aa [RTA-behavior-aa]redirect ip-nexthop 202.1.2.3 [RTA]traffic behavior bb [RTA-behavior-bb]redirect ip-nexthop 154.1.2.3
4.创建流策略ccc,将流分类a与流行为aa、流分类b与流行为bb绑定。
[RTA]traffic policy ccc [RTA-trafficpolicy-ccc]classifier a behavior aa [RTA-trafficpolicy-ccc]classifier b behavior bb
5.在接口上调用流策略。
[RTA]interface GigabitEthernet 0/0/0 [RTA-GigabitEthernet0/0/0]traffic-policy ccc inbound //在接口的入方向调用
流量过滤