OSPF路由聚合

news2025/1/17 23:25:13

原理概述

与RIP不同,OSPF不支持自动路由聚合,仅支持手动路由聚合。OSPF的路由聚合有两种机制:区域间路由聚合外部路由聚合区域间路由聚合必须配置在ABR路由器上,指的是ABR在把与自己直接相连区域(Area)中的Type-1和Type-2 LSA转换成Type-3 LSA时,对生成的Type-3 LSA进行聚合。外部路由聚合必须配置在ASBR路由器上,指的是ASBR对Type-5 LSA进行聚合。

区域间路由聚合是ABR对与自己直接相连区域内的路由进行聚合,从而减少传播至与自己直接相连的其他区域的Type-3 LSA的数量。需要特别强调的是,区域间路由只能聚合由Type-1 LSA 或 Type-2 LSA产生的路由;如果路由是由外部或其他区域传到本区域的(或者说路由是由Type-5 LSA 或 Type-3 LSA生成的),则对于这样的路由ABR是不能够进行聚合的。

外部路由聚合是指在 ASBR 路由器上针对引入 OSPF 网络的外部路由进行的聚合,目的是减少在 OSPF 网络中的 Type-5 LSA 的数量。外部路由聚合必须在外部路由进入 OSPF 网络的 ASBR 上进行:外部路由进入 OSPF 网络后,在 ABR 上是无法对相应的 Type-5 LSA 进行聚合的。
对于 NSSA 区域,当该区域的 ABR 将 Type-7 LSA 转换为 Type-5 LSA 时,该 ABR 也可以充当 ASBR 的角色,并对 Type-5 LSA 进行聚合。需要注意的是,当 NSSA 区域存在多台 ABR 时,必须由 Router-ID 最大的 ABR 进行 Type-7 LSA 到 Type-5 LSA 的转换操作。 NSSA 区域的外部路由聚合有两种方式,一种是在 NSSA 区域的 ASBR 上直接对外部路由进行聚合,另一种是在 NSSA 区域中 Router-ID 最大的、负责将 Type-7 LSA 转成 Type-5 LSA 的 ABR 上进行聚合。 

实验目的

理解 OSPF 区域间路由聚合和外部路由聚合的概念和过程
掌握配置 OSPF 区域间路由聚合和外部路由聚合的方法 

实验内容 

实验拓扑如图所示。本实验模拟了一个企业网络场景,R1、R2、R3为公司总部网络路由器,R4为分支机构路由器,R5为外部非 OSPF 网络的路由器,SW1为公司总部内部的交换机,R1、R2、R3、R4与SW1运行 OSPF 协议。 PC-1、 PC-2、 PC-3分别属于 VLAN 2、 VLAN 3、 VLAN 4;SW1与R1之间的链路属于VLAN 5,且属于区域1。R1与R2、R1与R3之间的链路属于区域0,R2与R4、R3与R4之间的链路属于区域2。区域2是一个 NSSA 区域,R4使用静态路由去往R5的 Loopback 接口所模拟的外部网络。网络管理员需要在实现全网互通的前提下,尽可能地精简 LSDB 和优化路由表。 

实验拓扑

实验编址

1.基本配置

根据上图进行相应的基本配置,并使用ping命令检测R1与R2之间的连通性。

 其余直连网段连通性测试过程在此省略。

2.配置OSPF及路由引入

OSPF协议的配置及NSSA区域的配置过程在此省略。需要说明的是,SW1及每台路由器都使用了自己的Loopback 0接口的IP地址作为Router-ID。

在R4上配置去往外部网络的静态路由,并进行引入。

[r4]ip route-static 20.0.5.1 255.255.255.255 10.0.45.5
[r4]ip route-static 20.0.5.2 255.255.255.255 10.0.45.5
[r4]ip route-static 20.0.5.3 255.255.255.255 10.0.45.5
[r4]ospf 10
[r4-ospf-10]import-route static

 配置完成后,在R1上查看邻居状态。

可以看到,R1与R2、R3、SW1的邻居关系状态都是Full。

查看R1的路由表。

可以看到,R1已经接收到了所有的非直连路由,全网已经实现了互通。

3.配置区域间路由聚合 

在R2上查看LSDB。

可以看到,目前R2为每一台PC所属的网络都单独维护了Type-3 LSA(Sum-Net LSA)。

