计算机网络-路由策略与路由控制一

到目前为止我们学习了路由与交换基础,路由协议有静态、RIP、OSPF、IS-IS等,但是根据实际组网需求,往往需要实施一些路由策略对路由信息进行过滤、属性设置等操作,通过对路由的控制,可以影响数据流量转发。

因此我们开始学习一些针对路由进行过滤修改的工具,以便更好地实现组网需求。

一、路由控制

背景
背景

路由控制可以通过路由策略(Route-Policy)实现,路由策略应用灵活而广泛,有以下几种常见方式:

  • 控制路由的发布:通过路由策略对发布的路由进行过滤,只发布满足条件的路由。
  • 控制路由的接收:通过路由策略对接收的路由进行过滤,只接收满足条件的路由。
  • 控制路由的引入:通过路由策略控制从其他路由协议引入的路由条目,只有满足条件的路由才会被引入。

路由策略可以对路由的产生、发布和选择进行控制,进而影响数据包的转发路径。

路由控制
路由控制

简单说就是通过路由匹配工具匹配到对应的路由或者前缀,然后通过路由策略工具过滤、修改路由的属性(tag、下一跳等等)。

二、路由匹配工具

路由匹配工具主要用于识别和“抓取”特定的路由信息,可以根据预设的条件匹配路由,从而对路由信息进行过滤或选择。

2.1 ACL访问控制列表

ACL我们前面其实已经学习过了,那时候也大致讲了一些作用和使用场景,ACL一般结合其它工具实现具体需求。

访问控制列表(Access Control List,ACL)是一个匹配工具,能够对报文及路由进行匹配和区分。

ACL由若干条permit或deny语句组成。每条语句就是该ACL的一条规则,每条语句中的permit或deny就是与这条规则相对应的处理动作。 ACL访问控制列表

组成作用
ACL编号不同的编号范围代表不同的ACL类别
规则编号默认从小到大,默认步长是5
动作deny/permit执行允许或拒绝动作
匹配项根据五元组等信息进行匹配

当进行IP地址匹配的时候,后面会跟着32位掩码位,这32位称为通配符。

通配符 (Wildcard) ,通配符是一个32比特长度的数值,用于指示IP地址中哪些比特位需要严格匹配,哪些比特位无需匹配。通配符通常采用类似网络掩码的点分十进制形式表示,但是含义却与网络掩码完全不同。

通配符,也是点分十进制格式,换算成二进制后,“0”表示“匹配”,“1”表示“不匹配”。通配符中的1或者0可以不连续。 通配符

两个特殊的通配符:

  • 当通配符全为0来匹配IP地址时,表示精确匹配某个IP地址;
  • 当通配符全为1来匹配0.0.0.0地址时,表示匹配了所有IP地址。

基于编号的ACL分类:

分类编号范围规则定义描述
基本ACL2000~2999仅使用报文的源IP地址、分片信息和生效时间段信息来定义规则。
高级ACL3000~3999可使用IPv4报文的源IP地址、目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口、UDP源/目的端口号、生效时间段等来定义规则。
二层ACL4000~4999使用报文的以太网帧头信息来定义规则,如根据源MAC地址、目的MAC地址、二层协议类型等。
用户自定义ACL5000~5999使用报文头、偏移位置、字符串掩码和用户自定义字符串来定义规则。
用户ACL6000~6999既可使用IPv4报文的源IP地址或源UCL(User Control List)组,也可使用目的IP地址或目的UCL组、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则。

最常用的是基本ACL和高级ACL,基本ACL匹配全部流量,高级ACL匹配源目信息。

ACL匹配机制:

匹配机制
匹配机制
  • 顺序匹配
  • 一旦命中立即停止
  • 默认最后有一条拒绝所有的匹配规则

ACL技术总是与其他技术结合在一起使用的,因此,所结合的技术不同,“允许 (permit)”及“拒绝 (deny)”的实际作用也会不同。例如,当ACL技术与路由过滤技术结合使用时,permit就是“匹配该条路由条目”的意思,deny就是“不匹配该条路由条目”的意思。

匹配示例
匹配示例

2.2 IP前缀列表(IP-Prefix List)

ACL只能匹配路由的前缀,无法匹配路由的网络掩码,也就是只能匹配网络地址,而不能对掩码位进行匹配,因此有了另外一个工具。

IP前缀列表(IP-Prefix List) 是将路由条目的网络地址、掩码长度作为匹配条件的过滤器,可在各路由协议发布和接收路由时使用。不同于ACL,IP-Prefix List能够同时匹配IP地址前缀长度以及掩码长度,增强了匹配的精确度。

IP前缀列表
IP前缀列表

