【重识云原生】第四章云网络4.3.4.7节——OSPF特殊区域之NSSA和Totally NSSA详解及配置

本文深入介绍了OSPF中的特殊区域类型——NSSA(Not-So-Stubby Area)和Totally NSSA,解决Stub区域无法引入外部路由的问题。NSSA允许引入外部路由,通过七类LSA传播,而Totally NSSA进一步禁止区域内三类LSA的泛洪。配置示例展示了如何设置和验证NSSA和Totally NSSA区域,确保最优路径的建立。

  

 《重识云原生系列》专题索引:

  1. 第一章——不谋全局不足以谋一域
  2. 第二章计算第1节——计算虚拟化技术总述
  3. 第二章计算第2节——主流虚拟化技术之VMare ESXi
  4. 第二章计算第3节——主流虚拟化技术之Xen
  5. 第二章计算第4节——主流虚拟化技术之KVM
  6. 第二章计算第5节——商用云主机方案
  7. 第二章计算第6节——裸金属方案
  8. 第三章云存储第1节——分布式云存储总述
  9. 第三章云存储第2节——SPDK方案综述
  10. 第三章云存储第3节——Ceph统一存储方案
  11. 第三章云存储第4节——OpenStack Swift 对象存储方案
  12. 第三章云存储第5节——商用分布式云存储方案
  13. 第四章云网络第一节——云网络技术发展简述
  14. 第四章云网络4.2节——相关基础知识准备
  15. 第四章云网络4.3节——重要网络协议
  16. 第四章云网络4.3.1节——路由技术简述
  17. 第四章云网络4.3.2节——VLAN技术
  18. 第四章云网络4.3.3节——RIP协议
  19. 第四章云网络4.3.4节——OSPF协议
  20. 第四章云网络4.3.4.3节——OSPF协议工作原理
  21. 第四章云网络4.3.4.4节——[转载]OSPF域内路由
  22. 第四章云网络4.3.4.5节——[转载]OSPF外部路由
  23. 第四章云网络4.3.4.6节——[转载]OSPF特殊区域之Stub和Totally Stub区域详解及配置
  24. 第四章云网络4.3.4.7节——[转载]OSPF特殊区域之NSSA和Totally NSSA详解及配置
  25. 第四章云网络4.3.5节——EIGRP协议
  26. 第四章云网络4.3.6节——IS-IS协议
  27. 第四章云网络4.3.7节——BGP协议
  28. 第四章云网络4.3.7.2节——BGP协议概述
  29. 第四章云网络4.3.7.3节——BGP协议实现原理
  30. 第四章云网络4.3.7.4节——高级特性
  31. 第四章云网络4.3.7.5节——实操
  32. 第四章云网络4.3.7.6节——MP-BGP协议
  33. 第四章云网络4.3.8节——策略路由
  34. 第四章云网络4.3.9节——Graceful Restart(平滑重启)技术
  35. 第四章云网络4.3.10节——VXLAN技术
  36. 第四章云网络4.3.10.2节——VXLAN Overlay网络方案设计
  37. 第四章云网络4.3.10.3节——VXLAN隧道机制
  38. 第四章云网络4.3.10.4节——VXLAN报文转发过程
  39. 第四章云网络4.3.10.5节——VXlan组网架构
  40. 第四章云网络4.3.10.6节——VXLAN应用部署方案
  41. 第四章云网络4.4节——Spine-Leaf网络架构
  42. 第四章云网络4.5节——大二层网络
  43. 第四章云网络4.6节——Underlay 和 Overlay概念
  44. 第四章云网络4.7.1节——网络虚拟化与卸载加速技术的演进简述
  45. 第四章云网络4.7.2节——virtio网络半虚拟化简介
  46. 第四章云网络4.7.3节——Vhost-net方案
  47. 第四章云网络4.7.4节vhost-user方案——virtio的DPDK卸载方案
  48. 第四章云网络4.7.5节vDPA方案——virtio的半硬件虚拟化实现
  49. 第四章云网络4.7.6节——virtio-blk存储虚拟化方案
  50. 第四章云网络4.7.8节——SR-IOV方案
  51. 第四章云网络4.7.9节——NFV
  52. 第四章云网络4.8.1节——SDN总述
  53. 第四章云网络4.8.2.1节——OpenFlow概述
  54. 第四章云网络4.8.2.2节——OpenFlow协议详解
  55. 第四章云网络4.8.2.3节——OpenFlow运行机制
  56. 第四章云网络4.8.3.1节——Open vSwitch简介
  57. 第四章云网络4.8.3.2节——Open vSwitch工作原理详解
  58. 第四章云网络4.8.4节——OpenStack与SDN的集成
  59. 第四章云网络4.8.5节——OpenDayLight
  60. 第四章云网络4.8.6节——Dragonflow
  61. 第四章云网络4.9.1节——网络卸载加速技术综述

  62. 第四章云网络4.9.2节——传统网络卸载技术

  63. 第四章云网络4.9.3.1节——DPDK技术综述

  64. 第四章云网络4.9.3.2节——DPDK原理详解

  65. 第四章云网络4.9.4.1节——智能网卡SmartNIC方案综述

  66. 第四章云网络4.9.4.2节——智能网卡实现

  67.  《云原生进阶之容器》专题第六章容器6.1.1节——容器综述

  68. 【云原生进阶之PaaS中间件】第一章Redis-1.1简介

  69. 【云原生进阶之PaaS中间件】第二章Zookeeper-1-综述

  70. 【云原生进阶之PaaS中间件】第三章Kafka-1-综述

  71. 【云原生进阶之PaaS中间件】第四章RabbitMQ-1-简介及工作模式

  72. 【云原生进阶之数据库技术】第一章MySQL-1-基础概述

  73. 【云原生进阶之数据库技术】第二章-Oracle-1-简介

  74. 【云原生进阶之数据库技术】第三章-PostgreSQL-1-综述

  《云原生进阶之容器》专题索引:

  1. 第一章Docker核心技术1.1节——Docker综述

  2. 第一章Docker核心技术1.2节——Linux容器LXC

  3. 第一章Docker核心技术1.3节——命名空间Namespace

  4. 第一章Docker核心技术1.4节——chroot技术

  5. 第一章Docker核心技术1.5.1节——cgroup综述

  6. 第一章Docker核心技术1.5.2节——cgroups原理剖析

  7. 第一章Docker核心技术1.5.3节——cgroups数据结构剖析

  8. 第一章Docker核心技术1.5.4节——cgroups使用

  9. 第一章Docker核心技术1.6节——UnionFS

  10. 第一章Docker核心技术1.7节——Docker镜像技术剖析

  11. 第一章Docker核心技术1.8节——DockerFile解析

  12. 第一章Docker核心技术1.9节——docker-compose容器编排

  13. 第一章Docker核心技术1.10节——Docker网络模型设计

  14. 第二章——Kubernetes概述

  15. 第二章Controller Manager原理剖析--2.1节Controller Manager综述

  16. 第二章Controller Manager原理2.2节--client-go剖析

  17. 第二章Controller Manager原理2.3节--Reflector分析

  18. 第二章Controller Manager原理2.4节--Informer机制剖析

  19. 第二章Controller Manager原理2.5节--DeltaFIFO剖析

  20. 第二章Controller Manager原理2.6节--Informer controller

  21. 第二章Controller Manager原理2.7节--Indexer剖析

  22. 第二章Controller Manager原理2.8节--Resync机制

  23. 第三章List-Watch机制3.1节-- List-Watch机制剖析

