OSPF Stub区域

原理概述


   OSPF 协议定义了多种区域( Area )类型,其中比较常见的有 Stub 区域Totally Stub 区域。区域的类型决定了在这个区域当中所存在的 LSA 的类型。
   Stub 区域不允许 Type-4 Type-5 LSA 进入,该区域会通过 Type-3 LSA 所表示的缺省路由访问 AS 外部目的地。 Totally Stub 区域不仅不允许 Type-4和 Type-5 LSA 进入,同时不允许 Type-3 LSA 进入,允许表示缺省路由的 Type -3 LSA 进入,并根据缺省路由来访问该区域以外的任何目的地。
   Stub 区域和 Totally Stub 区域的功能就是减少该区域中 LSA 的数量,从而缩小 LSDB的规模进而减少路由表中路由条目的数量,实现降低设备负担、增强网络稳定性、优化网络性能的目的。 
     配置 Stub 和 Totally Stub 区域的时候需要注意以下几点:骨干区域(Area0)不能被配置成为 Stub 区域或者 Totally Stub 区域 Virtual-link 不能通过 Stub 区域或者 Totally Stub 区域Stub 区域或者 Totally Stub 区域中不允许包含有 ASBR 路由器

实验目的

理解 Stub 区域和 Totally Stub 区域的作用与区别

掌握 Stub 区域和 Totally Stub 区域的配置方法

实验内容 

实验拓扑如图所示。本实验模拟了一个企业网络场景,R1,R2,R3为公司总部网络的路由器,R4,R5分别为企业分支机构1和分支机构2的路由器,并且都采用双上行方式与企业总部相连。整个网络都运行OSPF协议,R1 ,R2,R3的链路位于区域0,R4与R1,R4与R2之间的两条链路位于区域1,R5与R1,R5与R2之间的两条链路位于区域1,R5与R1,R5与R2之间的两条链路位于区域2,R3的Loopback接口用来模拟企业外部网络。网络的最终需求是:不同分支机构通过不同的总部路由器访问总部网络及外网,并实现主备备份,即:R4与R1之间为分支机构1的主用链路,R4与R2之间为其备用链路;R5与R2之间为分支机构2的主用链路,R5与R1之间为其备用链路。另外,R4和R5的 LSDB 及路由表的规模应尽量小。 

实验拓扑

1.基本配置

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

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

2.配置OSPF及路由引入

[r1]ospf router-id 1.1.1.1
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]network 10.0.12.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]network 10.0.13.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]area 1
[r1-ospf-1-area-0.0.0.1]network 10.0.14.1 0.0.0.0
[r1-ospf-1-area-0.0.0.1]area 2
[r1-ospf-1-area-0.0.0.2]network 10.0.15.1 0.0.0.0
 