查看R2的路由表。

可以看到,目前R2的路由表中拥有每一台PC所属网络的路由。为了减少LSDB中Type-3 LSA的数量以及路由表中路由条目的数量,下面将进行区域间路由配置。

在SW1上使用命令abr-summary配置区域间路由聚合。

[sw1-ospf-10-area-0.0.0.1]abr-summary 20.0.0.0 255.255.252.0 

配置完成后,查看R1的LSDB及路由表。 

可以看到,R1在LSDB中为每一台PC所属的网络都单独维护了Type-3 LSA,在路由表中为每一台PC所属的网络都单独维护了路由,这说明所配置的区域间路由聚合并没有产生作用,原因是只有在ABR上才能进行区域间路由聚合,而SW1并非ABR。

删除在SW1上所进行的配置。

[sw1-ospf-10-area-0.0.0.1]undo abr-summary 20.0.0.0 255.255.252.0

在ABR路由器R2的区域0中配置区域间路由聚合。

[r2]ospf 10
[r2-ospf-10]area 0
[r2-ospf-10-area-0.0.0.0]abr-summary 20.0.0.0 255.255.252.0 

配置完成后,查看R4的LSDB及路由表。

 

可以看到,R4在LSDB中为每一台PC所属的网络都单独维护了Type-3 LSA,在路由表中为每一台PC所属的网络都单独维护了路由,这说明在ABR路由器R2上所配置的区域间聚合也没有产生作用,原因是ABR只能对与自己直接相连的区域进行区域间路由聚合。

删除在R2上所进行的配置。

[r2]ospf 10
[r2-ospf-10]area 0
[r2-ospf-10-area-0.0.0.0]undo abr-summary 20.0.0.0 255.255.252.0

在ABR路由器R1的区域1中配置区域间路由聚合。

[r1]ospf 10
[r1-ospf-10]area 1
[r1-ospf-10-area-0.0.0.1]abr-summary 20.0.0.0 255.255.252.0
 

配置完成后,查看R2的LSDB及路由表。

可以看到,现在R2的 LSDB 中没有为每一台 PC 所属的网络单独维护 Type-3 LSA ,维护的是聚合后的 Type-3 LSA ;R2的路由表中去往每一台 PC 所属的网络的明细路由也被聚合后的路由取代了。

4.配置外部路由聚合 

通过前面的步骤,已经实现了区域间路由聚合。然而,以 Type-7 LSA 的形式进入 OSPF 网络的外部路由仍然未被聚合, LSDB 仍然会为每一条外部路由单独维护一条 LSA ,路由表中也会为每一条这样的 LSA 产生明细路由。
在R4上使用命令 asbr-summary 配置外部路由聚合。

[r4]ospf 10
[r4-ospf-10]asbr-summary 20.0.5.0 255.255.255.252

配置完成后,查看R1的LSDB及路由表。

可以看到, R1 的 LSDB 中没有明细 Type-5 LSA ,只有聚合了的 Type-5 LSA 。R1的
路由表中也没有外部网络的明细路由,而只有聚合后的路由。
查看R2的 LSDB 及路由表。

 

可以看到,R2的 LSDB 中没有明细 Type-5 LSA 和 Type-7 LSA ,只有聚合后的 Type-5 LSA 和 Type-7 LSA ,R2的路由表中没有外部网络的明细路由,只有聚合后的路由。 

 5.在 NSSA 区域的 ABR 上配置外部路由聚合

由于区域2是 NSSA 区域,该区域的 ABR 路由器会将 Type -7 LSA 转换为 Type-5 LSA ,并泛洪到区域0。
先删除R4上的路由聚合配置,然后在区域2的 ABR 路由器R2上配置外部路由聚合。 

[r4-ospf-10]undo asbr-summary 20.0.5.0 255.255.255.252
 

[r2-ospf-10] asbr-summary 20.0.5.0 255.255.255.252

配置完成后,查看R1的LSDB。 

可以观察到,R1的LSDB中针对每一条外部明细路由都有一条相应的Type-5 LSA,这说明在ABR路由器R2上进行的外部路由聚合配置并未生效。原来,将Type-7 LSA转换为Type-5 LSA的是Router-ID较大的ABR路由器R3,所以,在R2上进行的外部路由聚合配置不能生效。

