OSPF 协议(多区域)

1. OSPF 单区域存在的问题

① LSDB庞大,占用内存大,SPF计算开销大;

② LSA洪泛范围大,拓扑变化影响范围大;

③ 路由不能被汇总,路由表庞大,查找路由开销大。

2. OSPF 多区域优点

① 每个区域独立存储LSDB,划分区域减小了LSDB;

② LSA洪泛被限制在区域内,有效控制了拓扑变化的影响范围;

③ 区域边界可以做路由汇总,减小了路由表。

3. OSPF 多区域的基本概念

3.1 多区域基本概念------区域分类

OSPF多区域基本结构:

  • 骨干区域:即Area 0,OSPF的Area 0 必须是连续的,不能被分割。
  • 非骨干区域:必须和Area 0直接相连,非骨干区域之间不能直接交换路由信息,必须通过Area 0。
  • 特殊区域:具有某些特殊性质的区域,如Stub、NSSA区域。

3.2 多区域基本概念------LSDB

OSPF多区域链路状态数据库:

  • 每个区域都有自己独立的LSDB,SPF计算独立运行。
  • LSA洪泛和LSDB同步只在区域内进行。

3.3 多区域基本概念------ABR(区域边界路由器)

OSPF对区域间路由信息的描述:

OSPF只知道本区域的拓扑结构,并不知道其他区域的拓扑结构,其他区域的路由信息,依靠本区域的ABR来描述。

ABR先计算区域内的LSA 1、2,并为计算出来的路由向其他区域发起LSA 3,而且为Area 0中的LSA 3向其他区域重新发起LSA 3。

3.4 多区域基本概念------ASBR

OSPF对外部路由信息的描述:

OSPF通过ASBR(自治系统边界路由器)来描述外部路由的可达性。

ASBR为外部路由发起LSA 5,在整个OSPF路由域中洪泛。

4. OSPF多区域LSA类型

LSA 1、2、4含有拓扑信息,LSA 3、5、7含有路由信息。

|---|------------------------|-----------|---------------------------|-----------------------|-----------------------------------------|---------------------------------------------------------------------|
| | 名称 | 发起路由器 | 洪泛范围 | Link State ID | 作用 | 描述 |
| 1 | Router LSA (路由器 LSA) | OSPF路由器 | 单区域内 | 生成这条LSA的路由器的Router ID | 描述路由器的直连拓扑信息(接口 IP、掩码、邻居 Router ID 等 ) | 每个路由器都会生成。这种LSA的描述某区域内路由器端口链路状态的集合,只在所描述的区域内泛洪。 |
| 2 | Network LSA (网络 LSA) | DR | 单区域内 | 所描述网段上DR的端口IP地址 | 描述多路访问网络DR邻接的一组路由器Router ID和当前网段的子网掩码信息 | 由DR生成,用于描述广播型网络和NBMA网络,这种LSA包含了该网络上所连接路由器的列表,只在该网络所属的区域内泛洪。 |
| 3 | Summary LSA (汇总 LSA) | ABR | 跨区域泛洪,但仅限 ABR 连接的 OSPF 区域 | 所描述的目的网段的地址 | 描述区域间的路由信息 | 由区域边界路由器(ABR)产生,描述到AS内部本区域外部某一网段的路由信息,在该LSA所生成的区域内泛洪。 |
| 4 | ASBR LSA | ABR | 除 ASBR 所在区域外的其他 OSPF 区域 | 所描述的ASBR的Router ID | 描述区域间ASBR的可达性 | 由区域边界路由器(ABR)产生,描述到某一自治系统边界路由器(ASBR)的路由信息,在ABR所连接的区域内泛洪(ASBR所在区域除外) |
| 5 | External LSA (外部路由LSA) | ASBR | OSPF自治系统(除特殊区域) | 所描述的目的网段的地址 | 描述OSPF外部路由 | 由自治系统边界路由器(ASBR)产生,描述到AS外部某一网段的路由信息,在整个AS内部泛洪。 |
| 7 | NSSA LSA | NSSA ASBR | 仅在NSSA区域内 | | 描述NSSA区域的OSPF外部路由 | |
[OSPF LSA类型]