注:本文主要转载自

OSPF(七)OSPF特殊区域之NSSA和Totally NSSA详解及配置_Skye_Zheng的博客-CSDN博客_nssa totally

1 前言

        在上一篇文章:《4.3.4.6 OSPF特殊区域之Stub和Totally Stub区域详解及配置》中,我们详细讲解了Stub区域的作用,以及配置,Stub区域消除了四类、五类LSA,Totally Stub区域更是将三类LSA也一并消除,只留下一条缺省的三类LSA。

        本文主要介绍OSPF中的另外一种特殊区域:NSSA以及Totally NSSA区域。

1.1 Stub和Totally Stub区域存在的问题

        如下图,当RTD和RTA同时连接到某一外部网络,RTA引入外部路由到OSPF域,RTD所在的Area 1为减小LSDB规模被设置为Stub或Totally Stub区域。这时,由于被配置了Stub或Totally Stub区域,RTD所有的数据都将从RTB走。

        RTD访问外部网络的路径是“RTD->RTB->RTA->外部网络”,显然相对于RTD直接访问外部网络而言,这是一条次优路径。

        OSPF规定Stub区域是不能引入外部路由的,这样可以避免大量外部路由对Stub区域设备资源的消耗。

        对于既需要引入外部路由又要避免外部路由带来的资源消耗的场景,Stub和Totally Stub区域就不能满足需求了。

        所以为了解决这一问题,我们就有了一个新的特殊区域:NSSA和Totally NSSA区域。

2 NSSA和Totally NSSA区域

