OSPF-2 邻接建立关系

上一期我们说了OSPF的邻居建立关系以及OSPF邻居关系建立中建立失败的因素以及相关实验案例

这一期我们来说说OSPF的邻接关系建立时需要交互哪些报文以及失败因素及原因和相关实验案例

一、概述

在运行了OSPF的网络当中为了交互链路状态信息和路由信息,互相之间需要建立邻接关系。

邻居关系不等于邻接关系

不是所有的邻居关系都可以建立邻接关系

在广播型网络当中(MA网络类型)与NBMA网络类型中,Dr other只与DR/BDR建立邻接关系。

++什么是邻接关系++

邻接关系是建立完邻居关系后进一步建立的,当建立OSPF邻居的两端路由器交互完DD报文以及LSA之后才算建立完邻接关系。

二、OSPF的邻居状态

OSPF的邻居状态

|-------|------------------------------------------------------------|
| Down | 这是邻居的初始状态,表示没有从邻居收到任何信息 |
| Init | 在此状态下,路由器已经从邻居收到了Hello报文,但是自己的Router ID不在收到的Hello报文的邻居列表当中 |
| 2-way | 在此状态下,路由器发现自己的Router ID存在于收到的Hello报文的邻居列表当中 |

OSPF的邻接状态

|----------|----------------------------------------|
| Exstart | 邻居状态变成此状态之后,路由器开始向邻居发送DD报文 |
| Exchange | 在此状态下,路由器与邻居之间相互发送包含链路状态信息摘要的DD报文 |
| Loading | 在此状态下,路由器与邻居之间相互发送LSR报文、LSU报文、LSAck报文。 |
| Full | 路由器完成了邻居的LSDB链路状态数据库同步 |

三、影响OSPF邻接状态的因素

|----------|----------------------------------------------------|
| MTU | 建立邻接关系的两端路由器的接口MTU参数需要一致 |
| 静默接口 | 建立邻接关系的两端路由器的接口不能设置为静默接口,如果设置为静默接口邻居关系也无法建立成功 |
| 过滤OSPF报文 | 建立邻接关系的两端路由器不能配置ACL过滤OSPF报文,如果过滤了OSPF报文邻居关系也无法建立成功 |

++1、MTU++

建立邻接关系的两端路由器的接口MTU值不一致时会卡在Exstart状态,华为默认不开启MTU检查发出的DD报文中的MTU值为0,所以在默认情况下修改MTU的参数并不会直接影响OSPF邻接关系的建立

只有开启了MTU检测后才会把接口的MTU值写入DD报文中

四、OSPF邻接关系过程

|-----------------|-----------------------------------------|
| 邻居状态Down~2-way | 路由器在接口下运行OSPF协议,周期性发送Hello报文发现邻居并建立邻居关系 |
| Exstart | 通过发送DD报文来协商MTU和主从关系,RID大的为主 |
| Exchange | 基于选举出来的主从关系,由从先发送带有链路状态信息摘要的DD报文 |
| Loading | OSPF邻居之间开始交互LSR、LSU、LSAck报文。 |
| Full | LSDB同步完成,OSPF邻居之间完成邻接关系的建立 |

++1、MA广播型网络建立邻接关系过程++

拓扑

(1)基础配置

复制代码
AR1
system
sysname AR1
interface g0/0/0
ip add 192.168.1.1 24

AR2
system
sysname AR2
interface g0/0/0
ip add 192.168.1.2 24

(2)OSPF配置

复制代码
AR1
ospf 1 router-id 1.1.1.1
area 0
network 0.0.0.0 255.255.255.255

AR2
ospf 1 router-id 2.2.2.2
area 0
network 0.0.0.0 255.255.255.255

通过发送Hello报文发现OSPF邻居,建立邻居关系

Down~2-way

当AR1的邻居状态变为Exstart后,AR1会发送第一个DD报文,此报文当中DD报文的序列号为随机的X,I为1表示为第一个DD报文,M为1表示还有后续的DD报文,MS为1表示自己为主

++2-way~Exstart++

我们可以看到在没有配置MTU检查时发送的DD报文中的MTU值默认为0

|----|----------------------------------------------------------|
| I | 是否为第一个DD报文,如果为1表示为第一个,如果为0表示不是第一个 |
| M | 是否有后续的DD报文也可以理解为是否为最后一个DD报文,如果为1代表后续还有,如果为0则为最后一个 |
| MS | 是否为主,如果为1表示为主,如果为0表示为从,所有OSPF邻居在第一个发送DD报文时都认为自己是主所以这里都为1 |

++Exstart~Exchang++

我们可以看到是由从先发送后续的DD报文并且这个DD报文中携带了LSA的摘要信息,也就是有内容的DD报文
++Exchange~Full++

开始交互LSR、LSU、LSAck报文交互LSA链路状态信息

AR1与AR2会发送LSR请求DD报文下发现的并且在本地LSDB中没有的链路状态信息

|-------|------------------------|
| LSR | 请求LSA,只携带LSA的摘要信息类似于目录 |
| LSU | 对LSA的回应,携带全部的LSA信息内容 |
| LSAck | 对LSU的确认,携带LSA的摘要 |

此时就完成了OSPF邻接关系的建立

++2、开启MTU检查后建立邻接关系++

拓扑

这里我们把AR1的接口MTU配置为1400并在两端开启MTU检查看看是否可以建立OSPF邻接关系

这里我们可以看到AR1发送的DD报文中MTU字段为配置的1400并且邻居状态会卡在Exstart状态,查看错误报告时会发现MTU协商错误

到这里本章内容就到此结束了如果有疑问可以+博主私聊,如果哪里有问题欢迎私聊博主及时更改谢谢大家的观看学习!!!

相关推荐
ifeng091814 分钟前
HarmonyOS网络请求优化实战:智能缓存、批量处理与竞态处理
网络·缓存·harmonyos
qq_401700411 小时前
Linux磁盘配置与管理
linux·运维·服务器
恒创科技HK1 小时前
香港大带宽服务器能降低ping值吗 ?
运维·服务器
llilian_161 小时前
智能数字式毫秒计在实际生活场景中的应用 数字式毫秒计 智能毫秒计
大数据·网络·人工智能
爱代码的小黄人1 小时前
华硕主板BIOS设置台式机电脑“Restore AC Power Loss”(断电后恢复状态)设置
运维·服务器·电脑
武汉唯众智创2 小时前
职业院校网络安全靶场实训演练系统建设方案
网络·安全·web安全·网络安全·网络安全靶场实训演练系统·网络安全靶场实训·网络安全实训演练系统
G31135422732 小时前
判断 IP 地址纯净度
服务器·网络
中电金信2 小时前
云原生时代,应用运维模式如何破局?
运维·云原生
北京盛世宏博2 小时前
如何利用技术手段来甄选一套档案馆库房安全温湿度监控系统
服务器·网络·人工智能·选择·档案温湿度
ringking1232 小时前
docker源文件配置以及密钥文件
运维·docker·容器