OSPF多区域及LSA类型讲解



OSPF的区域类型和LSA类型这两个知识点,经常容易导致人们对他们理解上的混乱,今天就来谈谈这两个概念。

本文将会以下面这个拓扑图为例进行讲解。

wKioL1LRPS7hhOnoAAOFtaRSqJE761.jpg


一、LSA Type,链路状态通告的类型

本来想先讲区域类型,但是由于要理解不同类型的区域,必然要涉及到不同类型的LSA,现在把LSA放到前面先讲。

我们这里谈谈常见的几种LSA123457LSA

11LSA,路由器LSAOSPF网络中所有路由器都会产生1LSA,他的意思就是表示路由器自己在本区域内的直连链路信息。LSA仅在本区域内传播。其中,Link IDADV Router写的都是该路由器的RouterID

下图为1LSA

wKiom1LRPTvxfB48AADQXjHJcb8054.jpg


22LSA,网络LSA在广播或者非广播模式下(NBMA)由DR生成。该LSA仅在本区域内传播。2LSA表达的意思应该是:某区域内,在广播或非广播的网段内选举了DR,于是DR在本区域范围利用2LSA来进行通告。LSA仅在本区域内传播。其中,该LSALink ID就是该DR的接口IP地址,而ADV Router则是DRRouter ID

下图为2LSA

wKioL1LRPS_Ry6E4AABRwgr9VTc417.jpg


33LSA,网络汇总LSA由区域边界路由器ABR生成,用于将一个区域内的网络通告给OSPF中的其他区域。可以认为3LSA保存着本区域以外的所有其他区域的网络。举个例子,在多区域的环境如1-0-2这样的三个区域,含有area1area0ABR会把area1的网络以3LSA的形式通告给area0,当然它也会把area0里面的网络通告给area1。那么,area1里面的网络又是如何通告到area2呢?这里就要考虑到area1那些一开始被转换成3LSA的网络,是如何进入到area2的问题了。当原先这个3LSA进入到area0area2的边界路由器时,位于这个边界的ABR就把这条包含着area1链路信息的3LSA进行修改,修改的内容是把里面的ADV Router替换成自己的Router ID,并且维持原先的Link ID不变,然后把这条修改后的LSA通告给area2,这个就是3LSA的工作过程。

下图为3LSA

wKiom1LRPTyRNhRsAADLutkJV44404.jpg


44LSAASBR汇总LSA4LSA5LSA是紧密联系在一起的,可以说4LSA是由于5LSA的存在而产生的。4LSA由距离本路由器最近的ABR生成,这句话应该要这样来理解:如果路由器想要找到包含了外部路由的那台ASBR(自治系统边界路由器)的话,你应该要到达哪台ABR,这台ABRRouter ID就写在该LSAADV Router里面,而LSA里面的Link ID代表的是该ASBRRouter ID

下图为4LSA:

wKiom1LRPTzw7LjvAABozGqHqO8056.jpg


55LSA,外部的LSA5LSA由包含了外部路由的ASBR产生,目标是把某外部路由通告给OSPF进程的所有区域(特殊区域除外,下面会提到)。5LSA可以穿越所有区域,意思是在跨区域通告时,该LSALink IDADV Router一直保持不变。通俗一点来说,就像是该ASBROSPF全网络的所有路由器说,我有这个外部路由,想去的话就来找我吧!其中,Link ID代表的是那台ASBR所引入的网络,ADV Router则是该ASBRRouter ID

下图为5LSA

wKioL1LRPS-y3bRvAABm36Pflgc101.jpg


67LSA7LSA是一种由NSSA区域中引入了外部路由的路由器生成的LSA,他仅在NSSA本区域内传播。由于NSSA区域不允许外部的路由进来从而禁止了5LSA,那么为了能够把自己的外部路由传播出去,于是使用了7LSA来代替5LSA的功能。值得注意的一点是,当这种7LSA到达NSSA跟其他区域的边界后,该边界路由器会根据这条7LSA。生成对应的5LSA然后继续传播给其他区域。此时,这条5类的LSA里面的Link ID7LSA一样,都是该外部网络地址,而ADV Router则变成了该边界路由器的Router ID,因为这条5LSA本来就是边界路由器产生的。这里要注意的一点是,该5LSA里面的Forwarding Address还是保持跟之前的7LSAForwarding Address一样。

下图为7LSA

wKiom1LRPTygToV5AABg0J_7zJE985.jpg


下图为7类转成5LSA

wKioL1LRPTDgFPfHAACObfbcuME556.jpg



二、Area Type,区域类型

OSPF的区域类型分为5种:Backbone area(area 0)Standard areaStub areaTotally stubby areaNo so stubby area(NSSA)。下面来逐一介绍。

1Backbone area,也叫骨干区域,其实就是area 0。根据OSPF的设计原则,area 0OSPF网络中起着中心节点的作用,其他区域的链路信息通过area 0来进行相互传递,这也意味着所有其他区域都必须跟area 0相连。该区域支持12345LSA


2Standard area,也叫标准区域,标准区域的意思就是在这个区域里面可以正常传递OSPF各类报文。该区域支持12345LSA


3Stub area,也叫末节区域,所谓末节区域,意思就是该区域不接受非OSPF网络的任何外部路由(external route),它如果要到达那些外部路由的时候,只需要通过默认路由把它发出去就可以了。该区域支持123LSA


4Totally stubby area,也叫完全末节区域,他的意思是该区域非但不接受外部路由,也不接受自己本区域以外的其他区域的链路信息。它如果要到达本区域以外的目标网络的时候,也是跟末节区域一样,直接把报文通过默认路由发出去。这里要注意的是,由于默认路由是用3LSA发送的,所以完全末节区域虽然不允许普通的3LSA报文,但是支持这种包含默认路由的3LSA。该区域支持12LSA,以及包含默认路由的3LSA


5No so stubby area,就是平时所说的NSSA了,这个NSSA其实是从stub区域发展而来的,它的意思是在含有stub区域的条件下,还拥有可以发送外部路由出去给其他区域的能力。该区域支持1237LSA。这里注意一点的是,NSSA区域还有另外一种模式,那就是是完全末节区域模式的NSSA。这个模式其实就是在完全末节区域环境下允许引入外部路由,这种区域模式支持12LSA以及包含默认路由的3LSA



附记:

下面附上stub区域和totally stubby area的配置方式:

Stub区域的配置方式,其实就像普通一样通告OSPF网络,然后在把该区域设置为stub,命令是area xx stub。举开始的拓扑图为例,要设置aera24stub区域,就要在R2R4上分别进入路由配置模式:

        network24.1.1.0 0.0.0.3 area 24

        area 24 stub

通告完24.1.1.0这个网段后,然后用这条命令“area 24 stub”即可把area24配置为stub区域,如果要配置为完全末节区域,则只要在该命令后面添加一个参数no-summary,即可,完整命令为“area 24 stub no-summary”。

若要查看该区域是否成功配置为stub区域的话,直接show ip ospf即可。


你可能感兴趣的:(ospf,LSA类型,NSSA,区域类型,STUB区域)