当前位置: 首页 > news >正文

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

到目前为止我们学习了路由与交换基础,路由协议有静态、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 多平台发布

相关文章:

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

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

在线3D展示软件三维展示软件推荐哪家?

博维数孪、动动三维和sketchfab的在线网页3D展示软件工具选择哪一比较好&#xff1f; 选择在线3D展示软件时&#xff0c;需要考虑几个关键因素&#xff0c;包括软件的功能、用户界面、价格、社区支持和兼容性等。以上几款软件工具都有各自的优势&#xff0c;具体取决于需求和偏…...

VS Code中PlatformIO IDE的安装并开发Arduino

VS Code中PlatformIO IDE的安装并开发Arduino VS Code的安装 略 PlatformIO IDE的安装 PlatformIO IDE是是什么 PlatformIO IDE 是一个基于开源的跨平台集成开发环境&#xff08;IDE&#xff09;&#xff0c;专门用于嵌入式系统和物联网&#xff08;IoT&#xff09;开发。…...

Java入门——异常

异常的背景 初识异常 我们曾经的代码中已经接触了一些 "异常" 了. 例如: //除以 0 System.out.println(10 / 0); // 执行结果 Exception in thread "main" java.lang.ArithmeticException: / by zero //数组下标越界 int[] arr {1, 2, 3}; System.out.…...

智慧园区:视频系统建设的核心要素与实践路径

一、背景分析 园区作为城市的基本单元&#xff0c;是最重要的人口和产业聚集区。根据行业市场调研&#xff0c;90%以上城市居民工作与生活在园区进行&#xff0c;80%以上的GDP和90%以上的创新在园区内产生&#xff0c;可以说“城市&#xff0c;除了马路都是园区”。 园区形态…...

基于ChatGLM+Langchain离线搭建本地知识库(免费)

目录 简介 服务部署 实现本地知识库 测试 番外 简介 ChatGLM-6B是清华大学发布的一个开源的中英双语对话机器人。基于 General Language Model (GLM) 架构&#xff0c;具有 62 亿参数。结合模型量化技术&#xff0c;用户可以在消费级的显卡上进行本地部署&#xff08;INT…...

MySQL 进阶使用【函数、索引、视图、存储过程、存储函数、触发器】

前言 做数仓开发离不开 SQL &#xff0c;写了很多 HQL 回头再看 MySQL 才发现&#xff0c;很多东西并不是 HQL 所独创的&#xff0c;而是几乎都来自于关系型数据库通用的 SQL&#xff1b;想到以后需要每天和数仓打交道&#xff0c;那么不管是 MySQL 还是 Oracle &#xff0c;都…...

SCSS详解

SCSS&#xff08;Sassy CSS&#xff09;是Sass 3引入的新语法&#xff0c;完全兼容CSS3&#xff0c;并且继承了Sass的强大功能。与原始的Sass语法不同&#xff0c;SCSS语法使用了和CSS一样的块语法&#xff0c;即使用大括号“{}”将不同的规则分开&#xff0c;使用分号“;”将具…...

Vue 问题集

Q:MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 connection listeners added. Use emitter.setMaxListeners() to increase limit A: 可能由多个问题导致&#xff0c;我的是情况1 1. vue.config.js - devServer 代理设置只能添加10个&#…...

Elasticsearch 8.1官网文档梳理 -综述

积累 Elasticsearch 的常用知识&#xff0c;以及日常维护、学习用到的 API。因为相关内容太多&#xff0c;所以根据模块整理成了不同的文章&#xff0c;并在这里做汇总&#xff0c;整个系列的文章都会持续更新 目录 Elasticsearch 8.1官网文档梳理 - 四、Set up Elasticsearc…...

当自身需要使用的 gcc版本 和Linux 默认版本 存在大版本差异时怎样处理

前言 本文档意在说明 当使用者 gcc 版本 和 Linux系统默认的gcc版本 存在 大版本差异 时&#xff0c;怎样处理&#xff0c;能够兼用多个版本 并且对已有 程序影响最小。 问题描述 linux系统默认的gcc版本&#xff1a;7.5.0我们程序需要使用的gcc版本&#xff1a;8.4.0 安装…...

深度学习之卷积神经网络理论基础

深度学习之卷积神经网络理论基础 卷积层的操作&#xff08;Convolutional layer&#xff09; 在提出卷积层的概念之前首先引入图像识别的特点 图像识别的特点 特征具有局部性&#xff1a;老虎重要特征“王字”仅出现在头部区域特征可能出现在任何位置下采样图像&#xff0c…...

控制台的高度可调有哪些重要意义解析

在现代办公环境中&#xff0c;控制台的高度可调性越来越受到重视。它不仅为员工提供了更加舒适的工作环境&#xff0c;还提高了工作效率和生产力。本文将详细探讨控制台高度可调的重要性&#xff0c;并解析其在实际应用中的优势。 个性化适应需求 对于长时间在控制台前工作的用…...

智能招聘?远在天边,近在眼前

2023年曾被称为“史上最卷毕业季”&#xff0c;当年应届高校毕业生高达1158万人。人力资源社会保障部公布的数据显示&#xff0c;即将到来的2024毕业季&#xff0c;全国普通高校毕业生规模预计将达1179万人&#xff0c;同比增加21万人&#xff0c;就业总量压力依然高企。看来&a…...

文字游侠AI丨简直是写作神器,头条爆文一键生成稳定赚米!附渠道和详细教程(只需四步)!

在数字时代的浪潮中&#xff0c;人们不断寻求网络空间中的商机&#xff0c;期望在互联网的浩瀚海洋里捕捉到稳定的财富。随着人工智能技术的突飞猛进&#xff0c;越来越多的AI工具被融入到各行各业&#xff0c;开辟了新天地&#xff0c;带来了创新的盈利模式。 其中&#xff0c…...

