本文主要介绍OSPF中的另外一种特殊区域:NSSA以及Totally NSSA区域。
如下图:
当AR1和AR3同时连接到某一外部网络,AR3引入外部路由到OSPF域,AR1所在的Area 1为减小LSDB规模被设置为Stub或Totally Stub区域。这时,由于被配置了Stub或Totally Stub区域,AR1所有的数据都将从AR2走。
注释:Totally stub和stub都无法传递5类LSA外部路由。
AR1访问外部网络的路径是“AR1->AR2->AR3->外部网络”,显然相对于AR1直接访问外部网络而言,这是一条次优路径。
OSPF规定Stub区域是不能引入外部路由的,这样可以避免大量外部路由对Stub区域设备资源的消耗,但是对于既需要引入外部路由又要避免外部路由带来的资源消耗的场景,Stub和Totally Stub区域就不能满足需求了。
为了解决这一问题,OSPF研发了两个新的特殊区域:NSSA和Totally NSSA区域,然后让我们来看一下,Nssa区域以及Totally Nssa区域是如何去解决这种故障现象的。
NSSA和Totally NSSA区域
NSSA
OSPF NSSA区域(Not-So-Stubby Area)是在原始OSPF协议标准中新增的一类特殊区域类型。
NSSA区域和Stub区域有许多相似的地方。两者的差别在于,NSSA区域能够将自治域外部路由引入并传播到整个OSPF自治域中,同时又不会学习来自OSPF网络其它区域的外部路由。
NSSA LSA(七类LSA):
七类LSA是为了支持NSSA区域而新增的一种LSA类型,用于描述NSSA区域引入的外部路由信息。
七类LSA由NSSA区域的ASBR产生,其扩散范围仅限于ASBR所在的NSSA区域。
缺省路由也可以通过七类LSA来产生,用于指导流量流向其它自治域。
七类LSA转换为五类LSA:
NSSA区域的ABR收到七类LSA时,会有选择地将其转换为五类LSA,以便将外部路由信息通告到OSPF网络的其它区域,NSSA区域有多个ABR时,进行7类LSA与5类LSA转换的是Router ID最大的ABR。
NSSA和Totally NSSA区域的命令配置如下:
[AR1]ospf
[AR1-ospf-1]area 1
[AR1-ospf-1-area-0.0.0.1]nssa (配置为Nssa区域)
[AR1-ospf-1-area-0.0.0.1]nssa no-summary (配置为Totally nssa区域)
Totally Nssa区域与Nssa区域的区别如下:
Totall Nssa区域中取消了3类LSA报文传递,就如同在代码行里那样NO Summary,可以参考Stub区域与Totally Stub区域的区别。