2.1 NSSA区域(Not-So-Stubby Area)

        OSPF NSSA区域(Not-So-Stubby Area)是在原始OSPF协议标准中新增的一类特殊区域类型。

        NSSA区域和Stub区域有许多相似的地方。两者的差别在于,NSSA区域能够将自治域外部路由引入并传播到整个OSPF自治域中,同时又不会学习来自OSPF网络其它区域的外部路由。

2.1.1 lNSSA LSA(七类LSA)

        七类LSA是为了支持NSSA区域而新增的一种LSA类型,用于描述NSSA区域引入的外部路由信息。

        七类LSA由NSSA区域的ASBR产生,其扩散范围仅限于ASBR所在的NSSA区域。

        缺省路由也可以通过七类LSA来产生,用于指导流量流向其它自治域。

2.1.2 七类LSA转换为五类LSA

        NSSA区域的ABR收到七类LSA时,会有选择地将其转换为五类LSA,以便将外部路由信息通告到OSPF网络的其它区域。

        NSSA区域有多个ABR时,进行7类LSA与5类LSA转换的是Router ID最大的ABR。

2.1.3 配置

        将Area 1区域设置成NSSA区域,只要将RTB、RTD路由器做配置即可。

命令如下:

RTB:

[RTB]ospf

[RTB-ospf-1]area 1

[RTB-ospf-1-area-0.0.0.1]nssa

RTD:

[RTD]ospf

[RTD-ospf-1]area 1

[RTD-ospf-1-area-0.0.0.1]nssa

        查看RTD的LSDB:

        发现RTD路由器只包含一类、二类、三类LSA,以及七类LSA:NSSA 192.168.6.0 192.168.4.4 78 36 80000001 1

NSSA 192.168.7.0 192.168.4.4 80 36 80000001 1

NSSA 0.0.0.0 192.168.2.2 259 36 80000001 1

[RTD]dis ospf lsdb

OSPF Process 1 with Router ID 192.168.4.4

Link State Database

Area: 0.0.0.1

Type LinkState ID AdvRouter Age Len Sequence Metric

Router 192.168.4.4 192.168.4.4 70 48 80000008 1

Router 192.168.2.2 192.168.2.2 207 36 80000005 1

Network 192.168.4.4 192.168.4.4 204 32 80000002 0

Sum-Net 192.168.5.0 192.168.2.2 259 28 80000001 3

Sum-Net 192.168.3.0 192.168.2.2 259 28 80000001 2

Sum-Net 192.168.2.0 192.168.2.2 259 28 80000001 1

Sum-Net 192.168.1.0 192.168.2.2 259 28 80000001 2

NSSA 192.168.6.0 192.168.4.4 78 36 80000001 1

NSSA 192.168.7.0 192.168.4.4 80 36 80000001 1

NSSA 0.0.0.0 192.168.2.2 259 36 80000001 1

        查看OSPF路由表:

[RTD]dis ospf routing

OSPF Process 1 with Router ID 192.168.4.4

Routing Tables

Routing for Network

Destination Cost Type NextHop AdvRouter Area

192.168.4.0/24 1 Transit 192.168.4.4 192.168.4.4 0.0.0.1

192.168.7.0/24 1 Stub 192.168.7.4 192.168.4.4 0.0.0.1

192.168.1.0/24 3 Inter-area 192.168.4.2 192.168.2.2 0.0.0.1

192.168.2.0/24 2 Inter-area 192.168.4.2 192.168.2.2 0.0.0.1

192.168.3.0/24 3 Inter-area 192.168.4.2 192.168.2.2 0.0.0.1

192.168.5.0/24 4 Inter-area 192.168.4.2 192.168.2.2 0.0.0.1

Routing for NSSAs

Destination Cost Type Tag NextHop AdvRouter

0.0.0.0/0 1 Type2 1 192.168.4.2 192.168.2.2

Total Nets: 7

Intra Area: 2 Inter Area: 4 ASE: 0 NSSA: 1

        我们还可通过tracert命令验证数据路径,发现现在RTD访问外部网络从最优路径通过(RTD->RTF)

[RTD]tracert 192.168.6.1

traceroute to 192.168.6.1(192.168.6.1), max hops: 30 ,packet length: 40,press

CTRL_C to break

1 192.168.7.6 20 ms 20 ms 20 ms

2 192.168.6.1 10 ms 10 ms 20 ms

2.2 Totally NSSA

        Totally NSSA与MSSA的区别:Totally NSSA不允许三类LSA在本区域内泛洪。(与Stub和Totally Stub的区别相同)

