重发布和路由策略

news/2024/5/20 16:05:07

重发布

         在同一个网络拓扑结构中,如果存在多种不同的路由协议,由于不同路由协议的机理各有不同,对路由的处理也不相同,这就在网络中造成了路由信息的隔离,在路由协议的边界设备上,将某种路由协议的路由信息引入另一种路由协议中,这个操作被称为路由引入(Route lmportation)或者路由重分发(Route Redistribution)。---这个技术的叫法比较多,也就是我们说的重发布。

作用

在一个网络中,若运行多种路由协议或相同路由协议的不同进程;协议之间不能直接沟通计算,进程之间也是独立转发和运算的,所以,需要使用重发布来实现路由的共享

条件

  • 必须存在ASBR设备---同时连接两种协议或两个进程,同时学到两边的路由,之后进行路由共享。

       重发布的操作就是在ASBR设备上,说明,重发布这个技术主要就应用在两个协议或者两个进程之间。都是两两之间完成的。

  • 必须关注种子度量值---起始度量值,A协议和B协议的开销计算逻辑是不一样,无法直接使用。故将A协议发布到B协议是,ASBR将不携带A协议的度量值,而是共享到B协议后,由ASBR设备在路由中添加一个起始度量值

       不同动态路由协议设置的默认种子度量值不同,这点需要重点关注。

规则

  1. 将A协议发布到B协议中,则需要进入到设备的B协议进程中进行配置。

  2. 将A协议发布到B协议中,ASBR将会把所有通过A协议学习到的路由以及ASBR上宣告在A协议中的所有直连路由,全部共享到B协议中。

名词解释点


·单点---两个协议或两个进程之间存在一个ASBR

·双点---两个协议或两个进程之间存在两个ASBR

·多点---两个协议或两个进程之间存在多个ASBR


·单向---仅将A协议路由共享到B协议中

·双向---A/B协议的路由均共享

(因为重发布都是发生在两两之间的,所以,不存在多向)

 单点重发布

将A协议--->B协议
[r2-rip-1]import-route ospf 1将静态---->B协议
[r2-rip-1]import-route static 将直连---->B协议
[r2-rip-1]import-route direct 

注: rip协议的种子度量值为0,OSPF种子度量值为1

修改RIP的种子度量值方法
1、全局修改
[r2-rip-1]default-cost 22、对重发布进行修改
[r2-rip-1]import-route ospf 1 cost 5

注意:当以上两条命令同时执行时,将按照第2条,匹配更精确的命令来执行。

结论

  • 导入静态RIP赋予的种子度量值也是0
  • 在引入路由信息时,不会导入缺省路由信息
  • 通过直连引入路由时,已经宣告在动态路由协议中的某直连路由不会再一次被发布到该网络当中
  • 将某条路由信息以多种方式引入时,以直连引入为基准

双点重发布

问题:如果我们再R2和RA上同时做双向的重发布,会遇到哪些问题呢?

  • 假设,R2上有一个环回2.0网段,在RIP进程中进行了宣告。因为R4也运行了RIP进程,所以,通过RIP进程R4将学习到2.0网段的路由信息。
  • 之后,R2上进行重发布,将R2的RIP的路由重发布到OSPF中,则2.0网段的路由信息也将发布过来。(这个属于宣告在A协议的接口对应的直连网段),因为R4也运行了OSPF,所以,R4将通过QSPE学习到2.0网段的路由信息。
  • R4通过两种协议学习到2.0网段的路由信息,按照优先级,则将学习OSPF的(事实并不会是如此,因为重发布的路由在OSPF中是以5类LSA通告的,其生成的路由默认优先级被定义为150,大于RIP的默认值100)。
  • 一旦学习了,R4的路由表将发生变化,之后将通过R3访问R2的环回。之后,如果R4也进行了重发布,则R4也会将2.0网段的路由信息重发布到RIP之中。(这属于通过A协议学习到的路由信息)。
  • 因为重发布过来会清除原先的度量值,所以在R1上到达2.0网段将形成一个负载均衡同时走R2和R4,这很明显出现了选路不佳。这种现象就是所谓的路由回馈现象。严重的也会引起路由环路的产生。

路由回馈:指的是从某协议传出的路由信息又被传回该协议中。可以引起选路不佳,严重会引发环路问题。

