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.mfbz.cn/a/604175.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

电子商务对应的职业有哪些?10年互联网人透底行业秘密!

电子商务对应的职业有哪些?10年互联网人透底行业秘密! 事实说话,实事求是,不要再把美颜滤镜下的市场,传给新人小伙伴了! 大家好,我是微三云胡佳东,一家软件公司负责人! …

keystone学习小结

1 keystone middleware 1.1 工作流程 middleware在客户端和服务端之间,会拦截客户端请求并判断请求身份是否是正确合法的,若是,则继续将请求发给其他middleware或app 具体看,干了这些事 1将请求里的auth header去除&#xff0c…

景源畅信:想要做抖音电商有哪些适合的发展渠道?

在数字浪潮的推动下,抖音电商如同一股不可阻挡的潮流,正吸引着无数创业者和品牌的目光。如何在这一领域获得成功,选择合适的发展渠道成为关键。接下来,让我们深入探讨这一话题,揭开抖音电商成功之路的秘密。 一、内容创…

C# Web控件与数据感应之 TreeView 类

目录 关于 TreeView 一些区别 准备数据源 范例运行环境 一些实用方法 获取数据进行呈现 ​根据ID设置节点 获取所有结点的索引 小结 关于 TreeView 数据感应也即数据捆绑,是一种动态的,Web控件与数据源之间的交互,本文将继续介绍与…

Idea + maven 搭建 SSH (struts2 +hibernate5 + spring5) 环境

org.apache.struts struts2-core 2.3.35 org.apache.struts struts2-spring-plugin 2.3.35 org.apache.struts struts2-json-plugin 2.3.8 1.4 配置Java EE 坐标依赖 这里可以引入 servlet api,jstl 标签库等一系列工具 javax.servlet javax.servlet-api …

c语言实现贪吃蛇小游戏————附全代码!!!

目录 1.Win32 API 1.1控制台应用程序 1.2控制台的名称,控制台窗口大小 1.3设置控制台光标位置 COORD - 光标坐标 GetStdHandle - 获取句柄 SetConsoleCursorPosition - 设置光标位置 封装一个设置光标的函数 1.4设置控制台光标的属性 CONSOLE_CURSOR_INFO …

【第13章】spring-mvc之validator

文章目录 前言一、准备1. 引入库2. add.jsp3. show.jsp 二、代码部分1.实体类2. 控制器类3. 效果4. 展示 总结 前言 【第20章】spring-validator 虽然前面已经在spring介绍过,但是为了保证代码可用,还是会从头讲到尾,尽量把关键点列出来讲给…

微服务架构中的挑战及应对方式:Outbox 模式

使用 Outbox 模式保持微服务数据一致性 在一个由许多小型服务组成的系统中保持数据一致性是困难的,因为它们分散在各处。以下是一些常见问题以及如何处理它们的方法:当服务发送消息时,同时更新数据库和发送消息是棘手的问题。 在微服务中发出…

【Qt 开发基础体系】Qt信号与槽机制

文章目录 1.Qt 信号与槽机制原理(Signal & Slot)2. QObject 类 connect 的介绍3. 信号与槽机制连接方式4. 信号和槽机制优势及其效率:3. 信号与槽机制应用 1.Qt 信号与槽机制原理(Signal & Slot) &#x1f42…

通过AOP实现项目中业务服务降级功能

最近项目中需要增强系统的可靠性,比如某远程服务宕机或者网络抖动引起服务不可用,需要从本地或者其它地方获取业务数据,保证业务的连续稳定性等等。这里简单记录下业务实现,主要我们项目中调用远程接口失败时,需要从本…

《武林秘籍》——闪侠惠递如何让消费者寄快递更安心!

现如今,网上下单寄快递的便利性让众多人享受到了电商物流飞速发展带来的红利性。今天小编直接介绍一款寄快递特别省钱的利器,就是利用闪侠惠递来寄快递。闪侠惠递寄快递,真正的实现了便宜寄快递发物流的便捷性,开创了低价发快递的…

【汇总】虚拟机网络不通(Xshell无法连接虚拟机)排查方法

搜索关键字关键字关键字:虚拟机虚拟机虚拟机连接失败、虚拟机无法连接、Xshell连接失败、ping baidu.com失败、静态IP设置 Kali、CentOS、远程连接 描述:物理机无法连接虚拟机;虚拟机无法访问百度,虚拟机无法访问baidu.com 虚拟机…

Logstash分析MySQL慢查询日志实践

删除匹配到的行,当前行信息不记录到message中

可视化面板布局适配屏幕-基于 flexible.js + rem 智能大屏适配

可视化面板布局适配屏幕-基于 flexible.js rem 智能大屏适配 VScode 安装cssrem插件引入flexible.js在之后的开发都使用rem为单位,安装cssrem插件就是为了快捷将px转为rem我们的设计稿是1920px,设置最小宽度为1024px,最后,我们可…

JavaScript异步编程——05-回调函数

我们在前面的文章《JavaScript 基础:异步编程/单线程和异步》中讲过,Javascript 是⼀⻔单线程语⾔。早期我们解决异步场景时,⼤部分情况都是通过回调函数来进⾏。 (如果你还不了解单线程和异步的概念,可以先去回顾上一…

SlowFast报错:ValueError: too many values to unpack (expected 4)

SlowFast报错:ValueError: too many values to unpack (expected 4) 报错细节 File "/home/user/yuanjinmin/SlowFast/tools/visualization.py", line 81, in run_visualizationfor inputs, labels, _, meta in tqdm.tqdm(vis_loader): ValueError: too …

流星烛台如何交易?Anzo Capital昂首资本3步盈利收场

各位投资者通过之前的文章可以准确的辨认出什么是流星烛台了,但是各位投资者一旦遇到流星图案知道怎么交易吗?其实一点都不困难,只要掌握住流星图案的交易真棒,Anzo Capital昂首资本3步就可以盈利收场。 首先,投资者需要确定图…

文件下载出现 IOExpcetion: closed

异常原因截图 : 异常代码位置 : 出现的原因是 使用 try-with-resources, downloadFile 方法执行完毕, 文件流被关闭了...导致前面读取文件字节, 异常提示已经关闭... try (Response response OkHttpUtils.getInstance().client.newCall(new Request.Builder().url(fileUrl)…

Yolov8实现loopy视频识别

1、前言 loopy是一个非常可爱的动漫角色(可爱粉色淀粉肠),闲来无事,打算用yolov8训练一个模型对loopy进行识别。 2、准备工作 先在网络上搜寻很多loopy的图片,然后将图片导入Lablel Studio软件进行标注,并…

第1章.STM32单片机入门知识介绍

目录 0. 《STM32单片机自学教程》专栏 1.1 嵌入式系统简介 1.1.1 什么是嵌入式系统 1.1.2 嵌入式系统的特点 1.1.3 嵌入式系统的应用领域 1.2 单片机基本概念 1.3 ARM简介 1.3.1 ARM公司简介 1.3.2 ARM处理器简介 1.4 STM32简介 1.4.1 基于Cortex内核的MCU 1.4.…
最新文章