2.2.1 配置

        在NSSA区域中的ARB(也就是图中RTB),追加上no-summary参数即可。

RTB:

[RTB]ospf

[RTB-ospf-1]area 1

[RTB-ospf-1-area-0.0.0.1]nssa no summary

        查看RTD的LSDB:

        发现三类LSA汇总成一条缺省LSASum-Net 0.0.0.0 192.168.2.2 49 28 80000001 1

[RTD]dis ospf lsdb

OSPF Process 1 with Router ID 192.168.4.4

Link State Database

Area: 0.0.0.1

Type LinkState ID AdvRouter Age Len Sequence Metric

Router 192.168.4.4 192.168.4.4 5 48 80000014 1

Router 192.168.2.2 192.168.2.2 12 36 80000008 1

Sum-Net 0.0.0.0 192.168.2.2 49 28 80000001 1

NSSA 192.168.6.0 192.168.4.4 78 36 80000001 1

NSSA 192.168.7.0 192.168.4.4 80 36 80000001 1

NSSA 0.0.0.0 192.168.2.2 259 36 80000001 1

3 整体实验配置过程及命令

3.1 步骤一:搭建拓扑

        搭建拓扑,并分配好网段,建议标记下来,以免出错。

3.2 步骤二:配置路由器接口IP地址

        根据分配好的网段,配置路由器所有接口的IP地址。以及PC的IP地址。

举个栗子:

[RTD]

[RTD]interface GigabitEthernet 0/0/0

[RTD-GigabitEthernet0/0/0]ip address 192.168.4.4 24

3.3 步骤三:OSPF区域以及邻居配置

        注意:这里我们分了三个区域:Area 0、Area 1、Area 2。需要在不同的区域下宣告邻居。

        宣告邻居命令:network [相邻网段] [反子网掩码]

举个栗子:

RTA:

[RTA]ospf

[RTA]ospf 1

[RTA-ospf-1]area 0

[RTA-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255

[RTA-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255

[RTA-ospf-1-area-0.0.0.0]network 192.168.3.0 0.0.0.255

RTB:

[RTB]ospf

[RTB-ospf-1]areo 0

[RTB-ospf-1-area-0.0.0.0]network 192.168.2.0 0.0.0.255

[RTB-ospf-1-area-0.0.0.0]area 1

[RTB-ospf-1-area-0.0.0.1]network 192.168.4.0 0.0.0.255

3.4 步骤四:检测OSPF

        配置好了OSPF之后,可以先不着急继续往下配置,我们可以先检测一下OSPF是否配置正确。

        检测命令:

  1. 可以用RTDpingRTE查看能否通信
  2. 查看路由表:display ip routing-table
  3. 查看OSPF路由表:display ospf routing

3.5 步骤五:引入外部路由

        步骤1:将外部路由用RIP协议进行配置。

RTF:

[RTF]rip

[RTF-rip-1]version 2 //版本2

[RTF-rip-1]network 192.168.6.0

[RTF-rip-1]network 192.168.1.0

[RTF-rip-1]network 192.168.7.0

        步骤2:路由引入之前需要在RTF上将192.168.1.0/24、192.168.7.0/24网段用OSPF协议宣告邻居。同时将RTA上将192.168.1.0/24网段用RIP宣告。RTD上将192.168.7.0/24网段用RIP宣告。

RTF:

注意OSPF区域的变化

[RTF]ospf

[RTF-ospf-1]a 0

[RTF-ospf-1-area-0.0.0.0]network 192.168.1.0 0.0.0.255

[RTF-ospf-1]a 1

[RTF-ospf-1-area-0.0.0.1]network 192.168.7.0 0.0.0.255

RTA:

[RTA]rip

[RTA-rip-1]v 2

[RTA-rip-1]network 192.168.1.0

RTD:

[RTD]rip

[RTD-rip-1]v 2

[RTD-rip-1]network 192.168.7.0

        步骤3:外部路由引入。(详细解释可查看文章:OSPF(五)OSPF外部路由

RTA、RTD:

[RTA]ospf

[RTA-ospf-1]import-route rip

RTF:

[RTF]rip

[RTF-rip-1]

[RTF-rip-1]import-route ospf

3.6 步骤六:检测外部路由是否引入成功

        检测命令:

  1. 可以用RTDpingRTE查看能否通信
  2. 查看路由表:display ip routing-table
  3. 查看OSPF路由表:display ospf routing

3.7 步骤七:配置NSSA、Totally NSSA

        这部分实验可对照上文,这里不再赘述。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值