5. OSPF LSA的洪泛

ABR (如 R1、R6 )负责区域间 3 类 LSA 转换、传递;ASBR (如 R2 )引入外部路由,触发 5 类 LSA 生成,ABR(R6)触发4类LSA生成,共同支撑 OSPF 域与外部网络的路由互通,让不同区域、不同协议的网段(如 10.1.37.0/24、172.16.6.1/24 )能被全网学习 。

6. OSPF区域间路由传播与计算

10.1.3.0/24的传播与计算过程

步骤一:Area 1 内1类LSA发起(RT3角色)

  • 行为:RT3 作为Area 1内路由器,生成1类LSA ,包含自身直连10.1.3.0/24网段(掩码/24,开销10)及邻接信息,在Area 1内洪泛
  • **作用:**向Area 1内其他设备(如RT1)传递自身直连拓扑,是OSPF区域内拓扑发现基础。

步骤二:ABR(RT1)的路由计算与3类LSA生成

  • **行为:**RT1接收RT3的1类LSA后,执行Area 1内SPF算法,计算出10.1.3.0/24路由(开销110)并加入OSPF路由表;同时,因RT1是Area 1和Area 0的ABR,将10.1.3.0/24封装为3类LSA,向Area 0洪泛,用于跨区域路由传递。
  • **作用:**ABR实现区域间路由转发,3类LSA是OSPF跨区域路由信息载体。


步骤三:Area 0内3类LSA洪泛(RT5、RT6接收)

  • **行为:**RT1发往Area 0的3类LSA(含10.1.3.0/24网段、开销110),在Area 0内洪泛,RT5、RT6接收LSA,获取跨区域路由信息。
  • **作用:**让Area 0内设备知晓Area 1存在10.1.3.0/24网段,扩展路由信息传播范围。

步骤四:ABR(RT6)的跨区域转发(Area 0 ->Area 2)

  • 行为:RT6作为Area 0和Area 2的ABR,接收Area 0内3类LSA后,重新计算开销(变为310),生成新的3类LSA并向Area 2洪泛,同时将路由加入自身OSPF路由表(开销310、下一跳指向Area 0内邻居)。
  • 作用:完成10.1.3.0/24路由从Area 0到Area 2的跨区域传递,ABR负责不同区域间LSA转换与洪泛。

步骤五:Area 2内3类LSA接收(RT2 角色)

  • 行为:RT6发往Area 2的3类LSA(开销310)在Area 2内洪泛,RT2接收该LSA,为后续路由计算、跨协议重发布做准备。
  • 作用:让Area 2内设备(如RT2)学习到10.1.3.0/24路由,实现多区域路由覆盖。

步骤六:RT2的路由计算与加入全局路由表

  • **行为:**RT2接收Area 2内3类LSA后,执行Area 2内SPF算法,计算10.1.3.0/24路由(开销110/410)并加入全局路由表(出接口S2、下一跳10.2.26.2)。
  • **作用:**RT2作为双协议(OSPF、RIP)设备,为路由重发布(OSPF->RIP)提供基础,将OSPF路由整合进自身全局路由管理。

步骤七:OSPF->RIP路由重发布(RT2角色)

  • **行为:**RT2配置路由重发布(redistribute ospf 1 metric 5),将全局路由表中10.1.3.0/24的OSPF路由,注入RIP数据库(RIP路由表),并通过RIP协议向RT4发送更新。
  • **作用:**实现跨协议(OSPF与RIP)路由共享,让RIP网络(RT4所在)学习到OSPF域内10.1.3.0/24网段路由。

7. OSPF外部路由传播与计算

172.16.4.0/24的传播与计算过程

