NSSA AS-external LSA详解(7类LSA)
| LSA Header | ||
|---|---|---|
| LS Age | Options | LS Type |
| Link State ID | ||
| Advertising Router | ||
| LS sequence number | ||
| LS checksum | length | |
| Payload | ||
| Network Mask | ||
| E | 0 | metric |
| Forwarding address | ||
| External Route Tag | ||
| ... |
Stub区和Total Stub区
Stub区
- Stub区域的ABR不向Stub区域内传播它接收到的AS外部路由,Stub区域中路由器的LSDB、路由表规模都会大大减小
- 为保证Stub区域能够到达AS外部,Stub区域的ABR将生成一条缺省路由(使用3类LSA描述)
- 配置Stub区域时需要注意下列几点:
-
- 骨干区域不能被配置为Stub区域
-
- Stub区域中的所有路由器都必须将该区域配置为Stub
-
- Stub区域内不能引入也不接收AS外部路由
-
- 虚连接不能穿越Stub区域
- 虚连接不能穿越Stub区域
Total Stub区
- Totally Stub区域既不允许AS外部路由在本区域内传播,也不允许区域间路由(3类LSA)在本区域内传播
- Totally Stub区域内的路由器通过本区域ABR下发的缺省路由(使用3类LSA描述)到达其他区域,以及AS外部
- 配置Totally Stub区域时需要注意:
-
- 与Stub区域配置的区别在于,在ABR上需要追加no-summary关键字
- 与Stub区域配置的区别在于,在ABR上需要追加no-summary关键字
Nssa区和Total Nssa区
Nssa区
- Nssa区域能够引入外部路由,同时又不会学习来自OSPF网络其它区域引入的外部路由
- 7类LSA只能在Nssa区域传递
- 为保证Nssa区域能够到达AS外部,Nssa区域的ABR将生成一条缺省路由(使用7类LSA描述)
Total Nssa区
- 与Nssa区域的区别是3类LSA进不去
LSA泛洪规则
OSPF通过交互LSA实现链路状态数据库同步,路由器收到LSA后,按照以下原则处理:
- 如果收到的LSA本地没有,则更新LSDB并泛洪该LSA
- 如果本地LSDB已存在该LSA,但是收到的更新,则更新LSDB并泛洪该LSA
- 如果收到的LSA和LSDB中相同,则忽略,并终止泛洪
- 如果收到的LSA损坏,例如checksum错误,则不接收该LSA
案例
如图:
area2和area3分别配置stub区域、totally stub区域和nssa区域、totally nssa区域,当area2首先配置stub区域后,AR4的lsdb如图:
5类的LSA就没有了,只剩1、2、3类的LSA,多了一条0.0.0.0的3类LSA;当area2配置了totally stub区域后,只剩下1、2类再加一条0.0.0.0的3类LSA,如图:
当area3配置了nssa区域后,会将外部AS生成7类的LSA,同时新增一条0.0.0.0的7类LSA,如图:
同时AR3上会将7类LSA转成5类LSA传输外部AS的路由,如图:
当area3配置了totally nssa区域后,如图:
相关命令
stub //配置Stub区域
stub no-summary //配置Totally Stub区域
nssa //配置Nssa区域
nssa no-summary //配置Totally Nssa区域