为IP协议报文直接封装OSPF报文, 鉴于OSPF是专为TCP/IP网络所设计的路由协议。上述提及的五种OSPF报文采用相同的OSPF报头格式。

瞧第一个, 字段, 版本字段, 它占1个字节, 用来指出所采用的OSPF协议版本号, 当下最高版本是OSPF v4, 也就是值为4, 对应二进制是0100。
所要表述的"type"指的应当是数据包方面的类型, ospf存在着五种, 分别是hello、dd、lsr、lsu、lsack。
是包的长度,占两个字节,指ospf报头以及报文内容
占4个字节,指报文的生成者的
就是 报文的生成这的
用于校验的是对报头以及报文体所形成的摘要信息, 通过它能校验该报文的完整性与正确性之间怎样一种情况下会出现情况, 与此同时它也会在对于lsa的新旧程度方面产生影响是在什么方面的形式下会出现形式。
认证类型,0:不认证,1:简单认证,2:MD5
:表示认证密码或者摘要信息,当=0时,该字段为空
OSPF中使用来标识路由器
ID是个32位的无符号整数, 它的格式及形式跟IP地址的格式是相同的, ID选举规则是这样: 对于OSPF路由器的ID要手动去配置(通常情况下建议手动配置);要是没手动配置ID, 那么路由器就会把接口里最大的IP地址当作ID来使用;要是没配置接口, 路由器会将物理接口中最大的IP地址用作ID;在OSPF的路由器ID重新配置之后, 能够通过重置OSPF进程去更新ID。
OSPF存在五种报文, 分别是hello报文, dd报文, lsr报文, lsu报文, lsack报文。
hello报文的作用
邻居发现:自动发现邻居路由器。
邻居建立:完成Hello报文中的参数协商,建立邻居关系。
邻居保持:通过机制,检测邻居运行状态。
该 hello 报文的发送时间, 会依据链路的不同情况, 变成 10 秒以及 30 秒, 它是用来进行周期性更新的。
存在一个关于hello报文的老化时间, 此时间必定得是hello时间的四倍, 要是不符合这样的条件, 那就无法建立起邻居关系。
OSPF邻居建立过程:

能够瞧见图中的RTA向RTB发送hello报文, 这时报文里面的内容是null, 是用来发觉邻居的, 当RTB接到这条报文的时候, RTB的状态是init。
RTB发送为null的用于发现邻居的hello, 这与RTA是同步的, ,当RTB收到hello后, 会依据数据包中的源地址而了解到RTA属于自己的邻居, 于是送出新的hello报文用于建立邻居关系, 此时报文情况为RTA的, 当RTA收到这条报文时会从init转换进入2way状态, 同时RTA也会发送为RTB的hello报文, 当RTB收到时会从init进入到2way状态。