步骤 1:外部路由引入(ASBR 角色激活)

  • **动作:**RT2 通过 RIP 从 RT4 学习到 172.16.4.0/24 路由,配置 redistribute rip subnets metric 1000 metric-type 1,将其重发布到 OSPF 域。
  • **关键结果:**RT2 成为 ASBR(自治系统边界路由器 ),生成 5 类 LSA(携带 172.16.4.0/24 路由、开销 1000、类型 1 等信息 );同时,RT2 的 1 类 LSA 标记 ASBR=1,宣告自身 ASBR 身份。

步骤 2:5 类 LSA 全域洪泛(OSPF 域内传播)

  • **动作:**RT2 发起的 5 类 LSA,在整个 OSPF 域(Area 0/1/2 )洪泛。
  • **关键结果:**RT5、RT6、RT1、RT3 均接收该 LSA,知晓 "外部路由 172.16.4.0/24 存在,由 RT2 提供"。

步骤 3:4 类 LSA 辅助定位(ASBR 路径传递)

  • **动作:**RT6(Area 2 和 Area 0 的 ABR )收到 RT2 的 1 类 LSA(含 ASBR=1 ),在Area 2中洪泛,RT6收到后进行Area 2的SPF计算,计算后生成 4 类 LSA(标识 ASBR 为 RT2 ,LSA ID 为 2.2.2.2 ),洪泛到 Area 0;RT1(Area 0 和 Area 1 的 ABR )收到后,重新生成 4 类 LSA 洪泛到 Area 1 。
  • **关键结果:**非 Area 2 的路由器(如 RT3 )通过 4 类 LSA,知晓 "如何找到 ASBR(RT2 )",为学习外部路由提供路径指引。

步骤 4:区域内外部路由计算(以 RT6 为例,Area 2 )

  • **动作:**RT6 结合自身 1 类 LSA(Area 2 内拓扑 )、RT2 的 1 类 LSA(ASBR 身份 )、5 类 LSA(外部路由信息 ),执行 SPF 算法。
  • **关键结果:**计算 172.16.4.0/24 路由开销(100 + 1000 = 1100 ),加入 OSPF 路由表。

步骤 5:跨区域路由计算(以 RT3 为例,Area 1 )

  • **动作:**RT3 结合 RT1 的 1 类 LSA(Area 1 内拓扑 )、RT1 转发的 4 类 LSA(ASBR 路径 )、5 类 LSA(外部路由信息 ),执行 SPF 算法。
  • **关键结果:**计算 172.16.4.0/24 路由总开销(100 + 300 + 1000 = 1400 ),加入 OSPF 路由表。

8. OSPF外部路由开销类型

  • 开销类型1:开销=LSA携带开销+到始发ASBR的开销
  • 开销类型2:开销=LSA携带开销

总结:

1、类型优先级:E1(类型1)> E2(类型2)(E1叠加内部开销,更贴合实际路径成本)

2、同类型比开销:

  • E1比"外部开销+内部路径开销";
  • E2比"外部开销"

3、ASBR位置影响:内部路径到ASBR越短,总开销可能越低,影响最终选路。

9. OSPF多区域路由计算总结

10. OSPF选路原则

11. OSPF协议的路由聚合/汇总

ABR或ASBR将具有相同前缀的路由信息聚合后发布到其他区域。

①减少LSA3类、LSA5类的数目,减少路由信息;

②减小路由表的规模;

③提高路由器的运算速度。

注意,配置命令有not-advertise时,细化路由和汇总路由都不发布,没有时,只发布汇总路由。

12.OSPF 特殊区域

特殊区域是指人为定义的一些区域,它们在逻辑中一般位于OSPF区域的边缘,只与骨干区域相连。

常见的特殊区域有以下几类:

  • Stub区域 (末梢区域)
  • Totally Stub区域 (完全末梢区域)
  • NSSA区域 (非纯末梢区域)
  • 完全NSSA区域 (完全非纯末梢区域)

(1)Stub区域(末梢区域)

并不是每一台路由器都需要了解所有外部目的地的信息的。不管OSPF区域外部的目的地在哪里,在区域1中的路由都必须发送数据包到达ABR路由器,以便到达那个ASBR路由器。在这种情况下,区域1可以被配置成为一个末梢区域。