组成部分:

  • ip-prefix-name:地址前缀列表名称
  • 序号:本匹配项在地址前缀列表中的序号,匹配时根据序号从小到大进行顺序匹配
  • 动作:permit/deny,地址前缀列表的匹配模式为允许/拒绝,表示匹配/不匹配
  • IP网段与掩码:匹配路由的网络地址,以及限定网络地址的前多少位需严格匹配
  • 掩码范围:匹配路由前缀长度,掩码长度的匹配范围 mask-length<=greater-equal-value<=less-equal-value<=32

IP-Prefix的匹配机制:

匹配机制
匹配机制
匹配示例
匹配示例
  • 按照节点顺序匹配
  • 末尾默认拒绝所有

配置示例:

# 多节点匹配,相同前缀列表aa下面有10和20节点,隐含末尾deny所有
ip ip-prefix aa index 10 deny 10.1.1.0 24
ip ip-prefix aa index 20 permit 10.1.1.1 32# 单节点匹配,前缀列表bb,在10.1.1.0 24 中进行匹配,掩码大于等于26小于32才匹配,隐含末尾拒绝所有
ip ip-prefix bb index 10 permit 10.1.1.0 24 greater-equal 26 less-equal 32# 配置前缀列表
[Huawei] ip ip-prefix ip-prefix-name [ index index-number ] { permit | deny } ipv4-address mask-length [ match-network ] [ greater-equal greater-equal-value ] [ less-equal less-equal-value ]
# 配置项说明
ip-prefix-name:指定地址前缀列表的名称。
index index-number:指定本匹配项在地址前缀列表中的序号。
permit:指定地址前缀列表的匹配模式为允许。
deny:指定地址前缀列表的匹配模式为拒绝。
ipv4-address mask-length:指定IP地址和指定掩码长度。
greater-equal greater-equal-value:指定掩码长度匹配范围的下限。
less-equal less-equal-value:指定掩码长度匹配范围的上限。
匹配示例
匹配示例

前缀列表就是在一个网段范围内精确匹配,最低掩码多少位,最大掩码多少位的方式进行匹配。

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/838082.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniapp 开启阿里云服务并开启unipush消息推送

本篇只是为了记录初次使用unipush服务的一些步骤 一、开启uniCloud云开发环境&#xff0c;新建阿里云服务 1、项目右键选择创建uniCload云开发环境&#xff0c;选择阿里云 2、在项目里面新创建的uniCloud文件夹右键选择关联云服务空间或项目&#xff0c;并点击新建 3、在服务…

排列三中奖概率分析

排列三中奖的概率分析主要取决于不同的投注方式。以下是针对排列三不同投注方式的中奖概率分析&#xff1a; 直选&#xff1a;排列三总共有1000个不同的号码组合&#xff0c;因此直选的中奖概率是1/1000。这意味着&#xff0c;如果你随机选择一个号码进行投注&#xff0c;你中…

整理php中可以使用多种方法对数组进行排序常用的函数

整理php中可以使用多种方法对数组进行排序常用的函数 常用函数示例代码 常用函数 sort() - 以升序对数组进行排序。 rsort() - 以降序对数组进行排序。 asort() - 以升序对关联数组进行排序&#xff0c;保持键/值关系。 arsort() - 以降序对关联数组进行排序&#xff0c;保持键…

深入理解指针(2)

在上一篇深入理解指针(1)中我们已经初步了解指针地址&#xff1b;指针的解引用&#xff1b;指针变量类型作用&#xff0c;指针运算等知识&#xff0c;接下来我们将继续学习指针的相关内容&#xff0c;一起加油吧&#xff01;&#xff01;&#xff01; 1. 数组名的理解 在之前的…

【计算机网络】HTTP协议详解实战抓包分析教程

文章目录 1.HTTP简介2.HTTP报文的结构3.HTTP协议中空行的作用4.uri和url的区别5.HTTP请求5.1 HTTP请求方法5.2 HTTP请求报头 6.HTTP响应6.1 状态码 7.HTTP位于应用层(基于TCP)8.非持久和持久连接8.1 非持久连接8.2 持久连接 1.HTTP简介 HTTP&#xff08;Hypertext Transfer Pr…

pandas style添加表格边框,或是只添加下边框等自定义边框样式设置

添加表格边框 可以使用如下程序添加表格&#xff1a; import dataframe_image as dfi import pandas as pd import numpy as npdf pd.DataFrame(np.random.random(size(10, 5))) df_style df.style.set_properties(**{text-align: center,border-color: black,border-width…

cubemx配置stm32f407VET6实现USB虚拟串口

背景&#xff1a; 最近做项目需要使用USB&#xff0c;一根数据线连接“mcu的板子”和“电脑”&#xff1b; 电脑上的串口助手通过USB线和mcu的USB通信&#xff1b; 原理图&#xff1a; 1&#xff09;外围电路2&#xff09;mcu引脚 软件实现&#xff1a; 1.cubemx配置USB_devic…

流程图用什么软件做?选择这4款,让工作事半功倍

