IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> OSPF之邻居邻接关系 -> 正文阅读

[网络协议]OSPF之邻居邻接关系

OSPF邻居邻接关系

原理概述:
OSPF网络中,路由器在发送任何链路状态信息之前,必须建立起正确的OSPF邻居建立关系。

OSPF路由器是使用Hello报文来建立邻居关系的。OSPF路由器会检查所收到的Hello报文中的各种参数,如Router-ID、Area-ID、认证信息、网络掩码、Hello时间间隔等。如果这些参数和接收接口上配置的对应参数都一一保持一致,则邻居关系就会建立起来,否则就无法建立起邻居关系。

OSPF路由器的邻居关系建立完成之后,下一步才是建立邻接关系。并不是所有的OSPF邻居关系之间都可以建立邻接关系,这取决于OSPF邻居关系之间的网络类型。例如,在点到点网络上,有效的OSPF邻居关系都可以进一步形成邻接关系。在广播型网络上,后选举DR和BDR;DR和BDR会与所有其他路由器都建立邻接关系,其他路由器都建立邻接关系,其他路由器都只与DR和BDR建立邻接关系。

实验目的:

理解OSPF邻居关系和OSPF邻接关系的含义及差别

观察OSPF邻居邻接关系的建立过程

观察OSPF链路状态数据库的同步过程

开始实验;实验拓扑如图所示:

?

1:首先先把接口地址以及网络协议都配置好:

R1:

#

interface GigabitEthernet0/0/0

?ip address 10.0.123.1 255.255.255.0

#

interface GigabitEthernet0/0/1

?ip address 10.0.14.1 255.255.255.0

#

interface GigabitEthernet0/0/2

?ip address 10.0.15.1 255.255.255.0

#

interface NULL0

#

interface LoopBack0

?ip address 10.0.1.1 255.255.255.255

#

ospf 1

?area 0.0.0.0

??network 10.0.1.1 0.0.0.0

??network 10.0.123.0 0.0.0.255

?area 0.0.0.1

??network 10.0.14.1 0.0.0.0

?area 0.0.0.2

??network 10.0.15.1 0.0.0.0

R2:
#

interface GigabitEthernet0/0/0

?ip address 10.0.123.2 255.255.255.0

#

interface GigabitEthernet0/0/1

#

interface GigabitEthernet0/0/2

#

interface NULL0

#

interface LoopBack0

?ip address 10.0.2.2 255.255.255.255

#

ospf 1

?area 0.0.0.0

??network 10.0.2.2 0.0.0.0

??network 10.0.123.0 0.0.0.255

R3:
#

interface GigabitEthernet0/0/0

?ip address 10.0.123.3 255.255.255.0

#

interface GigabitEthernet0/0/1

#

interface GigabitEthernet0/0/2

#

interface NULL0

#

interface LoopBack0

?ip address 10.0.3.3 255.255.255.255

#

ospf 1

?area 0.0.0.0

??network 10.0.3.3 0.0.0.0

??network 10.0.123.0 0.0.0.255

R4:

#

interface GigabitEthernet0/0/0

?ip address 10.0.14.4 255.255.255.0

#

interface GigabitEthernet0/0/1

#

interface GigabitEthernet0/0/2

#

interface NULL0

#

interface LoopBack0

?ip address 10.0.4.4 255.255.255.255

#

ospf 1

?area 0.0.0.1

??network 10.0.4.4 0.0.0.0

??network 10.0.14.4 0.0.0.0

R5:
#

interface GigabitEthernet0/0/0

?ip address 10.0.15.5 255.255.255.0

#

interface GigabitEthernet0/0/1

#

interface GigabitEthernet0/0/2

#

interface NULL0

#

interface LoopBack0

?ip address 10.0.5.5 255.255.255.255

#

ospf 1

?area 0.0.0.2

??network 10.0.5.5 0.0.0.0

??network 10.0.15.0 0.0.0.255

都配置完毕,在这里解释一下:

本实验模拟一个跨国企业网络场景,国内集团总部的路由器R1,R2,R3组成一个广播型网络,国外分公司1的路由器R4与国内集团总部核心路由器R1组成了一个点到点网络,国外分公司2的路由器R5与国内集团总部核心路由器R1组成了另一个点到点网络。

2:我们在每台路由器上都配置了OSPF协议,其中我们如开头的图也可以看出,R1,R2,R3之间的链路属于区域0,R1和R4之间的链路属于区域1,R1和R5之间的链路属于区域2。

