OSPF-hello报文主要内容及邻居建立的过程
hello报文发现并建立邻居关系
hello报文的作用:
邻居发现:自动发现邻居路由。
邻居建立:完成hello报文中的参数协商,建立邻居关系。
邻居保持:通过keepalive机制,检测邻居运行状态。
hello报文怎么发的?
1、凡是加入到OSPF协议的物理接口/隧道接口(loopback口不会发),就会主动发送HELLO报文
2、hello源地址为接口的IP地址,目的地址为224.0.0.5(组播地址)
@在P2P链路,broadcast链路每隔10s周期发送。邻居失效时间默认为hello间隔4倍,即40s没收到邻居的hello报文,认为邻居失效,断开邻居关系,并进行重新的路由计算
@在NBMA,P2MP链路每隔30s周期发送。失效时间为120s
hello报文中携带的主要参数
version:ospf版本
Message type:1 hello(2 DD,3LSR,4.LSU 5 LSACK)
Router id:指路由器的ospf的router id
Area id:描述发送hello报文的接口所属的区域
Auth type:0代表空认证,1代表明文1认证,2 MD5认证
Auth data:明文密码/密文的MD5的值
Network mask:发送hello的接口的子网掩码
Hello interval:hello发送周期
option:N bit,Ebit
Router priority:默认是1,用于选举DR/BDR
Dead inteval:邻居失效时间
DR:bro、nbma链路上DR路由器接口的IP地址
BDR:bro、nbma链路上BDR路由器接口的IP地址
如果链路是P2P,P2MP,则DR/BDR取值为0.0.0.0。即不进行DR/BDR的选举
hello中影响邻居关系的因数
1、router id不能冲突
2、area id 要相同
3、auth type 要一致
4、auth data要一致
5、hello间隔要一致
6、dead间隔要一致
7、Nbit和ebit取值要一致
以上7个条件都需要满足才能建立邻居
邻居关系的建立过程

1. RTA和RTB的Router ID分别为1.1.1.1和2.2.2.2。当RTA启动OSPF后,RTA会发送第一个Hello报文。此报文中邻居列表为空,此时状态为Down,RTB收到RTA的这个Hello报文,状态置为Init。
2. RTB发送Hello报文,此报文中邻居列表为空,RTA收到RTB的Hello报文,状态置为Init。
3. RTB向RTA发送邻居列表为1.1.1.1的Hello报文,RTA在收到的Hello报文邻居列表中发现自己的Router ID,状态置为2-way。
4. RTA向RTB发送邻居列表为2.2.2.2的Hello报文,RTB在收到的Hello报文邻居列表中发现自己的Router ID,状态置为2-way。
OSPF 可靠性机制
1、三次握手建立双向邻居关系,避免单边邻居关系。
down:可以发送hello报文,但不携带邻居的router id
Init:收到邻居的hello报文,但邻居没发现自己的router id,单向发送
双方转换为two-way状态后完成OSPF邻居的建立
浙公网安备 33010602011771号