OSPF路由协议 多区域

一、OSPF多区域划分的必要性

1.OSPF单区域存在问题

2.OSPF划分区域的作用

二、OSPF多区域的基本概念

1.多区域分类

3.多区域链路状态数据库LSDB

4.ABR

区域边界路由器, 它是连接骨干区域与非骨干区域的 "桥梁",确保整个 OSPF 网络的路由可达性。

其核心作用是:

  • 连接 OSPF 的两个或多个区域(至少包含一个骨干区域 Area 0);
  • 在不同区域间传递路由信息(将一个区域的链路状态信息汇总后转发到其他区域);
  • 维护每个相连区域的链路状态数据库(LSDB),是区域间通信的 "桥梁"。

4.1 LSA 1 的生成和传递

  • LSA 1 的生成:在 Area 1 中,RT5 生成 LSA 1,描述了其所在网段 N 的链路状态信息,包括接口 IP 地址、链路开销等。
  • LSA 1 到 LSA 3 的转换 :RT3 作为 Area 1 和 Area 0 的 ABR,会收集 Area 1 内的 LSA 1 和 LSA 2,通过 SPF 算法计算出 Area 1 内的路由信息,然后将这些路由信息 "打包" 成 LSA 3形式,并发送到 Area 0。例如,RT3 将 RT5 所在网段 N 的路由信息生成 LSA 3 并传递到 Area 0。
  • LSA 3 在骨干区域的传播 :在 Area 0 中,LSA 3 会被其他路由器(如 RT1、RT2、RT4 等)接收和处理,这些路由器会根据 LSA 3 中的信息更新自己的路由表,从而知道如何到达 Area 1 中的网段 N。
  • LSA 3 从骨干区域到其他非骨干区域的重新发起 :RT4 作为 Area 0 和 Area 2 的 ABR,会将来自 Area 0 的 LSA 3(包括描述 Area 1 网段 N 的 LSA 3)重新发送到 Area 2。这样,Area 2 中的路由器(如 RT7、RT8)就能够通过 RT4 发送的 LSA 3 了解到 Area 1 中的网段 N 的路由信息,从而实现跨区域的路由通信。

5.ASBR

5.1 LAS 5 的生成与传播

  • ASBR 生成 LSA 5:ASBR 将从外部网络获取的路由信息转换为 OSPF 的 LSA 5(自治系统外部链路通告)。LSA 5 包含了外部路由的目标网络地址、子网掩码、路由度量值等信息。
  • LSA 5 在 OSPF 自治系统内的传播
    • 在 ASBR 所在区域内的传播 :ASBR 生成的 LSA 5 首先在其所在的区域内传播。例如,RT8 在 Area 1 中生成 LSA 5,描述外部路由信息,Area 1 内的其他路由器(如 RT5、RT6 等)会接收并处理这些 LSA 5,更新自己的路由表。
    • 通过 ABR 传播到其他区域 :ABR(区域边界路由器,如 RT3、RT4 等)会将 ASBR 生成的 LSA 5 从一个区域传播到其他区域。 例如,RT3 作为 Area 0 和 Area 1 的 ABR,会将 RT8 在 Area 1 中生成的 LSA 5 传播到 Area 0,使 Area 0 内的路由器(如 RT1、RT2、RT3 等)也能了解到外部路由信息。
    • 在整个 OSPF 自治系统内的传播:LSA 5 会在整个 OSPF 自治系统内传播(除了末梢区域和完全末梢区域),确保所有的 OSPF 路由器都能了解到外部路由的可达性信息。
  1. LSA 5自治系统外部链路通告
  • 生成者:ASBR。

  • 传播范围:在整个 OSPF 自治系统内传播(除了末梢区域和完全末梢区域)。

  • 携带信息

    • 外部目的网络的 IP 地址和子网掩码。

    • 外部路由的度量值(如开销)。

    • 外部路由的类型(1 型或 2 型),用于计算外部路由的优先级。

  • 作用 :用于通告自治系统外部的路由信息,使**自治系统内的路由器能够了解到如何到达外部网络,**实现 OSPF 自治系统与外部网络的通信。