默认RIP和OSPF协议若进行双点重发布,由于两者的优先级不同,故第一台ASBR设备重发布动作结束后,将会影响到其他ASBR设备的路由表。使得路由可能会被回传至源协议当中,发生路由回馈

华为为了解决路由回馈问题:将OSPF的域外路由的优先级定义为150(150高于华为体系下所有IGP协议的优先级),从而解决路由回馈问题。

     当然,就算解决了路由回馈问题,多点的重发布还是存在其必然产生的问题---选路不佳。主要还是因为他清楚了原先的开销值导致的。------而这个问题,想要解决,是无法仅通过重发布技术来解决,而需要使用到路由策略

路由策略

  • 控制层流量 --- 路由协议传递路由信息时产生的流量

  • 数据层流量 --- 设备访问目标地址时产生的流量

   所谓的路由策略----  控制层面转发流量的过程中,截取流量,之后修改流量再转发或不转发的技术,最终达到影响路由器路由表的生成,干涉选路的效果。

(这个概念就和我们之前讲的ACL列表有点像,只不过ACL是针对数据层流量进行访问控制,路由策略主要针对的是控制层流量。)

路由策略的整体动作分为两部分

  • 截取流量

  • 针对截取的流量进行修改

抓流量

我们这里介绍抓取流量的方法主要有两种,一种是通过ACL列表来抓取流量;另一种是通过前缀列表(ip-prefix)来抓取流量。

    ACL列表--->本身设计是为了抓取数据层流量,因为通配符的存在可以灵活的匹配IP地址的数字特征信息,但是通配符并没有办法匹配上路由信息中的掩码数字特征。所以ACL列表并不擅长于抓取控制层流量信息。

例如,抓取一条携带192.168.1.0/24路由信息的数据包:

[r1]acl 2000 [r1-acl-basic-2000]rule permit source 192.168.1.0 0.0.0.0

前缀列表---IP-prefix

一个路由条目由目的网络地址及掩码长度共同组成,一般我们将目的网络地址看做为IP前缀信息。但是实际上IP前缀信息指的是IP地址的网络位。

IP前缀列表可以包含一条或多条语句,每条语句都使用一个十进制的序号进行标识。步长为10

前缀列表的匹配规则:从上而下,逐一匹配,一旦匹配上则将按照规则执行,不再向下匹配。末尾隐含拒绝所有的规则

    IP前缀列表是一个重要的路由策略工具,能够作为路由过滤器被应用于各种场景,例如可以被Route-Policy调用,或者Filter-Policy调用等等,另外,也在BGP路由协议中被直接用于路由过滤

命令演示:
    假设:存在172.16.0.0/16、172.16.0.0/24、172.16.0.0/30、172.16.1.1/32四条路由信息。

[r3]ip ip-prefix aa index 10 permit 172.16.0.0 24

  • 抓取前缀为172.16.0.0,掩码为24的路由信息

[r3]ip ip-prefix bb index 10 permit 172.16.0.0 16 less-equal 24 

  • 匹配的目的网段的前16bit与172.16.0.0的前16bit相同,掩码长度大于等于16,小于等于24

[r3]ip ip-prefix cc index 10 permit 172.16.0.0 16 greater-equal 24

  • 匹配的目的网段的前16bit与172.16.0.0的前16bit相同,掩码长度大于等于24

[r3]ip ip-prefix dd index 10 permit 172.16.0.0 16 greater-equal 24 less-equal 30

[r3]ip ip-prefix gg index 10 permit 172.16.0.0 16 greater-equal 24 less-equal 24

  • 抓取前缀为172.16,掩码为24的所有路由信息

[r3]ip ip-prefix ee index 10 deny 172.16.0.0 30
[r3]ip ip-prefix ee index 10 permit 172.16.0.0 16 less-equal 32

[r3]ip ip-prefix ff index 10 permit 0.0.0.0 0 less-equal 32 ----匹配所有路由信息

[r3]ip ip-prefix qq index 10 permit 0.0.0.0 0  ----匹配缺省路由


[r3]display ip ip-prefix   ----查看前缀列表统计信息

前缀列表读取规则:
  1. 先看前缀长度,从而定下目的前缀

  2. 根据掩码大小进行数据匹配

[r3]ip ip-prefix ww permit 172.16.4.0 22 greater-equal 24 less-equal 24

