OSPF 的 Area 类型:
OSPF 基于两层的区域层次结构,其中包含骨干区域和非骨干区域。每个区域都有自己的拓扑数据库,该数据库在区域外面不可见。属于多个区域的路由器(ABR)有多个拓扑数据库 —— 它连接的每个区域一个。所有区域都必须与骨干区域直接相连或通过虚链路连接到骨干区域。骨干区域必须是连续的,而非骨干区域可以是不连续的。
区域的类型决定了它将接收什么样的路由信息。使用末节区域旨在向其通告默认路由,这样 ASBR 汇总 LSA 和自治系统外部 LSA(如果是绝对末节区域,还有网络汇总 LSA)将不会扩散到该区域。这将缩小该区域中路由器的 LSDB 和 RIB(路由表)的规模,OSPF 的区域类型如下:
- 标准区域:这是默认的区域类型,它接受链路更新、汇总路由和外部路由。
- 骨干区域:骨干区域为 Area 0,其他区域都与之相连以交换路由信息。OSPF 骨干区域具有标准 OSPF 区域的所有特征。
- 末节区域(Stub Area):这种区域不接受关于自治系统外部的路由的信息,如来自非 OSPF 路由器的路由(也就是该区域不接受 LSA 4 和 LSA 5)。需要路由到自治系统外部的网络时,路由器使用默认路由(用 0.0.0.0 表示)。末节区域不能包含 ASBR(除非 ABR 也是 ASBR)。
- 绝对末节区域(Total Stub Area):这种 Cisco 专用的区域不接受来自自治系统外部的路由以及来自自治系统中其他区域的汇总路由(也就是该区域不接受 LSA 3 / 4 / 5)。需要将分组发送到区域外的网络时,路由器使用默认路由。绝对末节区域中不能有 ASBR(除非 ABR 也是 ASBR)。
Stub 区域虽然为合理的规划网络描绘了美好的前景,但她在实际的组网中又不具备可操作性,未免遗憾。但此时的 OSPF 协议已经基本成型,不可能再做大的修改。为了弥补缺陷,协议设计者提出了一种新的概念 NSSA,并且作为 OSPF 协议的一种扩展属性单独在 RFC 1587 中描述。
- NSSA(Not-So-Stubby Area):NSSA 是对 OSPF RFC 的补充。这种区域定义了一种特殊的 LSA —— 7 类 LSA 。NSSA 具有末节区域的优点,它们不接受有关自治系统外部的路由的信息(也就是该区域不接受 LSA 4 和 LSA 5,但有 LSA 7),而使用默认路由前往外部网络。然而,NSSA 可以包含 ASBR,这违反了关于末节区域的规则。
- 绝对末节 NSSA(Total Not-So-Stubby Area):Cisco 路由器也允许将区域配置为绝对末节 NSSA,这种区域可包含 ASBR,但不接受外部路由和来自其他区域的汇总路由(也就是该区域不接受 LSA 3 / 4 / 5,但有 LSA 7)。它使用默认路由前往区域外的网络。
扩展:
其实在 MPLS L3VPN 上 OSPF 还有一个 SuperBackbone(超级骨干区域)的概念,SuperBackbone 存在于 ISP(互联网服务提供商)的网络设备上,详情请看这个实验:《【实验】MPLS L3VPN中OSPF三类和五类LSA防环机制》。 |
下图为骨干区域(Area 0)、末节区域和 NSSA 的图示:

OSPF 的 Area 类型总结:
下表为 OSPF 区域类型的总结:
区域类型 | 是否接受区域内的路由(O) | 是否接受来自 其他区域的路由(O IA) |
是否接受外部路由(O E1 和 O E2) | 是否可包含 ASBR | 是否是思科专用 |
标准 | 是 | 是 | 是 | 是 | 否 |
骨干 | 是 | 是 | 是 | 是 | 否 |
末节 | 是 | 是 | 否(使用区域间默认路由) | 否 | 否 |
绝对末节 | 是 | 否(使用区域间默认路由) | 否(使用区域间默认路由) | 否 | 是 |
NSSA | 是 | 是 | 否(使用区域间默认路由) | 是 | 否 |
绝对末节 NSSA | 是 | 否(使用区域间默认路由) | 否(使用区域间默认路由) | 是 | 是 |
- 下面四个特殊区域都不接受外部路由(O E1 和 O E2,也就是不接受 LSA 4 和 LSA 5);
- “绝对” 表示除了不接受外部路由以外,连区域间路由也不接受了(O IA,也就是不接受 LSA 3),同时这也是思科专用的;
- “NSSA” 表示可包含 ASBR(也就是说这些区域里面将会有 LSA 7)。
接下来说一个例子,能够帮助您更好地理解 OSPF 的各个区域类型:

① 到 ⑥ 是有关于 OSPFv2 LSA 类型的描述(LSA 1 / 2 / 3 / 4 / 5 / 7),这个部分放在了这里:文章《OSPF 的 LSA 类型汇总(包括 OSPFv2 和 OSPFv3)》→ LSA 类型 → 2、OSPFv2 LSA 类型总结。
⑦ OSPF 的特殊区域:Stub Area 末梢区域
在 Stub 区域中只有域内和域间路由。只允许 LSA 3 进入本区域,LSA 4 / 5 不允许进入。配置 Stub 区域后会在区域内自动的生成一条默认路由(以便访问 OSPF 中其他区域的网络)。
⑧ OSPF 的特殊区域:Total Stub Area 绝对末梢区域
在 Total Stub Area 中只有本区域内的路由。LSA 3 / 4 / 5 均不允许进入本区域。配置 Total Stub Area 后会在区域内自动的生成一条默认路由(以便访问 OSPF 中其他区域的网络)。
⑨ OSPF 的特殊区域:NSSA Area 次末梢区域
在 NSSA 区域中允许存在 ASBR,所以也就可以引入外部路由。这个外部路由在 NSSA 区域内以 LSA 7 存在。当此 LSA 7 路由离开 NSSA 区域进入别的区域时,NSSA 的 ABR 会进行 LSA 7 向 LSA 5 的转换(如图 Area 6 所示)。
本区域只允许 LSA 3 进入,禁止 LSA 4 / 5 的进入,LSA 7 可在本区域内传播。所以此区域有域内、域间和外部路由。配置 NSSA 区域需要在区域内手工的创建一条默认路由(以便访问 OSPF 中其他区域的网络)。
# router ospf x
# area 6 nssa default-information-originate
⑩ OSPF 的特殊区域:Total NSSA Area 绝对次末梢区域
在 NSSA 区域中允许存在 ASBR,所以也就可以引入外部路由。这个外部路由在 NSSA 区域内以 LSA 7 存在。当此 LSA 7 路由离开 NSSA 区域进入别的区域时,NSSA 的 ABR 会进行 LSA 7 向 LSA 5 的转换(如图 Area 7 所示)。
本区域禁止 LSA 3 / 4 / 5 进入,LSA 7 可在本区域内传播,只有本区域内路由和外部路由。配置 Total NSSA Area 后会在区域内自动的生成一条默认路由(以便访问 OSPF 中其他区域的网络)。
其他相关文章:
- 如果您想了解 OSPFv2 的 11 种 LSA 类型和 OSPFv3 的 9 种 LSA 类型,请看:《OSPF 的 LSA 类型汇总(包括 OSPFv2 和 OSPFv3)》
- 思科官方文档:OSPF Not-So-Stubby Area (NSSA)
以下引用均有删改:
- OSPF 的特殊区域,参考自:《CCNP ROUTE 学习指南(642-902)》,人民邮电出版社,2011 年 1 月第 1 版
- OSPF 的特殊区域总结,参考自:http://blog.sina.com.cn/s/blog_5d24f0450100kxmi.html
本文完。如有疑问,欢迎在下方留言;如本文有什么错误,欢迎在下方留言指正,谢谢。
发表评论?