Stub区域是一个不允许AS外部LSA通告在其内部进行洪泛的区域。

Stub区域的特性:
①允许学习Type 3 LSA。
②拒绝Type 4、 Type 5 LSA。
③Default LSA作为Summary LSA注入到该区域,用以弥补学不到Type 5 LSA的信息,通过ABR被宣告到 Stub area。
④外部路由的振荡不会波及Stub区。

在末梢区域中有4个限制条件:
 一个末梢区域内部的所有路由器也必须拥有相同的链路状态数据库。
 虚链路不能在一个末梢区域内进行配置,也不能穿过一个末梢区域。
 末梢区域内的路由器不能是ASBR路由器。
 一个末梢区域可以拥有多台ABR路由器,但是因为缺省路由的原因,区域内部路由器不能确定哪一台路由器才是到达ASBR路由器的最优的网关。

(2)Totally Stub区域(完全末梢区域)

 不仅使用缺省路由到达OSPF自主系统外部的目的地址,而且使用缺省路由到达这个区域外部的所有目的地址。
 完全末梢区域的ABR将不仅阻塞AS外部LSA,而且阻塞所有的汇总LSA,但除了通告缺省路由的那一条类型3的LSA。


完全Stub区域中最受限的形式:
拒绝所有的External LSA : 类型5。
 拒绝具体的Summary LSA :类型4和3。
 Default LSA作为Summary LSA注入到该区域,用来代表他所拒绝的路由信息。
 LSDB更小,路由信息更稳定,路由数量更少;
 默认路由+区域内路由;
 区域内不会有其他区域的具体路由。

(3)NSSA区域(非纯末梢区域)

 带有一些末梢网络的R4必须通过区域2的其中R2和图中的OSPF网络相连。
 R4仅支持RIP协议,因此,区域2的R2将同时运行RIP协议和OSPF协议,并利用路由重新分配的方法把末梢网络注入到OSPF域。
 上述的配置使区域2的R2成为一台ASBR路由器,因此,区域2就不能再是一个末梢区域了。



(4)完全NSSA区域(完全非纯末梢区域)

完全非纯末梢区域允许外部路由通告到OSPF自主系统内部,并使用缺省路由****到达这个区域外部的所有目的地址。
完全非纯末梢区域的ABR将不仅阻塞AS外部LSA,而且阻塞所有的汇总LSA,但除了通告缺省路由的那一条类型3LSA
拒绝所有的External LSA :类型5
拒绝具体的Summary LSA:类型43
Default Summary LSA****注入到本区域,用来代表他所拒绝的路由信息。


相关推荐
小马爱打代码3 小时前
Spring Boot 接口安全设计:接口限流、防重放攻击、签名验证
网络·spring boot·安全
giaoho4 小时前
Android网络请求,Retrofit,OKHttp学习
网络
丨千纸鹤丨5 小时前
高可用集群Keepalived
linux·服务器·网络
北极光SD-WAN组网6 小时前
工业互联网时代,如何通过混合SD-WAN提升煤炭行业智能化网络安全
网络·安全·web安全
charlie1145141917 小时前
快速入门Socket编程——封装一套便捷的Socket编程——导论
linux·网络·笔记·面试·网络编程·socket
东风西巷8 小时前
X-plore File Manager v4.34.02 修改版:安卓设备上的全能文件管理器
android·网络·软件需求
liulilittle8 小时前
C++ Proactor 与 Reactor 网络编程模式
开发语言·网络·c++·reactor·proactor
我很好我还能学9 小时前
【计算机网络 篇】TCP基本认识和TCP三次握手相关问题
运维·服务器·网络
苏州向日葵9 小时前
篇五 网络通信硬件之PHY,MAC, RJ45
网络·嵌入式硬件
程序员编程指南9 小时前
Qt 网络编程进阶:WebSocket 通信
c语言·网络·c++·qt·websocket