干货文章|特殊区域在OSPF协议中的分析
  

七嘴八舌bar 438621人觉得有帮助

{{ttag.title}}
我们都知道OSPF路由器协议是基于SPF算法计算最优路径,当用于SPF算法的LSDB的越大,那么路由器的计算压力就越大,对于一些性能不佳的OSPF路由器来说,如何尽可能地减小LSDB规模也就成了OSPF设计时要考虑到的问题,为了进一步优化LSDB,减少非骨干区域的链路状态信息,OSPF在非骨干区域定义了四种特殊区域:Stub区域,完全Stub区域,Nssa区域,完全Nssa区域。当对于一些性能不佳的边缘设备,我们可以采用配置特殊区域的方式来减轻设备的计算压力,维护设备的稳定。本文是基于读者对OSPF有一定了解的基础之上,通过实验引入的方式,重点分析OSPF特殊区域的工作原理及特点。

一、实验案例
1.1 实验描述

本次实验的拓扑来源于XX企业的部分边缘网络结构,R1、R2、R3、R5均运行OSPF路由协议,进程号为10,R1和R2设备运行在Area 1区域;R2和R3设备运行在Area 2区域;R2和R5运行在Area 0区域,R5和R6之间运行静态路由协议,R3和R4之间运行静态路由协议,在R5和R3设备上将静态路由分别引入OSPF区域进行路由的重发布,由于R1和R3设备性能较差,为了更好的运行OSPF路由协议,准备将Area 1和Area 2区域配置成特殊区域,用来减轻设备的计算压力,网络拓扑结构如<图1:XX企业部分边缘拓扑>所示。



图1:XX企业部分边缘拓扑

1.2 IP地址信息规划



1.3 网络设备部分配置

R1设备:

ospf 10 router-id 1.1.1.1

area 0.0.0.1

network 10.1.12.0 0.0.0.255

R2设备:

ospf 10 router-id 2.2.2.2

area 0.0.0.0

network 2.2.2.2 0.0.0.0

network 10.1.25.0 0.0.0.255

area 0.0.0.1

network 10.1.12.0 0.0.0.255

area 0.0.0.2

network 10.1.23.0 0.0.0.255

R3设备:

ip route-static 4.4.4.4 255.255.255.255 10.1.34.4

ospf 10 router-id 3.3.3.3

import-route static

area 0.0.0.2

network 3.3.3.3 0.0.0.0

network 10.1.23.0 0.0.0.255

R4设备:

ip route-static 0.0.0.0 0.0.0.0 10.1.34.3

R5设备:

ip route-static 6.6.6.6 255.255.255.255 10.1.56.6

ospf 10 route-id 5.5.5.5

import-route static

area 0.0.0.0

network 5.5.5.5 0.0.0.0

network 10.1.25.5 0.0.0.0

R6设备:

ip route-static 0.0.0.0 0.0.0.0 10.1.56.5

二、特殊区域的分析
2.1 Stub区域

2.1.1 Area1 LSDB分析

我们可以通过display ospf lsdb的命令查看现R1的链路状态数据库,在<图2 : R1设备的LSDB>中,我们可以看到LSDB中有1类、2类、3类、4类、5类LSA,这几类LSA描述了OSPF区域内、区域间、区域外的路由。


  图2:R1设备的LSDB

2.1.2 Stub区域的关键配置

此时我们为了减少R1设备的LSDB信息,减轻R1设备的计算工作量,我们可以将Area 1配置为Stub区域。

R1:ospf 10      

area 0.0.0.1

     Stub

R2:ospf 10

     area 0.0.0.1

     Stub  

2.1.3 Stub区域的关键内容分析

我们可以通过display ospf lsdb的命令查看R1的链路状态数据库,在<图3:R1设备的LSDB>中,我们可以发现Stub区域内已经不存在4类和5类LSA,只存在1类、2类和3类LSA。看到这里我们会思考一个问题,既然Area1内已经没有4类LSA和5类LSA,那么R1是怎么去访问外部AS路由的呢?我们对比图2和图3就可以得出,LSDB中新增一条三类LSA的默认路由,且Adv为2.2.2.2,则R1设备访问外部路由就是通过R2设备下发的默认路由访问外部路由的。


图3:R1设备的LSDB

可以试想,如果我们想在R1上引入外部路由,那么是否可行呢?我们可以在设备R1上引入直连,我们会发现OSPF的LSDB并没有任何变化,说明在Stub区域内是不允许引入外部AS的路由的。

2.1.4 Stub区域总结


2.2 完全Stub区域

2.2.1  完全Stub区域的关键配置

R1: ospf 10

area 0.0.0.1

     stub no-summary

R2: ospf 10

area 0.0.0.1

     stub no-summary

2.2.2 完全Stub区域的关键内容分析

通过Stub区域的分析,我们还希望能够进一步减少LSDB的条目信息,于是我们将整个区域配置成了完全Stub区域,在<图4:R1设备的LSDB>中,我们可以发现完全Stub区域在普通Stub区域的基础上也不允许区域间路由(三类LSA)在本区域内传播。完全stub区域内的路由器对其他区域及自治系统外部的访问需求是通过本区域ABR所产生的三类LSA缺省路由实现的。由此可见,完全Stub区域相对于Stub区域更进一步的简化了LSDB。

