OSPF之协议基础以及邻居、邻接关系

OSPF路由协议基础:

路由器类型(4种):
在这里插入图片描述

名称 作用
BR(Backbone Routers)骨干路由器 纯属于骨干区域(Area 0)的内部路由器或叫做IR内部路由器。
IR(Internal Routers)区域内路由器 纯在纯属于非骨干区的路由器
ABR(Area Border Routers)区域边界路由器 一半属于骨干区、一半属于非骨干区的路由器
ASBR(Autonomous System Border Routers)自治系统边界路由器 连接两个协议的设备

Tips:在这里需要区分一个概念,在下图拓扑中,如果R1-R2属于Area1 ,R2-R4属于Area2,那么在这里,R2不叫ABR(区域边界路由),因为R2不处于骨干区中,因此连接的只是两个非骨干区域,所以在这里它不叫ABR。

在这里插入图片描述

网关协议分为两种:
①IGP(内部网关协议)
②EGP(外部网关协议)
·OSPF是内部网关协议的一种,基于链路状态算法(SPF算法或者迪切斯特算法,使用的是传信的方法或者可以理解成是传地图)
·RIP也是内部网关协议的一种,称作距离矢量路由协议,使用的是累加算法(RIP有远近、有路由、有方向,并且它使用传闻的方式,就像是别人告诉我什么,我就信什么。)

OSPF的基本特点:
·支持无类域间路由(CIDR):这是为了减少路由条目的数量,因为使用了VLSM(可变子网掩码)以后会出现很多子网,那么可以使用CIDR进行涵盖,使非常多的明细的网段汇总成少数几条路由进行通信。

·无自由环路:每个协议都必须要保证这点,因为协议算法如果都有一个环,那么数据传输中都会存在环路,传输就变得不靠谱。RIP中防环机制(水平分割、毒性反转、触发更新)

·收敛速度快:体现在快速收敛、触发更新,当网络部分出现了更新,就立马更新,立即触发会导致收敛速度加快
OSPF触发更新是说在一个OSPF area中,其中一台路由器的接口down掉或者链路状态信息发生变化,它便会发送组播分组来声明自己的新状态,这个过程称作触发更新。触发更新额过程为:
1、路由器发现链路状态发生变化时,便使用组播地址224.0.0.6向OSPF区域中的DR、BDR发送LSU包,LSU包中有LSA的更新信息。
2、DR使用LSACK包回复发生变化的路由器,并使用组播地址224.0.0.5向其他路由器发送LSU包泛洪,每一个收到泛洪的路由器使用LASCK包回复DR。
3、如果一个路由器被连接到其他网络,它便转发LSU泛洪分组给这个网络的DR,DR再转发到这个网络中的其他路由器。
4、收到LSU更新包的路由器,更新自己的LSDB,并通过最短生成树算法计算出最短路径更新到路由表。
需要特别说明的是:OSPF中的路由器会周期地发送DBD包,周期默认为30s,如果60分钟后一个链路还没有被更新,则路由器会把它从LSDB中删除。

·使用IP组播收发协议数据:
在OSPF中使用的组播地址为224.0.0.6以及224.0.0.5
224.0.0.6:DR以及BDR监听的组播地址
224.0.0.5: DR、BDR、DRother都监听的组播地址
在RIP协议中有两个版本:
①V1:通过广播报文去收发
②V2:通过组播进行收发(224.0.0.9)
组播以及广播的区别:广播会浪费带宽,而且范围广,可能有些没有开启OSPF的网络设备接受到了报文,但是如果使用组播,那么可以将开启OSPF的网络设备全部纳入组中,那么没有开启OSPF的网络设备就不会接受到报文。

·支持多条等值路由
路由的配置分为两大类:静态路由配置、动态路由配置。
在动态路由配置中,有RIP以及OSPF,那么他们的判断等值的方式为:
RIP(路由优或不优是根据跳数判断的)
OSPF(Cost值相同的情况下,也是等值路由)

·支持协议报文的认证
安全机制,如果开启了认证功能,那么对所有的OSPF报文都会去做认证
RIP协议中,V2的版本也有认证机制
OSPF认证有明文、密文、区域认证、链路认证、虚链路认证

OSPF基本概念:

自治系统AS(Autonomous System):一个自治系统是指使用同一种路由协议交换路由信息的一组路由器。【仅限于OSPF中提到的AS概念,当在学习BGP,就不是这个概念了】
例子:TKE企业网络使用OSPF协议,百度企业网络也使用OSPF协议,但是它们是两个自治系统。

Router ID:
用于自治系统中唯一标识一台运行ospf的路由器的32位整数,每个运行OSPF的路由器都有一个Router ID。

Router ID的特点:
①唯一性,即一个OSPF区域
②类似于ipv4地址格式的ID,并不是IP
③:部署Router ID是任意的,但是需要是唯一的。
④:一般情况下,部署route id的时候都会把本身环回口搞成一样,这是为了方便我们查看设备。
⑤:如果不配置route id,那么路由器会自动选择(如果有环回口,就会将环回口的地址作为自己route id的格式,如果环回口存在多个,将会选择地址大的,如果没有环回口,就会选择物理口,如果物理口也有多个,那么将会选择物理口大的),但是自动选会有问题,如果接口down了或者路由器重启了,那么选举出来的id会发生变化,如果变了的话,没有其他操作是没问题的,但是如果后期进行维护会非常不方便,因为和自己记录的信息对不上了。后期会接触到虚链路,如果在虚链路配置的时候,route id发生变化了,那么虚链路有可能会出问题,因此建议手工进行配置。

== [在华为设备上如果在ospf进程中修改了router-id,需要进入用户视图重置ospf进程才能将router-id进行变更]==

OSPF的多区域概念:
在这里插入图片描述
1.在一个AS中,是可以划分AS成多区域的
2.区域就是一组网段的集合
3.Area 0为骨干区域,不是area 0的都是非骨干区域
4.骨干区域必须要和非骨干区域相连(至于原因在后期LSA讲解中会提到,为了防止环路)

OSPF基本配置:
Route ID的配置方法:
①:直接在路由器的系统视图下,输入指令 route id 1.1.1.1 全局配置
②:在启用ospf进程中,配置route id,例如ospf router-id 1.1.1.1
区别:如果在全局配置route id以后,去运行动态路由协议,如果这个协议需要去使用route id,全部使用全局route id。如果进程中也配置了route id,那么使用的是进程的route id,因此在实际商用中,直接全局配置route id。
简单拓扑实验(了解多区域配置的流程)
在这里插入图片描述

橙色区域为骨干区Area 0,左边的蓝色区域为非骨干区,设为Area 1,右边设为Area 2。
在这个实验中可以让实验者重温两种route id的配置方法以及区别,另外配置ABR(区域边界路由)的时候,注意在不同的区域中宣告网段,不能弄混。

OSPF的基本计算过程:
①首先要建立邻接关系
②泛洪LSA(链路状态广播),会让在同一个区域里的设备收到同个区域里面除自身以外所有设备的LSA,形成LSDB
③形成LSDB(链路状态数据库)之后通过SPF算法,形成了多个最短路径树,经过路由的计算最后形成了IP路由表。

OSPF邻居和邻接概念
邻居以及邻接的概念:
在这里插入图片描述
①:两台路由器相互发送了Hello报文以后,因为只是相互看到对方就变成了邻居,但是不能叫做邻接关系,由于通过Hello报文以后发现了对端的路由器,那么就没有往下进行了,那么只能称作邻居关系。(没有路由信息交互)

②:邻接关系:在邻居关系基础上,发送例如DBD报文等信息时,才叫做邻接关系(有路由信息交换)

总结区别:R1以及R2之间共享一条公共数据链路,并且中间没有其他的路由器,或者两台路由器之间存在虚连接,那么通过发送Hello报文以后,协商了相关参数,就能够称作是邻居。如果两个邻居之间需要同步链路状态数据库(LSDB),就需要建立邻接关系,因此如果有邻接关系,那么LSDB肯定是同步的状态,LSA只能在存在邻接关系的路由器之间进行传递。

Hello报文的内容:
在这里插入图片描述

OSPF支持的网络类型
在这里插入图片描述

在上图中,广播型网络包含了广播以及组播
OSPF定义的四种网络类型:(网络类型指运行OSPF网段的二层链路类型)
点到点网络
广播型网络

