当前位置: 首页 > news >正文

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报文
LoadingOSPF邻居之间开始交互LSR、LSU、LSAck报文。
FullLSDB同步完成,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协商错误

 

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

相关文章:

  • CentOS7安装DNS服务器bind
  • 为什么 NFS 不适合作为 TDengine 的数据存储
  • 在使用element-ui时表单的表头在切换页面时第一次进入页面容易是白色字体解决方法
  • SSR 框架是什么?
  • C#中继承的核心定义‌
  • 创新实践分享:基于边缘智能+扣子的智能取物机器人解决方案
  • PHP语言的开源贡献
  • MFCday01、模式对话框
  • 编译支持 RKmpp 和 RGA 的 ffmpeg 源码
  • 【面试】Redis
  • 数据类设计_图片类设计之5_不规则类图形混合算法(前端架构)
  • Git的详细使用方法
  • 【每日学点HarmonyOS Next知识】路由栈问题、图片圆角、颜色资源转十六进制字符串、数据集变化崩溃、组件声明周期
  • Selenium 中的 alert 处理
  • VLAN和Trunk实验
  • 套接字缓冲区以及Net_device
  • Unity开发的抖音小游戏接入抖音开放平台中的流量主(抖音小游戏接入广告)
  • 全面解析:将采购入库单数据集成到MySQL的技术实施
  • 大模型LLM基于PEFT的LoRA微调详细步骤---第一篇:模型下载篇
  • Mysql 的事务隔离级别相关问题
  • 经济日报:人工智能开启太空经济新格局
  • 以军称已开始在加沙的新一轮大规模攻势
  • 3月中国减持189亿美元美债、持仓规模降至第三,英国升至第二
  • 爬坡难下坡险,居民出行难题如何解?
  • 一条铺过11年时光的科学红毯,丈量上海科创的“长宽高”
  • 病愈出院、跳大神消灾也办酒,新华每日电讯:农村滥办酒席何时休