查看R1上的路由表。 

可以看到,R1上外部网络的路由全部是明细路由。

现在,保留R2上的外部路由聚合配置,并在R3上配置外部路由聚合。

[r3-ospf-10]asbr-summary 20.0.5.0 255.255.255.252 

配置完成后,查看R1的LSDB及路由表。

可以看到,R1的LSDB中没有明细的Type-5 LSA,只有AdvRouter为R3(10.0.3.3)的聚合后的Type-5 LSA,路由表中没有外部路由的明细路由,只有外部网络的聚合路由,下一跳为R3(10.0.13.3),这说明R3上外部路由聚合配置已经生效。

 关闭R3的GE0/0/1接口,模拟R3发生了故障。

[r3-GigabitEthernet0/0/1]shutdown 

再查看R1的LSDB。

可以看到,R1上聚合后的Type-5 LSA的 AdvRouter变成了R2(10.0.2.2)。

查看R1的路由表。

可以看到,R1去往外部网络的聚合路由的下一跳变成了R2(10.0.12.2)。上面的实验说明,ABR路由器R2上的外部路由聚合配置,是对ABR路由器R3上的外部路由聚合配置的一个冗余备份。 

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

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

相关文章

运营美区TikTok小店常见问题汇总,你中了几个?

大家好,我是IPdodo的小编,专注于分享出海网络解决方案,致力于为TikTok运营人提供解决视频0播放、直播间卡顿、不进人甚至封号等问题的跨境网络专线。目前已经帮助数千位用户成功开启跨境业务。 今天,将针对美区TikTok小店的常见问…

树莓派学习笔记——树莓派的三种GPIO编码方式

1、板载编码(Board pin numbering): 板载编码是树莓派上的一种GPIO引脚编号方式,它指的是按照引脚在树莓派主板上的物理位置来编号。这种方式对于初学者来说可能比较直观,因为它允许你直接根据引脚在板上的位置来编程。 2、BCM编…

CasaOS系统玩客云安装内网穿透工具实现无公网IP远程访问

文章目录 前言1. CasaOS系统介绍2. 内网穿透安装3. 创建远程连接公网地址4. 创建固定公网地址远程访问 前言 2月底,玩客云APP正式停止运营,不再提供上传、云添加功能。3月初,有用户进行了测试,局域网内的各种服务还能继续使用&am…

“手撕”String类+练习题

一、什么是String类 简单讲:是一个类!创建字符串和字符串方法的类。 用 圈起来的叫字符,比如:a,b....里面只能有一个char类型的字符。 用" "圈起来的叫字符串,比如:"abc"..里面可以连…

2024年5月20日优雅草蜻蜓API大数据服务中心v2.0.4更新

v2.0.4更新 v2.0.4更新 2024年5月20日优雅草蜻蜓API大数据服务中心v2.0.4更新-增加ai绘画接口增加淘宝联想词接口底部增加联系方式 更新日志 底部增加联系方式 增加ai绘画接口 增加淘宝联想词接口 增加用户中心充值提示 用户中心内页颜色改版完成 截图 部分具体更新接口信…

Python 渗透测试:Redis 数据库 弱密码测试.(6379端口)

什么是 Redis 数据库 Redis (Remote Dictionary Server) 是一个开源的、内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,如字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等&#xff0…

9、QT—SQLite使用小记

前言 开发平台:Win10 64位 开发环境:Qt Creator 13.0.0 构建环境:Qt 5.15.2 MSVC2019 64位 sqlite版本:sqlite3 文章目录 一、Sqlite是什么二、sqlite使用步骤2.1 下载2.2 安装2.3 使用 三、Qt集成sqlite33.1 关键问题3.2 封装sql…

JAVA开发 基础Jaccard来计算两个字符串之间的重复率

计算两个字符串之间的重复率 Jaccard实现代码基于最长公共子序列来计算两个字符串之间的重复率 Jaccard Jaccard方法,也称为Jaccard相似度或Jaccard相似系数,是一种用于衡量两个集合相似程度的指标。其逻辑基于集合之间的交集与并集的关系来衡量它们的相…

5.23-