[r2]ospf router-id 2.2.2.2
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]network 10.0.12.2 0.0.0.0
[r2-ospf-1-area-0.0.0.0]network 10.0.23.2 0.0.0.0
[r2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[r2-ospf-1-area-0.0.0.0]area 1
[r2-ospf-1-area-0.0.0.1]network 10.0.24.2 0.0.0.0
[r2-ospf-1-area-0.0.0.1]area 2
[r2-ospf-1-area-0.0.0.2]network 10.0.25.2 0.0.0.0
 

[r3]ospf router-id 3.3.3.3
[r3-ospf-1]area 0
[r3-ospf-1-area-0.0.0.0]network 10.0.13.3 0.0.0.0
[r3-ospf-1-area-0.0.0.0]network 10.0.23.3 0.0.0.0
[r3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0
 

[r4]ospf router-id 4.4.4.4
[r4-ospf-1]area 1
[r4-ospf-1-area-0.0.0.1]network 10.0.14.4 0.0.0.0
[r4-ospf-1-area-0.0.0.1]network 10.0.24.4 0.0.0.0
[r4-ospf-1-area-0.0.0.1]network 4.4.4.4 0.0.0.0

[r5]ospf router-id 5.5.5.5
[r5-ospf-1]area 2
[r5-ospf-1-area-0.0.0.2]network 10.0.25.5 0.0.0.0
[r5-ospf-1-area-0.0.0.2]network 10.0.15.5 0.0.0.0
[r5-ospf-1-area-0.0.0.2]network 5.5.5.5 0.0.0.0

配置完成后,查看R1、R2上的OSPF邻居建立情况。

可以看到,邻居状态都为Full,说明邻居邻接关系都已经成功建立。

查看R4的路由表。

可以看到,现在R4已经获得了其它网段的路由。由于R4采用了双出口设计,所以其中部分路由条目同时有两个下一跳,即通过R1和R2都可以访问,处在负载均衡状态。

在R3上配置路由引入,采用引入直连路由的方式将Loopback 1接口所在网段引入到OSPF进程中,用它来模拟企业外部网络。

[r3]ospf 
[r3-ospf-1]import-route direct

在R4上查看其路由表。

 可以看到,此时R4已经获得了该企业外部网络的路由,并且也是负载均衡方式。OSPF的外部路由在路由表中显示为O_ASE,其优先级的值为150,远远大于普通OSPF内部路由优先级的值10.另外,我们也可以使用display ospf 1 routing 来只查看OSPF路由表的信息。

 

显示信息表明,R4拥有两条去往外部网络20.0.0.0/24的路由,下一跳分别是R2和R1,开销值都为1,类型为OSPF外部路由的默认类型2。注意,使用这种方式查看OSPF路由信息时,无法看到路由的优先级的值

查看R4的LSDB。

可以看到,R4的LSDB中包含了若干条各种类型的LSA,在External LSA(即Type-5 LSA)中,存在一条LinkState ID为20.0.0.0的LSA,通告路由器为R3,同时,在LSDB中还包含了两条去往ASBR R3的路由。

此外,还可以注意到,在lsdb中,除了表示企业外部网络20.0.0.0的那条External LSA之外,还存在着另外3条External LSA,其原因是此前采用了直接引入直连路由的方式来引入外部路由,所以将R3上的所有直连网段的路由全部引入了进来。也就是说,R4可以通过两种方式来获得这3条路由(10.0.13.0/24,10.0.23.0/24,3.3.3.3/32) ,一种是在OSPF内部获得,一种是通过OSPF外部获得。在这种情况下,会首先比较两种不同方式下的路由优先级:OSPF内部路由优先级的值为10,而外部路由优先级的值为150,所以选择的结果是从内部获得该三条路由(注意,优先级的值越大,优先级越低)。

在R4上测试去往外部路由的连通性。

 可以看到,R4与外部网络的通信是正常的。R5得验证过程和R4一样,这里不再赘述。

3.配置Stub区域 

     当前情况下,两个分支机构在访问总部网络和外网时,是可以同时通过总部路由器RI 和R2进行访问的。接下来的需求是,不同分支机构应通过不同的总部路由器访问总部网络及外网,并实现主备备份,即:R4与 RI 之间为分支机构1的主用链路,R4与R2之间为其备用链路;R5与R2之间为分支机构2的主用链路,R5与 RI 之间为其备用链路。
      另外,R4和R5作为企业分支机构的路由器,只需要能够正常与总部网络和外网进行通信即可,没有必要获取及维护外网的明细路由。为此,可以将R4和R5各自所在的区域配置成为 Stub 区域。配置成 Stub 区域后,该区域内的路由器将不会接收区域外部路由,且 ABR 会在该区域中通告一条缺省路由,以供其访问区域外部网络。
       配置 Stub 区域时必须注意,区域内的所有路由器都要配置 stub 命令,否则邻居关系无法正常建立。在配置过程中可以观察到,配置了 stub 命令的路由器与尚未配置 stub 命令的路由器的邻居关系处于 down 的状态。

[r1]ospf 
[r1-ospf-1]area 1
[r1-ospf-1-area-0.0.0.1]stub 
[r1-ospf-1-area-0.0.0.1]area 2
[r1-ospf-1-area-0.0.0.2]stub

[r2]ospf 
[r2-ospf-1]area 1
[r2-ospf-1-area-0.0.0.1]stub 
[r2-ospf-1-area-0.0.0.1]area 2
[r2-ospf-1-area-0.0.0.2]stub

[r4]ospf
[r4-ospf-1]area 1
[r4-ospf-1-area-0.0.0.1]stub

[r5]ospf 
[r5-ospf-1]area 2
[r5-ospf-1-area-0.0.0.2]stub

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

 

      可以看到,现在R4的路由表中的外部路由条目已经消失了,取而代之的是一条缺省路由。同样,在R4的 LSDB 中,已经没有了任何 Type-5 LSA 及 Type-4 LSA 条目,并且多了两条 Type-3 LSA ( Sum-Net LSA )。这两条 Type-3 LSA 的 LinkState ID 为0.0.0.0,说明是表示缺省路由的 LSA ,通告路由器分别为R1(1.1.1.1)和R2(2.2.2.2)。
       在R5上也可以看到与上面相同的结果 。接下来,通过调整 ABR 路由器所通告的缺省路由的开销值来实现主备备份。在R2的区域1中,配置命令 default cost 10,表示将发送到该 Stub 区域的 Type-3 LSA 的缺省路由开销值设为10。同样,在R1的区域2中,配置命令 default cost 10。 

[r2]ospf 
[r2-ospf-1]area 1
[r2-ospf-1-area-0.0.0.1]default-cost 10

[r1]ospf 
[r1-ospf-1]area 2
[r1-ospf-1-area-0.0.0.2]default-cost 10 

配置完成后,查看R4,R5的LSDB。

可以看到,R4和R5的LSDB中相应的Type-3 LSA的开销值已经得到了修改。

再查看R4,R5的路由表。

可以看到,现在R4的路由表中的缺省路由的下一跳R1(10.0.14.1),R5的路由表中的缺省路由的下一跳是R2(10.0.25.2)。

在R4,R5上使用tracert命令验证去外网20.0.0.0的路径。

 

 可以看到,R4和R5都选用了主用链路去访问外网。

4.配置Totally Stub区域

    上面的实验已经基本上实现了该企业的网络需求。然而,在仔细观察了分支路由器R4和R5的 LSDB 后发现, LSDB 中存在着一些 Type-3 LSA ,即维护着一些域间路由信息。随着今后企业的发展,网络的扩容,这些 Type -3 LSA 的数量将大量增加,但本身又没有什么用处,从而成为路由器的不必要的负担。
       解决这个问题的一个有效方法是配置 Totally Stub 区域。 Totally Stub 区域是在 Stub 区域的基础之上进一步拒绝接收除缺省路由之外的域间路由信息,即禁止 Type-3 LSA 进入该区域。配置 Totally Stub 区域时,只需在 stub 命令之后添加 no-summary 选项,且只需在 ABR 上进行配置。
下面进行 Totally Stub 区域的配置。注意,由于分支路由器R4和R5与总部之间是双出口设计,所以每个区域中都存在两台 ABR 。

[r1]ospf 
[r1-ospf-1]area 1
[r1-ospf-1-area-0.0.0.1]stub no-summary
[r1-ospf-1-area-0.0.0.1]area 2
[r1-ospf-1-area-0.0.0.2]stub no-summary
 

[r2]ospf 
[r2-ospf-1]area 1
[r2-ospf-1-area-0.0.0.1]stub no-summary
[r2-ospf-1-area-0.0.0.1]area 2
[r2-ospf-1-area-0.0.0.2]stub no-summary

配置完成后,以R4为例,查看此时R4的LSDB和路由表。

可以看到,R4的 LSDB 中只有两条表示缺省路由的 Type-3 LSA ,没有任何其他 Type-3 LSA ,路由表中也不存在任何域间路由,只有一条缺省路由。
以R4为例,测试企业分支机构路由器与企业总部路由器R1的环回接口所在网段的连通性,以及与外部网络的连通性。

可以看到,通信完全正常。至此,网络需求已经得到全部满足。

 

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

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

相关文章

BFS专题——FloodFill算法:200.岛屿数量

文章目录 题目描述算法原理代码实现CJava 题目描述 题目链接:200.岛屿数量 PS:注意题目中每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。也就是说斜角是不算了, 例如示例二,是三个岛屿。 算法原理 这道题目是 DFS&#xff0…

实战BACnet/IP标准通信网关在楼宇自动化中的应用

智慧楼宇建设实现不同设备间的互联互通是一项巨大挑战,尤其是在那些历史悠久的建筑中,新旧系统并存的情况尤为普遍。某大型商业综合体就面临着这样的困境:老旧的暖通空调系统采用Modbus RTU协议,而新部署的能源管理系统却要求BACn…

502页 | 2024年人工智能指数报告-英文版(免费下载)

【1】关注本公众号,转发当前文章到微信朋友圈 【2】私信发送 【2024年人工智能指数报告】 【3】获取本方案PDF下载链接,直接下载即可。 如需下载本方案PPT原格式,请加入微信扫描以下方案驿站知识星球,获取上万份PPT解决方案&…

学习软考----数据库系统工程师22

关系运算 基本的关系代数运算 拓展的关系运算 除:需要S连接中属性为C和D的两个元组都与R连接一样,且在R连接中对应的另外的元素完全一致 总结

Java17的崛起——newrelic的2024 年 Java 生态系统状

newrelic 2024 年 Java 生态系统状况 原文PDF:点我下载 生产中最常用的 Java 版本 Oracle 每六个月发布一次新的 Java 版本(通常是在 3 月和 9 月),每个版本都包含一些新功能和错误修复。每两年,Oracle 都会推出一…

一篇教程搞定Windows系统中的Docker应用安装

文章目录 1. 引言2. “Docker -> WSL -> Windows”的依赖逻辑3. 安装方法3.1 安装WSL3.2 安装Docker Desktop 4. 是否安装成功?初始化一个容器试试。FAQ 1. 引言 Docker是一个用于创建、管理和编排容器的应用。容器是运行在操作系统上的一个应用,…

【Git】Git学习-15:分支简介和基本操作

学习视频链接:【GeekHour】一小时Git教程_哔哩哔哩_bilibili​编辑https://www.bilibili.com/video/BV1HM411377j/?vd_source95dda35ac10d1ae6785cc7006f365780https://www.bilibili.com/video/BV1HM411377j/?vd_source95dda35ac10d1ae6785cc7006f365780 git bran…

鸿蒙开发接口Ability框架:【@ohos.ability.particleAbility (particleAbility模块)】

particleAbility模块 particleAbility模块提供了Service类型Ability的能力,包括启动、停止指定的particleAbility,获取dataAbilityHelper,连接、断开当前Ability与指定ServiceAbility等。 说明: 本模块首批接口从API version 7开…

深度学习笔记_10YOLOv8系列自定义数据集实验

1、mydaya.yaml 配置方法 # 这里分别指向你训练、验证、测试的文件地址,只需要指向图片的文件夹即可。但是要注意图片和labels名称要对应 # 训练集、测试集、验证机文件路径,可以是分类好的TXT文件,也可以直接是图片文件夹路径 train: # t…

ue引擎游戏开发笔记(35)——为射击添加轨道,并显示落点

1.需求分析: 我们只添加了开枪特效,事实上并没有实际的效果产生例如弹痕,落点等等。所以逐步实现射击的完整化,先从实现落点开始。 2.操作实现: 1.思路:可以这样理解,每次射击的过程是一次由摄…

百度文库最新AI旋转验证码

上个月发现百度文库最新出了一个验证码,是AI生成的。内容每次可能都不一样,所以给识别造成 了很大困难。传统的比对放松完全失效。 一、介绍 这个是最近才出的最新验证码,内容主要以工厂、建筑、山峰、机器人、汽车、盆栽植物等为主。如下图…

【linux】进程概念|task_struct|getpid|getppid

目录 ​编辑 1.进程的概念 进程的基本概念 进程与程序的主要区别 进程的特征 进程的状态 描述进程—PCB task_struct中的内容 查看进程 1.创建一个进程,运行以下代码 通过系统调用获取进程标示符 getpid()以及getppid() 1.进程的概念 进程的基本概念…

洛谷 P3391:文艺平衡树 ← Splay树模板题

【题目来源】https://www.luogu.com.cn/problem/P3391【题目描述】 您需要写一种数据结构(可参考题目标题),来维护一个有序数列。 其中需要提供以下操作:翻转一个区间,例如原有序序列是 5 4 3 2 1,翻转区间…

深度学习常用优化算法笔记介绍,各种梯度下降法详细介绍

优化算法 mini-batch梯度下降法 当一个数据集其数据量非常大的时候,比如上百万上千万的数据集,如果采用普通的梯度下降法,那么运算速度会非常慢,因为如果使用梯度下降法在每一次迭代的时候,都需要将这整个上百万的数…

航空电子FC节点卡, FC交换机,主要采用LC或MPO光纤接口形式

FC节点卡主要采用LC或MPO光纤接口形式,可以作为4/2个独立端口使用,也可以作为2对/1对冗余端口使用,支持1.0625Gbps、2.125Gbps、4.25Gbps、8.5Gbps通信速率。节点卡完全遵循FC-LS,FC-FS,FC-AE-ASM、FC-AE-1553B等FC光纤…

初始Java篇(JavaSE基础语法)(7)抽象类和接口(上)

找往期文章包括但不限于本期文章中不懂的知识点: 个人主页:我要学编程(ಥ_ಥ)-CSDN博客 所属专栏:JavaSE 目录 抽象类 抽象类的概念: 抽象类语法 抽象类特性 抽象类的作用 接口 接口的概念: 语法规则 接口…

精通GDBus:Linux IPC的现代C接口

目录标题 1. GDBus介绍2. GDBus的优点3. 安装GDBus4. 使用GDBus连接到D-Bus总线实现D-Bus服务调用D-Bus方法发送和接收信号 5. 总结 在Linux环境下,不同的程序需要通过某种方式进行通信和协同工作。GDBus是GLib库的一部分,提供了一个基于GObject系统的、…

单片机-点亮第一盏灯

原理图 需求:点亮或是熄灭LED 通过控制 P5.3引脚输出高电平时,LED灯就点亮,输出低电平时LED灯就熄灭 1.项目创建 新建项目 配置开发板信息 当前位STC芯片的开发板,选择STC MCU Database 搜素具体芯片型号,进行配置…

[MySQL数据库] Java的JDBC编程(MySQL数据库基础操作完结)

🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏:🍕 Collection与数据结构 (91平均质量分)https://blog.csdn.net/2301_80050796/category_12621348.html?spm1001.2014.3001.5482 🧀Java …

【北京迅为】《iTOP-3588开发板快速烧写手册》-第8章 TF启动

RK3588是一款低功耗、高性能的处理器,适用于基于arm的PC和Edge计算设备、个人移动互联网设备等数字多媒体应用,RK3588支持8K视频编解码,内置GPU可以完全兼容OpenGLES 1.1、2.0和3.2。RK3588引入了新一代完全基于硬件的最大4800万像素ISP&…