6.ABR 与ASBR的差别

对比项 ABR(区域边界路由器) ASBR(自治系统边界路由器)
功能职责 负责不同 OSPF 区域间的路由信息交互,连接骨干区域与非骨干区域,汇总并转发区域间路由 **连接 OSPF 自治系统与外部自治系统,**实现 OSPF 与其他路由协议网络间的路由交互
连接对象 连接 OSPF 内部的不同区域,至少有一个接口在骨干区域 Area 0,至少一个接口在非骨干区域 连接 OSPF 自治系统和外部自治系统,外部自治系统可运行不同路由协议
处理 LSA 类型 处理区域内 LSA(如Type 1、Type 2 )及区域间汇总 LSA(如 Type 3 产生 Type 5 AS - External - LSA(通告外部路由到 OSPF),NSSA 中产生 Type 7 NSSA - External - LSA

三、OSPF的LSA分类

3.1 Router LSA

LSA 1 路由器链路通告

  • 生成者 :每台运行 OSPF 协议的路由器都会生成。
  • 传播范围:仅在所属区域内传播。
  • 携带信息
    • 路由器各个接口的 IP 地址、子网掩码、接口类型、链路开销等。
    • 路由器与邻居路由器的连接关系,包括邻居的路由器 ID(Router ID)。
  • 作用 :帮助区域内的其他路由器了解该路由器的链路状态和连接情况,用于构建区域内的路由器连接拓扑,为 SPF(最短路径优先)算法计算最短路径提供基础信息。

实验中查看:

3.2 Network LSA

LSA 2 网络链路通告

  • 生成者 :由多路访问网络(如以太网)中的 **DR(指定路由器)**生成。
  • 传播范围:在所属区域内传播。
  • 携带信息
    • 描述多路访问网络的 IP 网络地址、子网掩码。
    • 列出连接到该网络的所有路由器的路由器 ID。
  • 作用 :让区域内的路由器知晓多路访问网络的拓扑信息,以及连接到该网络的路由器情况,辅助计算到该网络的最短路径。知道网络里有啥设备,以及该怎么去访问网络中的目标。

实验中查看:

3.3 Summary LAS

LSA 3汇总链路通告

  • 生成者 :ABR(区域边界路由器)。
  • 传播范围 :从一个区域传播到其他区域(跨区域传播)。
  • 携带信息
    • 目的网络的 IP 地址和子网掩码。
    • 通告该 LSA 的 ABR 的路由器 ID。
    • 路由的开销值。
  • 作用 :ABR 将一个区域内的路由信息汇总后,以 LSA 3 的形式发送到其他区域,使得其他区域的路由器能够了解到外部区域的网络可达性信息,实现区域间的路由传递。

实验中查看:

3.4 ASBR LSA

LSA 4 ASBR 汇总链路通告

  • 生成者:ABR。
  • 传播范围:从一个区域传播到其他区域(除了 ASBR 所在区域)。
  • 携带信息
    • ASBR(自治系统边界路由器)的路由器 ID。
    • 到达 ASBR 的开销值。
  • 作用 :当一个区域内的路由器需要知道如何到达 ASBR 时,ABR 通过发送 LSA 4 来告知其他区域如何到达 ASBR,因为 LSA 1 和 LSA 2 只能在区域内传播,无法直接让其他区域了解 ASBR 的位置,LSA 4 起到了补充说明的作用。

实验中查看:

3.5 AS-external-LSA

LSA 5 自治系统外部链路通告

  • 生成者:ASBR。
  • 传播范围:在整个 OSPF 自治系统内传播(除了末梢区域和完全末梢区域)。
  • 携带信息
    • 外部目的网络的 IP 地址和子网掩码。
    • 外部路由的度量值(如开销)。
    • 外部路由的类型(1 型或 2 型),用于计算外部路由的优先级。
  • 作用 :用于通告自治系统外部的路由信息,使自治系统内的路由器能够了解到如何到达外部网络,实现 OSPF 自治系统与外部网络的通信。

实验中查看:

3.6 NSSA LSA

LSA 7 NSSA 外部链路通告

  • 生成者:ASBR(位于 NSSA 区域内)。
  • 传播范围:仅在 NSSA(非纯末梢区域)内传播。
  • 携带信息:与 LSA 5 类似,包含外部目的网络的 IP 地址、子网掩码、路由度量值等信息。
  • 作用 :在 NSSA 区域内通告外部路由信息,因为 NSSA 区域不允许 LSA 5 进入,所以使用 LSA 7 来实现区域内对外部路由的通告,然后由 NSSA 区域的 ABR 将 LSA 7 转换为 LSA 5 传播到其他区域。

3.7. LSA 8 外部属性链路通告

  • 生成者:在 BGP/MPLS VPN 环境中使用,由 PE(Provider Edge)路由器生成。
  • 传播范围:在 MPLS 骨干网络中传播。
  • 携带信息:包含与外部路由相关的属性信息,如 VPN 标签等。
  • 作用:用于在 MPLS VPN 环境中通告外部路由的属性,帮助实现 VPN 路由的分发和管理。

3.8. LSA 9、10、11

  • 生成者:根据具体应用,由相关路由器生成。
  • 传播范围:分为区域内传播(LSA 9)、自治系统内传播(LSA 10)和链路本地传播(LSA 11)。
  • 携带信息:可以携带自定义的信息,用于扩展 OSPF 功能,比如在 TE(流量工程)中用于传递拓扑和流量相关的信息。
  • 作用:为 OSPF 协议提供了扩展机制,以满足不同的网络应用和需求。

四、OSPF的LSA传播过程

1.LSA报文头格式

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

五、OSPF的特殊区域

1.概念

2.特殊区域--STUDB区域

2.1Stub 区域的定义与作用

定义 :Stub 区域是 OSPF 中的一种特殊区域,它不允许自治系统外部的 LSA(链路状态通告)在其内部进行泛洪传播。

作用:在网络中,并非每一台路由器都需要了解所有外部目的地的信息。以第一张图为例,Area 1 中的路由器若要访问外部网络(如 RIPv2 网络 172.16.6.1/24),数据包都必须先发送到 ABR(区域边界路由器,如 R1 ),再由 ABR 转发到 ASBR(自治系统边界路由器,如 R2 )。在这种情况下,将 Area 1 配置为 Stub 区域,可以减少该区域内路由器的路由表规模,降低路由器的处理负担,同时节省网络带宽。

2.2 Stub 区域的特性

允许学习 Type 3 LSA:Type 3 LSA 是网络汇总 LSA,用于在区域间传递路由信息。Stub 区域内的路由器可以通过 ABR 学习到其他区域的路由信息(以 Type 3 LSA 形式),从而实现区域间的通信。

拒绝 Type 4、Type 5 LSA:Type 4 LSA 是 ASBR 汇总 LSA,用于描述如何到达 ASBR;Type 5 LSA 是外部 LSA,用于描述自治系统外部的路由信息。Stub 区域拒绝这两种 LSA,防止外部路由信息在区域内大量泛洪,简化了区域内的路由信息。

Default LSA 作为 Summary LSA 注入:由于 Stub 区域拒绝 Type 5 LSA,为了保证区域内路由器能够访问外部网络,ABR 会生成一条默认路由(0.0.0.0/0)的 Type 3 LSA 并注入到 Stub 区域中。这样,区域内的路由器在没有明确匹配的路由时,会将数据包发送到 ABR,由 ABR 转发到外部网络。

外部路由振荡不波及 Stub 区:外部路由(如 RIPv2 网络的路由)可能会因为网络拓扑变化等原因而频繁波动。由于 Stub 区域拒绝 Type 5 LSA,外部路由的波动不会影响到 Stub 区域内的路由表,保证了 Stub 区域内路由的稳定性。

2.3 Stub 区域路由器的路由表条目

Stub 区域内路由器的路由表主要包含以下三类路由:

  • 默认路由:由 ABR 注入的默认路由(0.0.0.0/0),用于访问外部网络。
  • 区域间路由:通过 Type 3 LSA 学习到的其他区域的路由信息。
  • 区域内路由:本区域内的路由信息,通过 Type 1 和 Type 2 LSA 学习得到。

2.4 Stub 区域的限制条件

  • 链路状态数据库一致 :一个 Stub 区域内部的所有路由器必须拥有相同的链路状态数据库。这是因为 Stub 区域的路由计算依赖于一致的链路状态信息,若数据库不一致,可能导致路由计算错误。
  • 虚链路限制 :虚链路不能在 Stub 区域内进行配置,也不能穿过 Stub 区域。虚链路用于连接两个不直接相连的区域,而 Stub 区域的特性可能会影响虚链路的正常工作。
  • 无 ASBR :Stub 区域内的路由器不能是 ASBR。ASBR 负责将外部路由引入 OSPF 自治系统,而 Stub 区域的设计目的是隔离外部路由信息,因此不允许区域内存在 ASBR。
  • ABR 多台时的网关选择问题 :一个 Stub 区域可以拥有多台 ABR 路由器,但由于默认路由的存在,区域内部路由器无法确定哪一台 ABR 是到达 ASBR 的最优网关。在这种情况下,可能需要通过配置策略路由等方式来优化数据包的转发路径。

3.特殊区域------完全STUB区域

3.1完全 Stub 区域的定义与作用

  • 定义 :完全 Stub 区域是 Stub 区域的一种更严格的形式 ,它不仅阻止自治系统外部的 LSA(链路状态通告)在其内部泛洪,还阻止所有区域间的汇总 LSA(除了默认路由的 Type 3 LSA)。
  • 作用:完全 Stub 区域进一步简化了区域内的路由信息,减少了路由器的路由表规模和处理负担。以第一张图为例,Area 1 被配置为完全 Stub 区域后,该区域内的路由器不仅使用默认路由到达 OSPF 自治系统外部的目的地,还使用默认路由到达该区域外部的所有目的地(包括其他 OSPF 区域的目的地)。

3.2完全 Stub 区域的特性

  • 拒绝所有 External LSA(Type 5):External LSA 用于描述自治系统外部的路由信息,完全 Stub 区域拒绝此类 LSA,防止外部路由信息进入区域内。
  • 拒绝具体的 Summary LSA(Type 3 和 Type 4):Summary LSA 用于在区域间传递路由信息,其中 Type 3 LSA 是网络汇总 LSA,Type 4 LSA 是 ASBR 汇总 LSA。完全 Stub 区域拒绝这些具体的汇总 LSA,只允许默认路由的 Type 3 LSA 进入。
  • Default LSA 作为 Summary LSA 注入:ABR(区域边界路由器)会生成一条默认路由(0.0.0.0/0)的 Type 3 LSA 并注入到完全 Stub 区域中,用于代表所有被拒绝的路由信息。这样,区域内的路由器在没有明确匹配的路由时,会将数据包发送到 ABR,由 ABR 转发到目的地。
  • LSDB 更小,路由信息更稳定:由于拒绝了大量的 LSA,完全 Stub 区域内的链路状态数据库(LSDB)更小,路由信息更加稳定,路由数量也更少。
  • 路由表条目简化:完全 Stub 区域内路由器的路由表主要包含默认路由和区域内路由,没有其他区域的具体路由信息。

3.3完全 Stub 区域与 Stub 区域的区别

  • Stub 区域 :允许 Type 3 LSA(区域间汇总路由)进入,拒绝 Type 4 和 Type 5 LSA。区域内路由器的路由表包含默认路由、区域间路由和区域内路由。
  • 完全 Stub 区域 :**只允许默认路由的 Type 3 LSA 进入,拒绝所有其他的 Type 3、Type 4 和 Type 5 LSA。**区域内路由器的路由表仅包含默认路由和区域内路由。

4.特殊区域--NSSA区域

4.1 NSSA 区域的定义与背景

  • 定义 :**NSSA 区域是一种特殊的 OSPF 区域,**它允许将外部路由(来自其他路由协议的路由)引入到 OSPF 自治系统中,同时保留了末梢区域的部分特性。
  • 背景:在某些网络环境中,可能存在一些只支持特定路由协议(如 RIPv2)的设备(如第一张图中的 R4),这些设备需要与 OSPF 网络进行通信。如果将包含这些设备的区域配置为普通的末梢区域(Stub Area),则无法引入外部路由;如果配置为非末梢区域,则会导致大量的外部 LSA 在区域内泛洪,增加路由器的负担。NSSA 区域正是为了解决这一问题而设计的。

4.2 NSSA 区域的特性

  • 允许外部路由通告到 OSPF 自治系统内部:NSSA 区域内的 ASBR(自治系统边界路由器)可以将外部路由(如 RIPv2 路由)引入到 OSPF 自治系统中,同时保留了末梢区域的部分特性(如拒绝 Type 5 LSA 在区域内泛洪)。
  • 始发 Type 7 LSA:为了实现外部路由的引入,NSSA 区域内的 ASBR 会生成 Type 7 LSA(NSSA 外部 LSA),用于描述外部路由的信息。
  • Type 7 LSA 的泛洪与转换:Type 7 LSA 只在 NSSA 区域内进行泛洪,当它们到达 ABR(区域边界路由器)时,ABR 会将 Type 7 LSA 转换为 Type 5 LSA,并将其泛洪到 OSPF 自治系统的其他区域(如骨干区域)。

4.3 NSSA 外部 LSA(Type 7 LSA)

  • 始发于 ASBR 路由器:Type 7 LSA 由 NSSA 区域内的 ASBR 生成,用于通告到达 OSPF 自治系统外部的目的地或者 OSPF 自治系统外部的默认路由。
  • 只在 NSSA 区域内泛洪:Type 7 LSA 的泛洪范围仅限于始发该 LSA 的 NSSA 区域,不会扩散到其他 OSPF 区域,从而减少了对整个 OSPF 自治系统的影响。

4.4 NSSA 区域与其他区域的区别

  • 与 Stub 区域的区别:Stub 区域拒绝所有外部 LSA(Type 5),而 NSSA 区域允许通过 Type 7 LSA 引入外部路由。
  • 与非 Stub 区域的区别:非 Stub 区域允许 Type 5 LSA 在区域内泛洪,而 NSSA 区域拒绝 Type 5 LSA,只允许 Type 7 LSA 在区域内泛洪,并在 ABR 处转换为 Type 5 LSA。

5. 特殊区域--完全NSSA区域

5.1完全 NSSA 区域的定义与作用

  • 定义:完全 NSSA 区域是 NSSA 区域的一种更严格的形式,它不仅允许将外部路由引入到 OSPF 自治系统中,还阻止所有区域间的汇总 LSA(除了默认路由的 Type 3 LSA)。
  • 作用:完全 NSSA 区域进一步简化了区域内的路由信息,减少了路由器的路由表规模和处理负担。以图中为例,Area 2 被配置为完全 NSSA 区域后,该区域内的路由器不仅可以通过 Type 7 LSA 学习到外部路由(如 RIPv2 网络 172.16.6.1/24 的路由),还使用默认路由到达该区域外部的所有目的地(包括其他 OSPF 区域的目的地)。

5.2完全 NSSA 区域的特性

  • 允许外部路由通告到 OSPF 自治系统内部:完全 NSSA 区域内的 ASBR(自治系统边界路由器,如 R2)可以将外部路由(如 RIPv2 路由)引入到 OSPF 自治系统中,同时保留了末梢区域的部分特性(如拒绝 Type 5 LSA 在区域内泛洪)。
  • 拒绝所有 External LSA(Type 5):External LSA 用于描述自治系统外部的路由信息,完全 NSSA 区域拒绝此类 LSA,防止外部路由信息进入区域内。
  • 拒绝具体的 Summary LSA(Type 3 和 Type 4):Summary LSA 用于在区域间传递路由信息,其中 Type 3 LSA 是网络汇总 LSA,Type 4 LSA 是 ASBR 汇总 LSA。完全 NSSA 区域拒绝这些具体的汇总 LSA,只允许默认路由的 Type 3 LSA 进入。
  • Default Summary LSA 注入:ABR(区域边界路由器,如 R6)会生成一条默认路由(0.0.0.0/0)的 Type 3 LSA 并注入到完全 NSSA 区域中,用于代表所有被拒绝的路由信息。这样,区域内的路由器在没有明确匹配的路由时,会将数据包发送到 ABR,由 ABR 转发到目的地。

5.3完全 NSSA 区域与其他区域的区别

  • 与 NSSA 区域的区别:NSSA 区域允许 Type 3 LSA(区域间汇总路由)进入,而完全 NSSA 区域只允许默认路由的 Type 3 LSA 进入,拒绝所有其他的 Type 3、Type 4 和 Type 5 LSA。
  • 与完全 Stub 区域的区别:完全 Stub 区域拒绝所有外部 LSA(Type 5)和具体的 Summary LSA(Type 3 和 Type 4),但允许 Type 7 LSA 在区域内泛洪;而完全 NSSA 区域允许 Type 7 LSA 在区域内泛洪,并在 ABR 处转换为 Type 5 LSA。

缺省路由(默认路由)发布总结表

区域类型 配置命令 生成的 LSA 类型 发布者 发布范围
标准区域 default-information originate LSA 5(OE1/OE2) ASBR OSPF 自治系统内
Stub 区域 area x stub LSA 3(OIA) ABR 区域内
完全 Stub 区域 area x stub no-summary LSA 3(OIA) ABR 区域内
NSSA 区域 area x nssa default-information LSA 7(ON1/ON2) ASBR 区域内
完全 NSSA 区域 area x nssa no-summary LSA 3(OIA) ABR 区域内

特殊区域 LSA 允许情况对比表

区域类型 LSA 1&2 LSA 3 LSA 4&5 LSA 7
骨干区域(区域 0) 允许 允许 允许 不允许
普通区域 允许 允许 允许 不允许
末梢区域 允许 允许 不允许 不允许
完全末梢区域 允许 不允许 不允许 不允许
NSSA 区域 允许 允许 不允许 允许
完全 NSSA 区域 允许 不允许 不允许 允许
相关推荐
fatiaozhang95276 小时前
中国移动浪潮云电脑CD1000-系统全分区备份包-可瑞芯微工具刷机-可救砖
android·网络·电脑·电视盒子·刷机固件·机顶盒刷机
jyhappy1237 小时前
USB系统学习笔记 - 从概念到抓包解析
网络
青草地溪水旁7 小时前
互联网接入网中PPPoE和PPP协议
网络·ppp·接入网
wanhengidc8 小时前
什么是云手机?
运维·网络·安全·游戏·智能手机
机器人梦想家9 小时前
pymodbus启动一个简单的modbus tcp server
网络·网络协议·tcp/ip
一刀到底2119 小时前
springboot3.3.5 集成elasticsearch8.12.2 ssl 通过 SSL bundle name 来实现
网络·elasticsearch·ssl·springboot3
m0_661316239 小时前
modbus_tcp和modbus_rtu对比&移植AT-socket,modbus_tcp&杂记
服务器·网络·tcp/ip
eqwaak010 小时前
Matplotlib 动态显示详解:技术深度与创新思考
网络·python·网络协议·tcp/ip·语言模型·matplotlib
不是三毛没有半10 小时前
华为USG6000v2 NAT模式下IPSEC IKE V1 实验
网络·网络安全·华为
Techer_Y10 小时前
云安全服务(参考自腾讯云工程师认证课程)
网络·云计算·腾讯云