ospf报文类型和格式

ospf报文类型和格式

ospf基于接口进行划分,邻居想要建立,就必须满足字段验证

字段类型 条件
version 版本必须为2
router-id 标识唯一的路由器,不能相同
area id 1. 接受的接口所属的区域id一致 2.接收和所属不一致,但是area为0,则表示虚连接
authentication 验证信息需要一致
networkmask 接收和所属的需要一致,若是p2p或者virtual-link则不需要验证
hello interval 需要保持一致
dead interval 需要保持一致
option 是否接收外部路由,必须和相关区域保持一致

在这里插入图片描述数据包类型:

1. hello包:

用于维护邻居关系
主要通过路由器id,所属区域标识
在这里插入图片描述

2. DD包

DD包一共会发四个,前两个用来选举主和从,后两个用来交互LSA摘要信息
在这里插入图片描述在这里插入图片描述双方在交互主从信息时会都认为自己时主,但是在比较router-id之后,败的那一方会自动认输,身份改成从,并且序列号会改成和主一样

主从选定后双方开始交互LSA摘要,通过LSA类型,id,宣告者来确定这条LSA

在这里插入图片描述

3.LSR

向对方请求对方有,但自己没有的LSA信息,会用过发送摘要的形式请求
在这里插入图片描述

4.LSU

LSU里面的LSA信息是详细的
里面比LSR多了flag字段和type字段,flags字段标识了此接口的身份,是否是虚链路,是否是ABR,是否是ASBR
type字段有所属网段,网段掩码,属于哪类LSA等等
在这里插入图片描述

5.LSACK

对LSU的确认
LSACK和LSR有点相似,里面也是用LSA摘要的方式来表示
在这里插入图片描述ospf的邻居实际上在hello包交互后就建立完成了,后面实际上是和DR,BDR建立邻接关系

不同的网络类型,报文交互的方式也不同

p2p的报文全是通过组播224.0.0.5发送,因为p2p中只有两个人,所以也不用选举DR,BDR

boardcast的hello包是通过组播224.0.0.5发送

DD和LSR是通过单播,如果用组播,其他路由器也会收到影响链路资源,

LSU和LSACK是通过组播224.0.0.5和224.0.0.6发送
224.0.0.6是DRother发给DR或BDR的,224.0.0.5是DR和BDR发给DRother的

虚连接则是全部通过单播的方式交互

不同类型网络的生存和死亡时间也不同
虚连接的生存死亡时间也是10和40
在这里插入图片描述在这里插入图片描述


版权声明:本文为qq_45309500原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。