流程图用什么软件做&#xff1f;流程图是一种直观、清晰的图形表示法&#xff0c;它通过节点、箭头和符号等元素&#xff0c;精确地展示出一系列步骤、决策点以及操作过程。这种图形化的呈现方式不仅简化了复杂信息的处理&#xff0c;还使得读者能够迅速把握整体流程&#xff0…

Day54代码随想录动态规划part15:392.判断子序列、115.不同的子序列

Day54 动态规划part15编辑距离 392.判断子序列 leetcode链接&#xff1a;392. 判断子序列 - 力扣&#xff08;LeetCode&#xff09; 题意&#xff1a;给定字符串 s 和 t &#xff0c;判断 s 是否为 t 的子序列。字符串的一个子序列是原始字符串删除一些&#xff08;也可以不…

构建第一个ArkTS应用之@LazyForEach:数据懒加载

LazyForEach从提供的数据源中按需迭代数据&#xff0c;并在每次迭代过程中创建相应的组件。当在滚动容器中使用了LazyForEach&#xff0c;框架会根据滚动容器可视区域按需创建组件&#xff0c;当组件滑出可视区域外时&#xff0c;框架会进行组件销毁回收以降低内存占用。 接口…

上海交大携手阿里巴巴成立人工智能与系统联合实验室

5 月 8 日&#xff0c;上海交通大学电子信息与电气工程学院&#xff08;简称电院&#xff09;与阿里巴巴集团宣布共同成立人工智能与系统联合实验室&#xff08;后称“联合实验室”&#xff09;&#xff0c;并在上海交大闵行校区举行了揭牌仪式。 上海交大电院副院长王贺升教授…

Go 语言将 PDF 转为 Word 如何处理

文章推荐 1 作为程序员&#xff0c;开发用过最好用的AI工具有哪些&#xff1f; 2 Github Copilot正版的激活成功&#xff0c;终于可以chat了 3 idea,pycharm等的ai assistant已成功激活 4 新手如何拿捏 Github Copilot AI助手&#xff0c;帮助你提高写代码效率 5 Jetbrains的a…

python实现图片模式转换成素描模式

欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一.前言 二.代码 三.使用 四.分析 一.前言 素描,是一种用线条来描绘物体、场景或人物的绘画方式,它可以是简单的线条勾勒,也可以是复杂的光影渲染。这种艺术形式主要依赖线条和明暗关系来表现形态、空

Redis- 如何防止攻击者利用未授权访问 Redis 服务的攻击获取目标机器的 root 权限

攻击概述 以下攻击步骤展示了如何利用未加防护的 Redis 服务器&#xff0c;通过配置 Redis 的持久化机制&#xff0c;将攻击者的 SSH 公钥写入目标机器的 ~/.ssh/authorized_keys 文件&#xff0c;从而获取目标机器的 root 权限。这是一种典型的利用未授权访问 Redis 服务的攻…

亚信安慧AntDB:赋能业务管理 推动数字化转型

在当今数据驱动的信息时代&#xff0c;数据库正面临着前所未有的挑战与机遇。随着技术的飞速发展和用户需求的不断变化&#xff0c;传统的数据库解决方案已逐渐显得力不从心&#xff0c;难以满足运营商日益复杂的业务需求。而亚信安慧AntDB数据库则以其强大的功能和优越的性能&…

PyTorch进行CIFAR-10图像分类

本节将通过一个实战案例来详细介绍如何使用PyTorch进行深度学习模型的开发。我们将使用CIFAR-10图像数据集来训练一个卷积神经网络。 神经网络训练的一般步骤如图5-3所示。 &#xff08;1&#xff09;加载数据集&#xff0c;并做预处理。 &#xff08;2&#xff09;预处理后的…

sin^2(x) 的图像

[TOC](sin^2(x) 的图像) 正文 这里记录一下 s i n 2 x sin^2{x} sin2x 的图像。 函数值以正弦的形式在 [0, 1] 区间内波动。 如果大家觉得有用&#xff0c;就点个赞让更多的人看到吧~

Ant Design Vue 的组件库的<a-tab-pane>的force-render

在使用类似 Ant Design Vue 的组件库时&#xff0c;force-render 属性通常用于指示是否强制渲染标签页的内容&#xff0c;即使它还没有被显示。通常&#xff0c;在一个标签页组件&#xff08;如 <a-tab-pane>&#xff09;中&#xff0c;内容只有在用户激活该标签页时才会…

嵌入式文件系统

嵌入式文件系统 文件系统简介 在计算机系统中&#xff0c; 需要用到大量的程序和数据&#xff0c; 它们大部分以文件的形式存放在外部存储当中&#xff0c; 根据需要可随时调入内存使用 如果用户直接管理外存文件所面临的问题&#xff1a; 必须熟悉外存的物理特性了解各种存…

英语新概念2-回译法-lesson14

第一次回译 I had a amusing experience. I kept driving to the next town when I left a small village in the south of Franch.A teenager waved to me in the path.I stopped my car, he asked me to give him a lift.As soon as he get my car,I say good morning in Fr…