图4:R1设备的LSDB

2.2.3 完全Stub区域总结


2.2.4 Stub区域和完全Stub区域存在的问题

根据OSPF路由协议对Stub和完全Stub区域的规定,这两个区域是不能引入外部路由的,这样虽然避免大量外部路由对Stub区域设备资源的消耗,降低了Stub区域路由设备的压力。但是,对于既需要引入外部路由又要避免外部路由带来的资源消耗的场景,Stub和完全 Stub区域就不能满足需求了。所以,需要NSSA区域和完全 NSSA区域。

2.3 Nssa区域

2.3.1 Area2 LSDB分析

我们可以通过display ospf lsdb的命令查看现R3的链路状态数据库,在<图5:R3设备的LSDB>中,我们可以看到LSDB中有1类、2类、3类、4类、5类LSA,这几类LSA描述了OSPF区域内、区域间、区域外的路由。

图5:R3设备的LSDB

2.3.2 Nssa区域关键配置

R1:ospf 10      

area 0.0.0.2

     Nssa

R2:ospf 10

     area 0.0.0.2

     Nssa

2.3.3 Nssa区域的关键内容分析

我们可以通过display ospf lsdb的命令查看现R3的链路状态数据库,在<图6:R3设备的LSDB>中,我们可以发现Nssa区域内和Stub区域一样,已经不存在4类和5类LSA,但是Nssa区域存在1类、2类、3类和7类LSA。为了让NSSA区域内的路由器能够通过骨干区域到达AS外部,NSSA区域的ABR设备R2会自动向该区域注入一条缺省路由,该路由采用7类LSA描述。

其实当R3将外部静态路由4.4.4.4引入NSSA区域时,R3作为ASBR生成7类LSA在Area 2内泛洪;Area 2内的路由器依然会收到R3注入的3类LSA,并计算出到达其他区域的区域间路由。Nssa区域和Stub两者的差别在于,NSSA区域能够将自治域外部路由引入并传播到整个OSPF自治域中,同时又不会学习来自OSPF网络其它区域的外部路由。


图6:R3设备的LSDB

我们可以通过display ospf lsdb的命令查看现R2关于的链路状态数据库,在<图7:R2设备的LSDB>中,我们可以看到在Area 0和Area 1中并不存在七类Nssa LSA,只有在Area2中才存在七类Nssa LSA,并且关于R3设备引入的静态路由4.4.4.4在Nssa以外的区域均以5类LSA进行传递,也就是在R2设备上发生了七类LSA转5类LSA的现象。


图7:R2设备的LSDB

2.3.4 Nssa区域总结


2.4 完全Nssa区域

2.4.1 完全Nssa区域的关键配置

R1:ospf 10      

area 0.0.0.2

     Nssa no-summary

R2:ospf 10

     area 0.0.0.2

     Nssa no-summary

2.4.2 完全Nssa区域的关键内容分析

Totally NSSA区域和NSSA区域类似,只是Totally NSSA区域的ABR会阻挡3类LSA进入该区域,因此R2设备不会将区域间路由注入Area2,我们可以看到在<图8:R3设备的LSDB>中,只会存在一条3类LSA的默认路由。

图8:R3设备的LSDB

2.4.3 完全Nssa区域的总结


三、总结
读到这里,相信大家对OSPF的特殊区域有了一定的了解,实际上OSPF通过对边缘区域的3类、4类、5类和7类LSA的控制来缩减LSDB规模,从而降低路由计算的复杂度,使得OSPF路由器不会产生很大的计算压力。这样既能完成路由计算,又可以加快收敛速度,在边缘结构网络中用处较多。

以上就是今天的文章内容,如有疏漏之处,请读者朋友指正。


————————————————

打赏鼓励作者,期待更多好文!

打赏
41人已打赏

贺智文 发表于 2023-8-31 16:11
  
牛逼啊七哥,,,,,,
新手780102 发表于 2023-8-31 16:23
  
要不断学习,要不断进步
SSSQS 发表于 2023-8-31 16:37
  
要不断学习,要不断进步
司马缸砸了光 发表于 2023-8-31 16:46
  
要不断学习,要不断进步
新手078326 发表于 2023-8-31 16:49
  
要不断学习,要不断进步
平凡的小网工 发表于 2023-8-31 16:51
  
楼主的文章图文并茂,清晰易懂,看完这波操作可以轻松上手了,如遇到问题再向楼主请教~
JM 发表于 2023-8-31 16:55
  
要不断学习,要不断进步
新手899116 发表于 2023-8-31 17:04
  
要不断学习,要不断进步
发表新帖
热门标签
全部标签>
每日一问
技术盲盒
技术笔记
干货满满
技术咨询
功能体验
新版本体验
产品连连看
GIF动图学习
标准化排查
自助服务平台操作指引
运维工具
2023技术争霸赛专题
通用技术
秒懂零信任
技术晨报
信服课堂视频
用户认证
安装部署配置
深信服技术支持平台
安全攻防
SDP百科
设备维护
社区帮助指南
答题自测
每日一记
玩转零信任
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
上网策略
测试报告
日志审计
问题分析处理
流量管理
云计算知识
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

12
185
6

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人