OSPF采用划分区域的方式,将一个大网络划分为多个相互链接的小网络。每一个区域内的设备只需同步所在区域内的链路状态数据库,必定程度上下降内存及CPU的消耗。划分区域后,根据路由器所链接区域的状况,可划分两种路由器角色
① 区域内部路由器(Internal Router):该类设备的全部接口都属于同一个OSPF区域
② 区域边界路由器(Area Border Router):简称ABR,该类设备接口分别链接两个及两个以上的不一样区域。ABR设备至少有一个接口属于骨干区域, 它与骨干区域之间既能够是物理链接,也能够是逻辑上的链接
③ 骨干路由器(Backbone Router):该类设备至少有一个接口属于骨干区域 全部的ABR和位于Area0的内部设备都是骨干路由器面试
区域内部路由器维护本区域内的链路状态信息并计算区域内的最优路径
区域边界路由器做为区域间通讯的桥梁,同时维护所链接多个区域的链路状态数据库
ABR将一个区域内的链路状态信息转化成路由信息,而后发布到邻居区域
链路状态信息转换成路由信息其实就是将一类和二类LSA转化成三类LSA的过程。注意,区域间的路由信息在ABR上是双向传递的
以Area 1中RTD上的192.168.1.0/24的网络为例,其对应的一类LSA在Area 1中同步;做为Area 1和Area 0之间ABR的RTB负责将192.168.1.0/24的一类LSA转换成三类LSA并将此三类LSA发送到Area 0。做为Area 0和Area 2之间ABR的RTC,又从新生成一份三类LSA发送到Area 2中,至此全OSPF区域内都收到192.168.1.0/24的路由信息。RTE上192.168.2.0/24的路由信息同步过程也是这样算法
<RTB>display ospf lsdb summary 192.168.1.0 OSPF Process 1 with Router ID 2.2.2.2 Area: 0.0.0.0 Link State Database Type : Sum-Net //三类LSA Ls id : 192.168.1.0 //目的网段地址 Adv rtr : 2.2.2.2 //产生此三类LSA的Router ID Ls age : 86 Len : 28 Options : E seq# : 80000001 chksum : 0x7c6d Net mask : 255.255.255.0 //网络掩码 Tos 0 metric: 1 //开销值 Priority : Low
Network-Summary-LSA(三类LSA)中主要包括如下内容:
① Ls id:目的网段地址
② Adv rtr:ABR的Router ID
③ Net mask:目的网段的网络掩码
④ Metric:ABR到达目的网段的开销值
总结以下:
① LAS-3描述的是路由信息 没有拓扑信息内容
② LSA-3在区域之间进行泛洪(也就是传递)
思考以下:
a) 192.168.1.0/24通过RTB转换LSA-3在area 0中泛洪 通过RTC设备后,这个LSA-3有没有变化呢?
b) 区域内路由器接收描述其余区域网络信息的三类LSA后,OSPF路由器又是怎么基于三类LSA来计算出区域间路由的呢?数据库
ABR产生的三类LSA将用于计算区域间路由,根据三类LSA中的Adv rtr字段,判断出ABR 根据Ls id、Net mask、Metric字段得到ABR到达目的网络号/掩码、开销
若是多个ABR产生了指向相同目的网段的三类LSA,则根节点将根据本路由器到达目的网段的累计开销进行比较,最终生成最小开销路由。若是根节点到达目的网段的累计开销值相同,则产生等价负载的路由
Area 0中RTA计算区域间路由过程当中:
① 192.168.1.0/24和192.168.2.0/24的三类LSA中,Adv rtr分别是RTB(2.2.2.2)和RTC(3.3.3.3)
② RTB产生的三类LSA中,网络号/掩码是192.168.1.0/24,开销为1
③ RTC产生的三类LSA中,网络号/掩码是192.168.2.0/24,开销为1
④ RTA到达192.168.1.0/24下一跳是RTB,开销是2
⑤ RTA到达192.168.2.0/24下一跳是RTC,开销是2网络
在R4和R7上查看OSPF的邻接关系
在R4上查看LSDB的状况
在R7上查看LSDB的状况
在R7上查看LSA-3的信息
R4到123.0.0.0/24网段的信息
26.0.0.0/24网段通过R2和R3转换成LSA-3向area 0中进行通告 Adv router的ID为2.2.2.2和3.3.3.3 开销 是R2或者R3到达26.0.0.0网段的开销 值为1
一样的,咱们在area 2中的6.6.6.6网段的LSA-3是什么样的呢?
以R7为根进行SPF的计算,并画出其有向图
在R7上面查看OSPF的路由表信息(主要就是的加上area 1的路由开销 而后加上R4到各个网段的开销)并发
为防止区域间的环路OSPF定义了骨干区域和非骨干区域和三类LSA的传递规则
① OSPF划分了骨干区域和非骨干区域,全部非骨干区域均直接和骨干区域相连且骨干区域只有一个,非骨干区域之间的通讯都要经过骨干区域中转,骨干区域ID固定为0
② OSPF规定从骨干区域传来的三类LSA再也不传回骨干区域
① RTB将AREA1中1的一类、二类LSA转换成三类LSA,发布到区域0中
② RTC从新生成有关192.168.1.0/24网络的三类LSA并发布到Area 2中
③ 同理,RTE也将有关192.168.1.0/24网络的三类LSA发布到Area 3中
④ RTD又将192.168.1.0/24网络的三类LSA发布到Area 1中,从而造成了路由环路ide
新建网络按照区域间的防环规则进行部署,能够避免区域间环路问题。可是部分网络可能因早期规划问题,区域间的链接关系违背了骨干区域和非骨干区域的规则
违背了OSPF区域的链接规则,如何解决?骨干区域必须是连续的,可是并不要求物理上连续,可使用虚链接使骨干区域逻辑上连续
虚链接能够在任意两个区域边界路由器上创建,可是要求这两个区域边界路由器都有端口链接到一个相同的非骨干区域。在RTB和RTC之间创建了一条虚链接,以使Area 2穿越Area1链接到骨干区域3d
把没有与骨干区域直接相连的非骨干区域经过一个非骨干区域(也叫传输区域)以逻辑通道的形式链接
经过一个非骨干区域链接链接分割的骨干区域;(或者说把两个骨干区域经过一个非骨干区域链接起来)
A和B间启用virtual link ,用来解决area 1/2/3 没有链接到backbone area
C和D间启用virtual link ,用来防止area 0断开而成为不连续的区域。同时也能解决次优路径问题,D访问地址1.2,流量走C和D之间的链路code
区域0认证中最大的问题就是R1和R2之间虚链路的问题。由于虚链路是工做在区域0。若是在区域0配置了认证,那么会影响到虚链路的创建,因此必定要虚链路的另外一端配置区域0的认证
若是在AREA 0中作了认证操做,则必须在R2上作认证 认证方法有两个:
① 一个是在虚链路上作认证(能够理解是一个特殊的接口验证)router
vlink-peer 2.2.2.2 md5 1 cipher hcie
② 另外一个是建立一个区域0,在作认证。由于它会将认证自动复制到Vitual Link上blog