配置命令如上所示;

我们配置完成后,查看R1的OSPF邻居建立情况:

?

可以看到,R1的OSPF邻居关系都为FULL,说明邻居邻接关系已经成功建立,在R1上查看OSPF邻居状态的详细信息;

?

可以看到,包含R1,R2,R3的广播网络已经完成了DR/BDR的选举,选举结果如图所示,10.0.123.2(R2)为DR,10.0.123.3(R3)为BDR。R1和R4之间,R1和R5之间的两个点到点网络都没有进行DR/BDR的选举。

在R1上查看广播型网络接口G0/0/0和点到点网络接口G0/0/1的详细信息

?

可以看到,广播网络接口和点到点网络接口默认的Hello时间间隔都为10s,失效时间都为40s。

3:观察OSPF邻居邻接关系的建立过程

首先观察在广播网络上OSPF邻居邻接关系的建立过程。为了在R1上清晰地观察到广播网络上OSPF邻居邻接关系的建立过程,先关闭R1上的G0/0/0和G0/0/1接口。

[R1]int g0/0/1

[R1-GigabitEthernet0/0/1]sh

[R1-GigabitEthernet0/0/1]shutdown

[R1-GigabitEthernet0/0/1]int g0/0/2

[R1-GigabitEthernet0/0/2]sh

[R1-GigabitEthernet0/0/2]shutdown

然后,在R1上查看OSPF邻居关系

?

可以看到,R1和R2、R3的邻居关系都是Full,说明已经建立好了邻接关系。

现在,在R1上重启OSPF的进程,通过Debugging调试观察R1与R2之间的OSPF邻接关系的建立过程。

?

[R1]int g0/0/0

[R1-GigabitEthernet0/0/0]ospf dr-priority 0



[R2]int g0/0/0

[R2-GigabitEthernet0/0/0]ospf dr-priority 0

重启R1和R2上的OSPF进程后,先在DR路由器R3上查看OSPF的邻居建立情况

?

?

可以看到,R3为DR,网络中没有BDR,R3分别与R1和R2建立了邻接关系。

在路由器R1上查看OSPF邻居关系建立情况。

?

?

可以看到,R1与DR路由器R3建立的是邻接关系,状态为FULL,而与DRouthers路由器R2只建立了邻居关系,状态2-Way。

在路由器R1上重启OSPF进程,通过Debugging调试观察OSPF邻居关系的建立过程。

?

?

实验观察到点到点网络中OSPF的邻居关系建立情况,开启R1上的两个接口G0/0/1

G0/0/2


[R1]int g0/0/1

[R1-GigabitEthernet0/0/1]un sh

[R1-GigabitEthernet0/0/1]un shutdown

[R1-GigabitEthernet0/0/1]int g0/0/2

[R1-GigabitEthernet0/0/2]un sh

[R1-GigabitEthernet0/0/2]un shutdown

然后,在R1上查看OSPF邻居建立情况

4:观察OSPF链路状态数据库的同步过程

查看报文情况

?

从图中我们可以观察到OSPF协议的各种数据报文,它们反映LSDB的同步过程,同时也反映了OSPF邻居邻接关系建立的过程:首先,R1(10.0.14.1)和R4(10.0.14.4)通过Hello报文进行协商,然后通过数据库描述(DD:Database Description)报文、链路状态请求(LSR:Link State Ruquest)报文,链路状态更新(LSU:Link State Update)报文等,最终实现了LSDB的同步,并建立起OSPF邻接关系。

下面我们来分析一下R1和R4相互发送的Hello报文:

NO.21(Hello报文):

?

NO.22(Hello报文):

?

可以看出Hello报文中,包含了很多基本信息,例如,子网掩码为24位,Hello间隔时间为10s,路由器死亡时间间隔为40s,网络上没有DR和BDR。另外,R4发布的Hello报文中指出了活跃邻居为R1,这说明R1和R4成功建立了OSPF邻居关系;

NO.23(DD报文):

?

?

NO:24(DD报文):

?

可以发现首次交互的DD报文,其中一位、M位、MS位都设置为1。R1和R4都宣称自己为主路由器。这两个DD报文是不包含数据库摘要信息的。首次DD报文交互后,便可选举出Router-ID较大的R4为主路由器。

备注:如有错误,请谅解!

此文章为本人学习笔记,仅供参考!如有重复!!!请联系本人!

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-02-01 20:56:37  更:2022-02-01 20:57:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 10:30:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码