【ES6】简单剖析一下展开运算符 “ ... “

基本用法 let row {id: 1,name: John Doe,age: 30 };let newRow { ...row };console.log(newRow); // 输出: { id: 1, name: John Doe, age: 30 }基本用法就是通过展开运算符&#xff0c;将某个对象中的元素依次展开&#xff0c;然后赋值给新的对象。 但是值得注意的是&…...

java StringUtils类常用方法

StringUtils类是Apache Commons Lang库中提供的一个工具类&#xff0c;用于处理字符串操作。它包含了许多常用的方法&#xff0c;以下是其中一部分常用方法&#xff1a; StringUtils.isEmpty(String str)&#xff1a;判断字符串是否为空&#xff0c;如果字符串为null、空字符串…...

科锐国际(计算机类),汤臣倍健,中建三局,宁德时代,途游游戏,得物,蓝禾,顺丰,康冠科技24春招内推

科锐国际&#xff08;计算机类&#xff09;&#xff0c;汤臣倍健&#xff0c;中建三局&#xff0c;宁德时代&#xff0c;途游游戏&#xff0c;得物&#xff0c;蓝禾&#xff0c;顺丰&#xff0c;康冠科技24春招内推 ①汤臣倍健 【内推岗位】&#xff1a;市场类、营销类、研发类…...

一些常见开发框架相关题目,RESTful是什么,Electron是什么,Express, Koa

RESTful架构 1. 什么是RESTful架构&#xff1f; REST&#xff08;Representational State Transfer&#xff09;是一种软件架构风格&#xff0c;它强调简单、无状态的接口&#xff0c;以资源为核心&#xff0c;使用统一的接口进行资源的访问。RESTful架构通常基于HTTP协议&am…...

C++进阶之路:何为默认构造函数与析构函数(类与对象_中篇)

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…...

初识C语言——第二十一天

猜数字小游戏的实现&#xff1a; 学会了之后可以自己制作彩票抽奖&#xff0c;哈哈&#xff01; 代码实现&#xff1a; #include <stdlib.h> #include <time.h>void menu()//无返回值函数 {printf("**************************\n");printf("****…...

使用make_blobs生成数据并使用KNN机器学习算法进行分类和预测以及可视化

生成数据 使用make_blobs生成数据并使用matplotlib进行可视化 完整代码&#xff1a; from sklearn.datasets import make_blobs # KNN 分类器 from sklearn.neighbors import KNeighborsClassifier # 画图工具 import matplotlib.pyplot as plt # 数据集拆分工具 from sklea…...

WSL2-Ubuntu(深度学习环境搭建)

1.在Windows的WSL2上安装Ubuntu 流程可参考&#xff1a;https://www.bilibili.com/video/BV1mX4y177dJ 注意&#xff1a;中间可能需要使用命令wsl --update更新一下wsl。 2.WSL数据迁移 按照下面流程&#xff1a;开始菜单->设置->应用->安装的应用->搜索“ubun…...

政务服务电子文件归档和电子档案管理系统,帮助组织收、管、存、用一体化

作为数字政府建设的重要抓手&#xff0c;政务服务改革经过多年发展&#xff0c;截至 2022 年底&#xff0c;全国一体化在线政务服务平台实名用户超过10亿人&#xff0c;在政务服务、办件过程中出现了大量需要归档的电子文件&#xff0c;对于电子档案、电子证照的需求愈加强烈。…...

2024.05.15学习记录

1、完成Ts重构Axios项目中更多功能的开发 2、刷题&#xff1a;二叉树&#xff08;代码回忆录&#xff09; 3、复习diff算法源码解读...

[前端] 深度选择器deep使用介绍(笔记)

参考文献 深度选择器 深度选择器deep使用说明 在 Vue 中&#xff0c;为了实现组件内部样式对组件外部元素的穿透覆盖&#xff0c;可以使用 CSS 的 deep 选择器&#xff08;也称为 >>> 或 /deep/&#xff09;或 v-deep 指令。然而&#xff0c;这两个方法在 Vue 3 中…...

simlink 初步了解

1.simlink概要 Simulink是基于MATLAB的框图设计环境&#xff0c;它提供了一个动态系统建模、仿真和分析的集成环境。Simulink是一个模块图环境&#xff0c;用于多域仿真以及基于模型的设计。它支持系统设计、仿真、自动代码生成以及嵌入式系统的连续测试和验证。 Simulink的特…...

【SRC实战】退款导致零元购支付漏洞

挖个洞先 https://mp.weixin.qq.com/s/3k3OCC5mwI5t9ILNt6Q8bw “ 以下漏洞均为实验靶场&#xff0c;如有雷同&#xff0c;纯属巧合 ” 01 — 漏洞证明 1、购买年卡会员 2、订单处查看已支付 3、申请退款 4、会员仍然有效 5、使用另一个账号重复支付退款操作&#…...

一篇文章搞懂退火算法

退火算法,全称为模拟退火算法(Simulated Annealing,SA),是一种通用概率算法,用来在给定一个大的搜寻空间内找寻问题的近似最优解。模拟退火算法灵感来源于固体物理学中的退火过程,这一过程中,物质被加热后再缓慢冷却,原子会在加热过程中获得较大的运动能量,随着温度的…...

浅说文心一言

文心一言&#xff08;ERNIE Bot&#xff09;是一个基于Transformer结构的知识增强大语言模型&#xff0c;它可以根据用户的指令和输入&#xff0c;生成相应的回答或文本。以下是一些常见的指令示例&#xff0c;你可以根据需要进行调整&#xff1a; 问答指令&#xff1a; "…...