回顾 I0多路复用的原理? 程序首先向操作系统发起一个IO多路复用请求,告诉操作系统需要监视哪些IO通道。这些IO通道可以包括网络套接字、文件描述符等操作系统随后会将这些IO通道放入一个队列中,并在某个IO通道就绪时(如数据到达、文件可读…

Aws EC2 + Aws Cli + Terraform

1 什么是 Terraform? Terraform 是由 HashiCorp 创建的“基础架构即代码”(Infrastructure-as-Code,IaC)开源工具。Terraform 的配置语言是 HashiCorp Configuration Language(HCL),用来替代更加冗长的 JSON 和 XML 等…

7---Linux调试器gdb及拓展知识

一、先决知识补充: 1.1为什么测试人员需要测试的版本必须是release版本而不是debug版本? release版本是用户使用到的版本,release版本能够提供更真实的性能表现、完整的代码逻辑、安全性、稳定性以及用户体验。测试release版本可以确保用户…

基于深度学习PET/CT放射学的预后价值:未来在晚期鼻咽癌个体化诱导化疗中的潜在作用 | 文献速递-深度学习结合影像组学

Title 题目 Prognostic Value of Deep Learning PET/CT-BasedRadiomics: Potential Role for Future IndividualInduction Chemotherapy in AdvancedNasopharyngeal Carcinoma 基于深度学习PET/CT放射学的预后价值:未来在晚期鼻咽癌个体化诱导化疗中的潜在作用 0…

Android 逆向学习【2】——APK基本结构

APK安装在安卓机器上的,相当于就是windows的exe文件 APK实际上是个压缩包 只要是压缩的东西 .jar也是压缩包 里面是.class(java编译后的一些东西) APK是Android Package的缩写,即Android安装包。而apk文件其实就是一个压缩包,我们可以将apk文件的后…

【McCabe度量法】方法详解和软考历年真题

🔎嘿,这里是慰慰👩🏻‍🎓,会发各种类型的文章,智能专业,从事前端🐾 🎉如果有帮助的话,就点个赞叭,让我开心一下!&#x1f…

slam14讲(第9,10讲 后端)

slam14讲(第9,10讲 后端) 后端分类基于滤波器的后端线性系统和卡尔曼滤波非线性系统和扩展卡尔曼滤波 BA优化H矩阵的稀疏性和边缘化H矩阵求解的总结 位姿图优化公式推导 基于滑动窗口的后端个人见解旧关键帧的边缘化 后端分类 基于滤波器的后…

Linux-文件或目录权限

在使用 ll 时,可以查看文件夹内容的详细信息,信息的第1位表示类型,具体信息如下: 类型说明-普通文件d文件夹b块设备文件c字符设备文件p管道文件s套接口文件 第2-10位表示权限, 举例:rwxr-xr-x 类型说明r…

Golang | Leetcode Golang题解之第97题交错字符串

题目&#xff1a; 题解&#xff1a; func isInterleave(s1 string, s2 string, s3 string) bool {n, m, t : len(s1), len(s2), len(s3)if (n m) ! t {return false}f : make([]bool, m 1)f[0] truefor i : 0; i < n; i {for j : 0; j < m; j {p : i j - 1if i >…

mysql误删后使用binlog恢复数据

1 预期效果 使用 binlog 恢复数据的预期效果是将误删的数据还原到误删之前的状态&#xff0c;以减少或消除数据丢失的影响。通过正确解析和执行 binlog 中的操作记录&#xff0c;可以重新执行误删操作之后的插入、更新或删除操作&#xff0c;从而恢复被误删的数据。 数据恢复&…

二.Flowable自带Demo(Flowable-UI)体验

问题反馈 如有问题可通过微信公众号“假装正经的程序员”反馈 Flowable-UI是什么 Flowable-UI是flowable自带的一套供开发人员体验的系统&#xff0c;它通过后台的UI建模&#xff0c;让开发人员了解Flowable的工作流程&#xff0c;同时它部署简单&#xff0c;只需要将对应的w…

医学AI最新研究·哈佛医学院·告别切片局限:3D病理如何革新癌症预后

小罗碎碎念 本期文章分享的主要是AI与肿瘤的复发、转移相关的最新研究。 筛选规则如下&#xff1a; (artificial intelligence or deep Learning or convolutional networks or transformer or selfattention or machine learning) and (Tumor metastasis or Recurrence of Ca…