14、流量过滤与转发路径控制

策略路由

PBR(Policy-Based Routing,策略路由):PBR使得网络设备不仅能够基于报文的目的IP地址进行数据转发,更能基于其他元素进行数据转发,例如源IP地址、源MAC地址、目的MAC地址、源端口号、目的端口号、VLAN-ID等等。

若设备部署了PBR,则被匹配的报文优先根据PBR的策略进行转发,即PBR策略的优先级高于传统路由表

image-20250304115830927

PBR介绍

PBR与Route-Policy类似,由多个节点组成,每个节点由匹配条件(条件语句)和执行动作(执行语句)组成。

  1. 同一节点内的多个条件语句的关系为与;
  2. 节点之间的关系为或。
  3. 按照节点编号从小到大执行。

PBR的节点匹配模式:

  • permit表示对满足匹配条件的报文进行策略路由,即执行节点中的apply语句。
  • deny表示对满足匹配条件的报文不进行策略路由,即使该节点中存在apply语句,也不会被执行。
  • deny的匹配模式的节点,无论报文是否满足匹配条件,其中的apply语句都不会被执行。

总结:

  • permit:匹配则执行apply
  • deny:匹配则跳过apply,但继续检查后续节点;不匹配则直接跳过。

是否执行策略路由的各种情况?

当acl为deny,PBR也为deny时??

等等,这些情况,待验证。。。

  • 执行:
    • PBR节点为permit,且满足匹配条件。

image-20250304120137730

PBR与路由策略的区别:

  • 路由策略(Router-Policy):对路由信息进行过滤、属性设置,间接影响报文的转发。
  • 策略路由(Policy-Based Routing):直接对数据报文进行操作,执行丢弃或强制转发路径等操作。

image-20250304120311569

PBR的分类

接口PBR:

  • 只对转发的报文起作用,对本地始发的报文无效
  • 在接口视图下调用,对接口的入方向报文生效

本地PBR:

  • 对本地始发的流量生效

  • 在系统视图中调用

PBR的典型应用场景

场景一

image-20250304120942658

场景二

image-20250304120956566

PBR配置命令

1、创建PBR

[Huawei]policy-based-route policy-name {deny | permit} node node-id
# 示例
policy-based-route 1 permit node 10

2、设置IP报文的匹配条件

[Huawei-policy-based-route-PBR-10] if-match acl acl-number
# 也可以匹配报文长度
[Huawei-policy-based-route-PBR-10] if-match packet-length min-length max-length

3、指定PBR报文的出接口

[Huawei-policy-based-route-PBR-10] apply output-interface interface-type interface-number

4、设置PBR报文的下一跳

[Huawei-policy-based-route-PBR-10] apply ip-address next-hop ip-address1 [ip-address2]

5、全局PBR调用

[Huawei] ip local policy-based-route Policy-name

6、接口PBR调用

[Huawei-GigabitEthernet0/0/0] ip policy-based-route Policy-name

除了该方式之外,接口策略路由还可以使用MQC的方式进行配置

配置案例(实验没做完)

在ensp中做实验时,使用AR2220路由器,能狗定义PBR,但是在接口下使用时却报错。

image-20250304194054616

image-20250304212005098

image-20250304212017742

MQC

MQC(Modular QoS Command-Line Interface,模块化QoS命令行)是指通过将具有某类共同特征的数据流划分为一类,并为同一类数据流提供相同的服务,也可以对不同类的数据流提供不同的服务。

MQC包含三个要素:流分类(traffic classifier)、流行为 ( traffic behavior ) 和流策略 ( traffic policy)。

MQC的流行为支持重定向报文,因此可以使用MQC实现IP单播策略路由。

image-20250307083137065

流策略:将流分类和流行为绑定,对分类后的报文执行对应流行为中定义的动作。

一个流策略可以绑定多个流分类和流行为。

流分类

流分类中各规则之间的关系分为:and或or,缺省情况下的关系为or

  • and:当流分类中包含ACL规则时,报文必须匹配其中一条ACL规则以及所有非ACL规则;当流分类中没有ACL规则时,报文必须匹配所有非ACL规则。
  • or:报文只要匹配了流分类中的一个规则,设备就认为报文匹配中该流分类。

流分类支持的匹配项如下所示。

image-20250307085016644

流行为

流行为:用来定义执行的动作,支持报文过滤、重标记优先级、重定向、流量统计等动作。

image-20250307085429304

流策略

流策略:流策略支持在接口上调用。

流策略存在方向(inbound、outbound)的概念,策略中的流行为匹配入、出方向的报文,对匹配中的报文执行相应的流动作。

流策略不同于PBR,PBR只能调用在三层接口,而流策略支持调用在二层接口。

配置命令

1、创建流分类

[Huawei] ttraffic classifier classifier-name [operator {and | or}]

2、创建刘行为

[Huawei] tarfic behavior behavior-name

3、创建流策略,并绑定流分类与流行为

[Huawei] trafic policy policy-name
[Huawei-trafficpolicy-policyname] classifier classifier-name behavioe behavior-name

案例:使用MQC实现策略路由(实验没做)

image-20250307090100835

image-20250307090126540

image-20250307090218724

流量过滤

需求背景

image-20250307090830685

流量过滤工具

image-20250307090905007

使用Traffic-Filter过滤流量

image-20250307091034864

使用MQC过滤流量

为匹配ACL规则的报文指定报文过滤动作时:

  • 如果此ACL中的rule规则配置为permit,则设备对此报文采取的动作由流行为中配置的deny或permit决定;
  • 如果此ACL中的rule规则配置为deny,则无论流行为中配置了deny或permit,此报文都被丢弃

image-20250307091056259

image-20250307091302190

思考题

  1. (简答题)本地策略路由与接口策略路由的区别在于?

答:本地策略路由对本地始发的流量生效,而接口策略路由只会对接口入方向的流量生效。

  1. (简答题)使用MQC方式过滤流量时,流分类中匹配的ACL与Traffic-Filter调用的ACL有何区别?

答:MQC调用的ACL里permit、deny只代表是否匹配流量,不代表是否放通、拒绝流量,而Traffic-Filter调用的ACL里permit、deny代表放通、拒绝流量。

posted @ 2025-05-28 11:55  最爱喝开水  阅读(92)  评论(0)    收藏  举报