OSPF的数据包协议

OSPF协议是一个跨四层封装协议,三层协议号为 — 89

OSPF头部内容

ospf在ip包中的协议号 ospf的协议号是多少_OSPF


版本 — OSPF的版本 — 在ipv4网络环境下,一般使用OSPFV2,所以,对应的版本字段为2

类型 — OSPF数据包的类型

hello — 1

DBD — 2

LSR — 3

LSU — 4

LSACK — 5

RID — 发送数据包的路由器的RID

区域ID — 代表数据包从哪个区域发出

校验和 — 确保数据完整性

认证类型 — null — 不认证 ---- 0

— simple — 明文人证 — 1

— MD5认证 — 通过对比摘要值进行认证 — 2

---- OSPF在进行认证比对时需要同时比对认证类型和认证数据,都相同则通过认证hello包 — 周期发现、建立、保活邻居关系

ospf在ip包中的协议号 ospf的协议号是多少_网络协议_02


网络掩码 — 发出hello包接口配置的ip地址的子网掩码

——在华为设备中,要求邻居设备接口的子网掩码必须相同,否则将无法建立邻居关系 — 只针对以太网

hello时间以及路由器失效时间 ---- 在建立邻居关系的时候,也必须保持倍数关系,如果不同则将无法正常建立邻居关系(19 40)

8位可选项 — 每一位都代表路由器的某个OSPF特性
8位中有在特殊区域的标记位,如果邻居间特殊标记为不同,则也无法正常建立邻居关系

路由器的优先级 — 进行DR/BDR选举时使用,代表发出这个数据包的接口优先级

指定路由器/备份指定路由器 ---- DR/BDR, 一旦DR和BDR选举完成,则将会把DR/BDR对应接口的IP地址携带上,在DR/BDR没选出来,或者不需要选择时,对应字段使用0.0.0.0代替。

邻居关系建立的限制因素:
1、网络掩码 --- 只针对以太网
2、hello时间
3、死亡时间
4、特殊区域的标记
5、认证信息

DBD包 ---- 数据库描述报文 ---- 主从关系选举以及携带数据库摘要信息进行目录共享

注意 — 在exstart状态下需要使用DBD包进行主从关系选举,其目的一方面是为主的可以优先开始LASA信息交换,另一个目的是为了隐形确认

ospf在ip包中的协议号 ospf的协议号是多少_ospf在ip包中的协议号_03


接口的最大传输单元 — MTU — 华为设备默认不进行MTU值的检测,所以,一般携带值为0.可以通过命令开启MTU值得检测,但注意,MTU值要求邻居双方必须相同,不同可能导致邻居关系停留在EXSTART状态

I — init — 该位置1,则代表这个数据包是用来进行主从关系选举的,主从关系选举的数据包不携带LSA头部信息(LSDB摘要
信息)
M ---- More ---- 该位置1,则代表该DBD包后还有更多的DBD包。该位置0则代表该数据包为最后一个DBD包

MS — Master ---- 该位置1,则代表这个DBD包由主发送,置0则代表由从发送送

序列号 — 在DBD包交互过程中,会逐次加1,用来确保DBD报文传输的有序性,同时还可以进行隐形确认,保证DBD包传输
的可靠性
(在交互完数据库摘要信息后,从会额外发送一个DBD包,这个DBD包使用主最后发送的序号,但并不携带摘要信
息,其主要目的是进行确认)
隐形确认 — 主从关系确认后,有主主导序列号,从只能使用主发送的序列号进行回复,起到确认的效果。

LSR包 — 链路状态请求报文

ospf在ip包中的协议号 ospf的协议号是多少_链路_04


链路状态类型,链路状态ID,通告路由器 ---- 可以唯一的标定出一条LSA信息,为我们将他们称之为LSA的“三元组”LSU包 ---- 用于发送LSA具体信息给邻居,或者用于洪泛LSA,或者用于隐式回应LSU报文。

ospf在ip包中的协议号 ospf的协议号是多少_网络协议_05


LSACK — 链路状态确认报文

ospf在ip包中的协议号 ospf的协议号是多少_网络协议_06