非广播网络是指支持两台以上路由器互连,但是不具有广播能力的网络。
在非广播网络上,OSPF有两种运行方式,分别是非广播多路访问以及点到多点。
NBMA网络(非广播多路访问):
在NBMA网络上,OSPF模拟在广播型网络上的操作,但是每个路由器的邻居需要手动配置。NBMA方式要求网络中的路由器组成全连接。例如,使用SVC进行通信的ATM网络。
点到多点网络
将整个非广播网络看成是一组点到点网络。每个路由器的邻居可以使用底层协议例如反向地址解析协议(Inverse ARP)来发现。
对于不能组成全连接的网络应当使用点到多点方式,例如只使用PVC的不完全连接帧中继网络。

虚连接
在这里插入图片描述

如上图所示,RTB作为一个ABR没有物理连接到骨干区域,此时可以在RTA和RTB之间配置一条虚拟链路,使RTB连接到骨干区域。Area 1是次虚拟连接的Transit区域。
1.虚连接是属于骨干区域(Area 0 )的一条虚拟链路。

2.骨干区域必须是连续的,但在物理上不连续的时候,可以使用虚连接使骨干区域在逻辑上连续。 虚连接可以在任意两个区域边界路由器上建立,但是要求这两个区域边界路由器都有端口连接到一个共同的非骨干区域。这个非骨干区域称为Transit区域。

DR\BDR
在这里插入图片描述

指定路由器(DR , Designated Router)
备份指定路由器(BDR,Backup Designed Router)

DR和BDR的作用:

  1. 减少邻接关系的数量从而减少链路状态信息以及路由信息的交换次数,能够节省带宽,减少路由器硬件的负担。如果有一台既不是DR也不是BDR的路由器只与DR和BDR形成邻接关系并交换链路状态信息以及路由信息,这样就大大减少了大型广播型网络和NBMA网络中的邻接关系数量。
  2. DR和BDR的选举是根据优先级来确定的,优先级越大约有可能成为DR,如果优先级相同,那么就根据route-id的大小来选举,越大越有可能成为DR。
  3. 在描述拓扑的LSDB中,一个NBMA网段或者广播型网段是由单独一条LSA来描述的,这条LSA是由该网段的DR产生的。

DR/BDR的选举:(只要在广播型网络就会选举DR以及BDR,)
DR和BDR是由OSPF的Hello报文进行选举的,选举是根据端口的路由优先级(Router Priority)进行的。
如果Router Priority被设置为0,那么该路由器将不允许被选举成DR或者BDR。
Router Priority越大越优先 (与STP是相反的)
如果相同,Router ID大者优先。
为了维护网络上邻接关系的稳定性,如果网络中已经存在DR和BDR,则新添加进该网段的路由器不会成为DR和BDR,不管该路由器的Router Priority是否最大。
如果当前DR故障,当前BDR自动成为新的DR,网络中重新选举BDR,如果当前BDR故障,则DR不变,重新选举BDR。
这种选举机制的目的是为了保持邻接关系的稳定,减少拓扑结构的改变对邻接关系的影响。
既没有选举称为DR,也没有选举成BDR的路由器,叫做DRother,DRother只需要和DR以及BDR形成邻接关系即可。
DRother之间有邻居关系,但是没有邻接关系。

·当DRother上的链路出现问题,要通告给BDR以及DR,那么在这种情况下,就会使用224.0.0.6进行发送,这个地址只有DR以及BDR进行监听,也就是说只有DR以及BDR才能收到报文的地址为224.0.0.6的信息。在DR正常工作的情况下,BDR是不对该报文进行任何处理的,DR会告诉DRother,在这种情况下,DR发送路由更新的时候,用的是224.0.0.5,是所有路由器都监听的组,网段中所有路由器,包括DR、BDR以及DRother都会收到这个路由信息。

疑问:Router Priority最大,不一定是DR/BDR?????
解答:DR\BDR是不能够进行抢占的,因此路由优先级最大不一定是DR/BDR。

发布了28 篇原创文章 · 获赞 15 · 访问量 872

猜你喜欢

转载自blog.csdn.net/weixin_45948002/article/details/104543847
今日推荐