2022-07-02 网工进阶(十五)路由策略-Route-Policy特性、策略路由(Policy-Based Routing)、MQC(模块化QoS命令行)

本文主要是介绍2022-07-02 网工进阶(十五)路由策略-Route-Policy特性、策略路由(Policy-Based Routing)、MQC(模块化QoS命令行),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Route-Policy特性

if-match子句

没有if-match子句代表匹配所有未被匹配的。

Route-Policy匹配规则

在Route-Policy中调用的匹配工具(ACL、p-prefix)中的permit代表意思为“抓取、命中”;而deny代表意思为“忽略、跳过”。

Route-Policy中的匹配模式permit代表意思为“允许通过”;而deny代表意思为“拒绝通过”。

举例说明

假设Route-Policy的过滤范围中有2条路由。

第一个节点调用的匹配工具的规则为:第1条permit、第2条deny。

当第一个节点匹配模式为permit时:会对第1条采 取放行并执行apply子句。把第2条交给后面的节点处理,因为第1条已经被“抓取”,就不会再次被后面的节点“抓取”。如果后面的节点中的匹配工具permit了第2条,处理方式同第1条。

当第一个节点匹配模式为deny时:会对第1条采取拒绝通行的处理方式。把第2条交给后面的节点处理,因为第1条已经被“抓取”,就不会再次被后面的节点“抓取”。如果后面的节点中的匹配工具permit了第2条,将会采取放行并执行apply子句

注1:Route-Policy的匹配模式为deny的情况下不会执行apply子句。

注2:通过观察实验结果,如果笔者没有猜错,匹配工具ip-prefix的index 和 策略工具Route-Policy的node 与 匹配工具ACL的rule一样在末尾都包含一条拒绝所有通过的隐藏规则。

策略路由(Policy-Based Routing)

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

用户还可以使用ACL匹配特定的报文,然后针对该ACL进行PBR部署。

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

PBR结构

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

每个节点内可包含多个条件语句

节点内的多个条件语句之间的关系为“”,即匹配所有条件语句才会执行本节点内的动作。

节点之间的关系为“”,PBR根据节点编号从小到大顺序执行,匹配当前节点将不会继续向下匹配。

6185380837f44870bff90b405d983f1b.png

策略路由(PBR)与路由策略区别

名称操作对象描述
路由策略路由信息路由策略是一套用于对路由信息进行过滤属性设置等操作的方法,通过对路由的操作或控制,来影响数据报文的转发路径
策略路由数据报文PBR直接对数据报文进行操作,通过多种手段匹配感兴趣的报文,然后执行丢弃强制转发路径等操作

PBR的分类

接口PBR

接口PBR只对转发的报文起作用,对本地始发的报文无效。

接口PBR调用在接口下,对接口的入方向报文生效。缺省情况下,设备按照路由表的下一跳进行报文转发,如果配置了接口PBR,则设备按照接口PBR指定的下一跳进行转发。

本地PBR

本地PBR对本地始发的流量生效,如:本地始发的ICMP报文。

本地PBR在系统视图调用。

相关命令

创建PBR

[R1]policy-based-route 10 permit node 10

设置匹配条件(匹配ACL)

[R1-policy-based-route-10-10]if-match acl 2000

设置匹配条件(匹配报文字节长度范文)

[R1-policy-based-route-10-10]if-match packet-length 0 100

设置匹配动作(指定下一跳)

[R1-policy-based-route-10-10]apply ip-address next-hop 10.1.1.3

设置匹配动作(指定出接口,路由优先级高于指定下一跳)

[R1-policy-based-route-10-10]apply output-interface GigabitEthernet 0/0/1

调用到全局(本地)PBR

[R1]ip local policy-based-route 10

调用到接口PBR

[R1-GigabitEthernet0/0/0]ip local policy-based-route 10

MQC

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

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

流分类:配置流分类,用于匹配感兴趣数据流。可基于VLAN Tag、DSCP、ACL规则等。

流行为:将感兴趣报文进行重定向。 可以设置重定向的下一跳IP地址或出接口。

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

应用流策略:1.在接口入方向上应用流策略。 2.对属于该VLAN并匹配流分类中规则的入方向报文实施策略控制。3.在全局或板卡上应用流策略。

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

相关命令

创建匹配(流分类)规则ACL 3000,允许目的IP地址为3.3.3.3的数据流

[R1]acl 3000[R1-acl-adv-3000]rule 5 permit ip destination 3.3.3.3 0

创建流分类10(规则之间的关系为或),设置匹配(流分类)规则ACL 3000

[R1]traffic classifier 10 operator or[R1-classifier-10]if-match acl 3000

创建流行为10,设置行为为指定下一跳

[R1]traffic behavior 10[R1-behavior-10]redirect ip-nexthop 10.1.2.2

创建流策略11,并绑定流分类10与流行为10

[R1]traffic policy 11[R1-trafficpolicy-11]classifier 10 behavior 10

在接口的入方向应用流策略11

[R1-GigabitEthernet0/0/0]traffic-policy 11 inbound 

PBR MQC配置举例

R2 配置MQC

