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邻居的建立

 

posted @ 2021-10-31 18:16  by02999  阅读(397)  评论(0)    收藏  举报