做策略

      做策略时,会分有出方向入方向两种方向,该方向指的是控制层流量传输的方向,不管哪一种均会影响到后续设备对该路由信息的认知,而对本地认知的修改只有入方向可以作为,出方向并不会影响到本地的认知

过滤策略---filter-policy

路由策略---route-policy

偏移列表---cisco

偏移列表方法只能修改开销值,所以华为将其归属到距离矢量型协议专用的修改方式

	在上图中,当R2和R4执行了双向重发布后,R1去往23.0.0.0/24会有两条路径可选,但是根据实际情况看,R1去往23.0.0.0/24的下一跳为R2最佳。使用偏移列表进行干涉。1、抓流量
[r1]ip ip-prefix huawei permit 23.0.0.0 24
2、通过偏移列表调用前缀列表对路由信息进行修改
[r1-GigabitEthernet0/0/1]rip metricin ip-prefix huawei 5
1、抓流量
[r2]acl 2000	
[r2-acl-basic-2000]rule permit source 23.0.0.0 0.0.0.0
2、做策略
[r2-GigabitEthernet0/0/0]rip metricout 2000 3
  • metricin指的是入方向,而metricout指的是出方向;
  • RIP协议出方向默认开销+1,而入方向默认开销+0;
  • 偏移列表实际上修改的是接口的增加开销数值;


http://www.mrgr.cn/p/30614414

相关文章

Java中的线程

一、创建线程的几种方式? ① 通过继承Thread类并重写run方法 ,实现简单但不可以继承其他类 Thread底层也是实现了Runnable接口,重写的是run而不是start方法 ②实现Runnable接口并重写run方法, 避免了单继承的局限性&#xff…

PVE安装Windows 95报错 while initializing device IOS

安装Win95重启后报错信息如下图,重启一直报错 while initializing device IOS,查了下报错原因说是 CPU频率太高导致,需要安装AMDK6UPD.EXE补丁包 下载地址 https://zhangka.lanzouw.com/igW0S1y8p5pe 打补丁操作流程: 1)将下载的iso文件加载到新光盘中 2)重启到dos环境…

迅饶科技 X2Modbus 网关 AddUser 任意用户添加漏洞复现

0x01 产品简介 X2Modbus是上海迅饶自动化科技有限公司Q开发的一款功能很强大的协议转换网关, 这里的X代表各家不同的通信协议, 2是T0的谐音表示转换, Modbus就是最终支持的标准协议是Modbus协议。用户可以根据现场设备的通信协议进行配置,转成标准的Modbus协议。在PC端仿真…

# IDEA 复制项目 Module 出现 不同模块下的 Product 类报错

IDEA 复制项目 Module 出现 不同模块下的 Product 类报错 我们 用 IDEA 复制项目 Module 出现 不同模块下的 Product 类报错,发现复制的 module 名称没有改变或者 java 文件夹后面还有原项目 source root 字样,maven 父子项目没有标识等问题。 解决方法…

【前端】实现表格简单操作

简言 表格合并基础篇 本篇是在上一章的基础上实现,实现了的功能有添加行、删除行、逆向选区、取消合并功能。 功能实现 添加行 添加行分为在上面添加和在下面追加行。 利用 insertAdjacentElement 方法实现,该方法可以实现从前插入元素和从后插入元…

12 华三的二层链路聚合

12 华三的二层链路聚合 配置思路 1. 配置二层静态聚合组 (1) 进入系统视图。 system-view (2) 创建二层聚合接口,并进入二层聚合接口视图。 interface bridge-aggregation interface-number [ lite ] 创建二层聚合接口后,系统将自动生成…

苍穹外卖Day06笔记

疯玩了一个月,效率好低,今天开始捡起来苍穹外卖~ 1. 为什么不需要单独引入HttpClient的dependency? 因为我们在sky-common的pom.xml中已经引入了aliyun-sdk-oss的依赖,而这个依赖低层就引入了httpclinet的依赖,根据依…

Linux 文件

文章目录 文件操作回顾(C/C)系统调用接口 管理文件认识一切皆文件C/C的文件操作函数与系统调用接口的关系……重定向与缓冲区 -- 认识重定向与缓冲区 -- 理解使用重定向缓冲区实现一个简单的Shell(加上重定向)标准输出和标准错误(在重定向下的意义) 磁盘文件磁盘存储文件操作系…

docker-compose安装es+kibana 8.12.2