创建匹配(流分类)规则ACL 3000,匹配目的IP地址为1.1.1.1和10.1.1.1的数据流[R2]acl 3000 
[R2-acl-adv-3000]rule 5 permit ip destination 1.1.1.1 0
[R2-acl-adv-3000]rule 10 permit ip destination 10.1.1.1 0创建流分类10(规则之间的关系为或),设置匹配(流分类)规则ACL 3000[R2]traffic classifier 10 operator or 
[R2-classifier-10]if-match acl 3000创建流行为10,设置行为为指定下一跳[R2]traffic behavior 10 
[R2-behavior-10]redirect ip-nexthop 10.1.4.4创建匹配(流分类)规则ACL 3001,匹配目的IP地址为3.3.3.3和10.1.3.3的数据流[R2]acl 3001
[R2-acl-adv-3001]rule 5 permit ip destination 3.3.3.3 0
[R2-acl-adv-3001]rule 10 permit ip destination 10.1.3.3 0创建流分类20(规则之间的关系为或),设置匹配(流分类)规则ACL 3001[R2]traffic classifier 20 operator or 
[R2-classifier-20]if-match acl 3001创建流行为20,设置行为为指定下一跳[R2]traffic behavior 20 
[R2-behavior-20]redirect ip-nexthop 10.1.2.4创建流策略11,并绑定流分类10与流行为10,绑定流分类20与流行为20[R2]traffic policy 11 
[R2-trafficpolicy-11]classifier 10 behavior 10
[R2-trafficpolicy-11]classifier 20 behavior 20在接口的入方向应用流策略11[R2-GigabitEthernet0/0/0]traffic-policy 11 inbound 
[R2-GigabitEthernet0/0/1]traffic-policy 11 inbound

R4 配置PBR

配置匹配规则ACL 3000,匹配R1的ip[R4]acl 3000
[R4-acl-adv-3000]rule 5 permit ip destination 1.1.1.1 0
[R4-acl-adv-3000]rule 10 permit ip destination 10.1.1.1 0创建PBR10 节点10[R4]policy-based-route 10 permit node 10设置匹配条件(匹配ACL 3000)[R4-policy-based-route-10-10]if-match acl 3000设置匹配动作(指定出接口g0/0/0)[R4-policy-based-route-10-10]apply output-interface GigabitEthernet 0/0/0配置匹配规则ACL 3001,匹配R3的ip[R4]acl 3001
[R4-acl-adv-3001]rule 5 permit ip destination 3.3.3.3 0
[R4-acl-adv-3001]rule 10 permit ip destination 10.1.3.3 0创建PBR10 节点20[R4]policy-based-route 10 permit node 20设置匹配条件(匹配ACL 3001)[R4-policy-based-route-10-20]if-match acl 3001设置匹配动作(指定出接口g0/0/1)[R4-policy-based-route-10-20]apply output-interface GigabitEthernet 0/0/1调用到全局(本地)PBR
[R4]ip local policy-based-route 10

模拟器拓扑文件

https://download.csdn.net/download/x629242/87581389

这篇关于2022-07-02 网工进阶(十五)路由策略-Route-Policy特性、策略路由(Policy-Based Routing)、MQC(模块化QoS命令行)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/203987

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

在JS中的设计模式的单例模式、策略模式、代理模式、原型模式浅讲

1. 单例模式(Singleton Pattern) 确保一个类只有一个实例,并提供一个全局访问点。 示例代码: class Singleton {constructor() {if (Singleton.instance) {return Singleton.instance;}Singleton.instance = this;this.data = [];}addData(value)

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

[MySQL表的增删改查-进阶]

🌈个人主页:努力学编程’ ⛅个人推荐: c语言从初阶到进阶 JavaEE详解 数据结构 ⚡学好数据结构,刷题刻不容缓:点击一起刷题 🌙心灵鸡汤:总有人要赢,为什么不能是我呢 💻💻💻数据库约束 🔭🔭🔭约束类型 not null: 指示某列不能存储 NULL 值unique: 保证某列的每行必须有唯一的值default: 规定没有给列赋值时的默认值.primary key:

用命令行的方式启动.netcore webapi

用命令行的方式启动.netcore web项目 进入指定的项目文件夹,比如我发布后的代码放在下面文件夹中 在此地址栏中输入“cmd”,打开命令提示符,进入到发布代码目录 命令行启动.netcore项目的命令为:  dotnet 项目启动文件.dll --urls="http://*:对外端口" --ip="本机ip" --port=项目内部端口 例: dotnet Imagine.M

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

Flutter 进阶:绘制加载动画

绘制加载动画:由小圆组成的大圆 1. 定义 LoadingScreen 类2. 实现 _LoadingScreenState 类3. 定义 LoadingPainter 类4. 总结 实现加载动画 我们需要定义两个类:LoadingScreen 和 LoadingPainter。LoadingScreen 负责控制动画的状态,而 LoadingPainter 则负责绘制动画。

从0到1,AI我来了- (7)AI应用-ComfyUI-II(进阶)

上篇comfyUI 入门 ,了解了TA是个啥,这篇,我们通过ComfyUI 及其相关Lora 模型,生成一些更惊艳的图片。这篇主要了解这些内容:         1、哪里获取模型?         2、实践如何画一个美女?         3、附录:               1)相关SD(稳定扩散模型的组成部分)               2)模型放置目录(重要)

java学习,进阶,提升

http://how2j.cn/k/hutool/hutool-brief/1930.html?p=73689