小伙伴们,你们好,我是老寇,我又回来辣,几个月不见甚是想念啊!!! 因云平台需要改造,es7升级为es8,所以记录一下,es8需要开启ssl认证,需要配置证书…

第147天:免杀对抗-C2远控篇CC++ShellCode定性分析生成提取Loader加载模式编译执行

https://blog.csdn.net/qq_29948489/article/details/136180966 #C2远控-ShellCode-认知&环境 1.创建工程时关闭SDL检查 2.属性->C/C++->代码生成->运行库->多线程 (/MT)如果是debug则设置成MTD 3.属性->C/C++->代码生成->禁用安全检查GS 4.关闭生成清…

再探URLDNS链(手搓exp)

夜深了,想着还需要沉淀自己的基础能力,于是乎没有继续往CC链里爬,通过研究了一下ysoserial里的URLDNS链,决定自己尝试写一个类似却有些不同的exp,使自己的基础更加牢固一些,故有了今天这篇文章。 ysoserial里的URLDNS链我就不再多说,有兴趣的话自己可以去看下面这篇文章…

zabbix动作执行命令失效不起作用?

1. zabbix在web界面设置完主机组,主机,监控项,触发器,动作之后 监控项监控到了,触发器触发动作,但是执行的指令不起作用 流程 在zabbix-agent端将nginx服务down掉,zabbix会自动监控并执行重启的…

长安车机安装三方APP

前言 长安车机目前为基于安卓自研的系统。 目前 默认这个车机系统,不允许安装三方软件,具体表现为:插入u盘识别不出里边的apk文件。 自带的软件版本都特别低,且不支持升级,只能等待整个车机系统连带升级。 重点是,他们通常好几年不推送升级车机系统! 重点来了:没有攻破…

AcWing 4993 FEB

4993. FEB - AcWing题库 大佬亲笔 将原串分成三段&#xff1a; FFF|E.....B|FFF 先合并中间段&#xff0c;再合并两边的段 #include <iostream> #include <cstring> #include <algorithm> #include <string> #include <queue&g…

Golang——IO操作

1. 输入输出的底层原理 终端其实是一个文件(Linux下一切皆文件)&#xff0c;相关实例如下&#xff1a; os.Stdin&#xff1a;标准输出的文件实例&#xff0c;类型为*Fileos.Stdout&#xff1a;标准输入的文件实例&#xff0c;类型为*Fileos.Stderr&#xff1a;标准错误输出的文…

项目冲刺day2

这个作业属于哪个课程 软工4班这个作业要求在哪里 作业要求1.会议1. 照片2. 昨日已完成: 部分完成登录、注册功能。3.今天计划完成的工作 完成登录、注册功能,部分完成用户中心功能4.工作中遇到的困难 对框架不熟悉,出现很多报错。2.燃尽图3.每人的代码签入记录4.适当的项目…

斯坦福大学的在线密码学课程

密码学是保护计算机系统信息不可或缺的工具。在本课程中&#xff0c;您将了解密码系统的内部工作原理&#xff0c;以及如何在实际应用中正确使用它们。课程首先将详细讨论当强大的对手窃听和篡改流量时&#xff0c;拥有共享密钥的双方如何进行安全通信。我们将研究许多已部署的…

musl-libc 安装与调试

musl-libc 官网:http://musl.libc.org1、下载与安装下载源码并解压编译参数./configure [option]... [VAR=VALUE]... option 说明 --help帮助 --prefix=DIR指定安装目录。默认为/usr/local/musl --host=HOST设置目标程序运行的CPU平台 一般不需要设置,除非你想要交叉编译 默…

....comic科学....食用手册....

1.点击链接后&#xff0c;保存漫画至夸克网盘&#xff0c;若是新用户需要用手机注册. 2.在应用商店下载夸克APP. 3.登录APP下载已保存的漫画. 3.1 进入APP点击 夸克网盘 3.2 点击“转存的内容”后&#xff0c;长按 漫画文件夹&#xff0c;点击下载&#xff0c;下载速度400K左…

C++向函数传递对象

C语言中&#xff0c;对象作为函数的参数和返回值的传递方式有 3 种&#xff1a;值传递、指针传递和引用传递。 1. 对象作为函数参数 把实参对象的值复制给形参对象&#xff0c;这种传递是单向的&#xff0c;只从实参到形参。因此&#xff0c;函数对形参值做的改变不会影响到实…