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 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 学习HCIP三(OSPF1) -> 正文阅读

[网络协议]学习HCIP三(OSPF1)

OSPF:开放式最短路径优先协议

无类别链路状态路由协议,属于IGP(内部网关路由协议)
更新方式:组播更新224.0.0.5、224.0.0.6 ,触发更新,30min一次周期更新。
更新量大:为了在中大型网络中使用,必须进行结构化的部署,即区域划分、地址规划。
判断网络协议的好坏:
1、收敛好
2、选路佳——即无环
3、占用资源少

1、OSPF的数据包: 跨层封装在3层报头 协议号89

在这里插入图片描述
1 、 hello数据包
2 、 数据库描述包–DBD
3 、 链路状态请求包—LSR
4 、 链路状态更新包—LSU
5 、 链路状态确认包—LSAck

LSA—链路状态通告—具体的每条拓扑或路由信息

2、OSPF的状态机

down ——一旦收到对端的hello包进入下一个状态。
init ——初始化,一旦接收到的hello包中存在本地的RID,进入下一个状态。
2way ——双向通讯,邻居关系建立的标志。
在这里插入图片描述

状态含义:
条件:点到点直接进入下一状态,MA网络进行40s的DR/BDR选举,非DR/BDR间不能进入下一状态。
Exstart 预启动——使用不携带数据库目标的DBD包进行主从关系选举,RID数值大为主即优先。
先进入下一个状态
Exchange—— 准交换,使用携带信息的DBD进行数据库目录共享。
Loading ——加载,查看完对端的DBD后,基于本地未知的LSA信息,使用LSR查询,对端使用LSU应答,本地使用LSack确认,来获取所有未知的LSA信息。
FULL——转发,邻接关系建立的标志。

LSDB同步过程如下:
在这里插入图片描述
1、RTA和RTB的Router ID分别为1.1.1.1和2.2.2.2并且二者已建立了邻居关系。当RTA的邻居状态变为ExStart后,RTA会发送第一个DD报文。此报文中,DD序列号被随机设置为X,I-bit设置为1,表示这是第一个DD报文,M-bit设置为1,表示后续还有DD报文要发送,MS-bit设置为1,表示RTA宣告自己为Master。

2、当RTB的邻居状态变为ExStart后,RTB会发送第一个DD报文。此报文中,DD序列号被随机设置为Y(I-bit=1,M-bit=1,MS-bit=1,含义同上)。由于RTB的Router ID较大,所以RTB将成为真正的Master。收到此报文后,RTA会产生一个Negotiation-Done事件,并将邻居状态从ExStart变为Exchange。

3、当RTA的邻居状态变为Exchange后,RTA会发送一个新的DD报文,此报文中包含了LSDB的摘要信息,序列号设置为RTB在步骤2中使用的序列号Y(隐式确认),I-bit=0,表示这不是第一个DD报文,M-bit=0,表示这是最后一个包含LSDB摘要信息的DD报文,MS-bit=0,表示RTA宣告自己为Slave。收到此报文后,RTB会产生一个Negotiation-Done事件,并将邻居状态从ExStart变为Exchange。

4、当RTB的邻居状态变为Exchange后,RTB会发送一个新的DD报文,此报文包含了LSDB的摘要信息,DD序列号设置为Y+1, MS-bit=1,表示RTB宣告自己为Master。

5、虽然RTA不需要发送新的包含LSDB摘要信息的DD报文,但是作为Slave,RTA需要对Master发送的每一个DD报文进行确认。所以,RTA向RTB发送一个新的DD报文,序列号为Y+1,该报文内容为空。发送完此报文后,RTA产生一个Exchange-Done事件,将邻居状态变为Loading。RTB收到此报文后,会将邻居状态变为Full(假设RTB的LSDB是最新最全的,不需要向RTA请求更新)。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、OSPF的工作过程

启动配置完成后,运行ospf协议的路由器,将组播收发hello包;若hello包中存在本地的RID,视为对端已经认识本地,故标志邻居关系建立;生成邻居表
之后条件的匹配,匹配失败将停留于邻居关系,仅hello周期保活即可。匹配成功者间,将建立邻接(毗邻)关系;首先使用不携带数据库目录的DBD进行主从关系选举;之后主优先与从进行DBD目录交换;交换后再使用LSR/LSU/LSack来获取未知的LSA信息;直到邻接间数据库完全一致;生成LSDB表(即链路状态数据库(该网络所有LSA的集合))
当数据库的同步完成后,本地将所有的LSA进行组合;生成有向图—>最短路径树将最佳路径加载到本地的路由表中;网络收敛完成,hello包周期保活。
之后每30min邻接关系间周期比对下一数据库目录(查漏补缺)。
即:
1、启动配置完成后,本地收发hello包,建立邻居关系,生成邻居表。
2、再进行条件的匹配,匹配失败将停留于邻居关系,仅hello包保活即可。
3、匹配成功者之间建立邻接关系,需要DBD共享数据库目录,LSR/LSU/LSack来获取未知的LSA信息,当收集完网络中所有的LSA后,生成数据表–LSDB。
4、LSDB建立完成后,本地基于OSPF选路规则,计算本地到达所有未知网段的最短路径,然后将其加载到路由表中,完成收敛。
5、收敛完成后–hello包周期保活–30分钟周期的BDB比对,若不一致将会使用LSR/LSU/LSack重新获取。

网络结构突变:
1、新增网段——直连新增网段的ospf设备,使用LSU告知本地所有邻接,对端需确认。
2、断开网段——直连断开网段的ospf设备,使用LSU告知本地所有邻接,对端需确认。
3、无法沟通——dead time到时时,断开邻居关系,删除从该邻接学习到信息。

在这里插入图片描述
默认hello 包的hello time 为10s或30s ;dead time 为hello time的4倍。
邻居间hello包中必须完全一致的参数、 hello time和dead time、区域ID、认证字段。
末梢区域标记:在华为设备的体系中,邻居间接口所配置ip地址子网掩码必须完全一致。

4、OSPF的基础配置

[r1]ospf 1 router-id 1.1.1.1
启动时需要定义进程号;进程号仅具有本地意义;
同时配置RID,全网唯一;使用IPV4地址格式;
手工配置—环回接口最大地址数值—物理接口最大地址数值。

宣告:1)区域划分 ;2)激活接口协议 ; 3)传递接口信息。

[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]network 12.1.1.0 0.0.0.255

区域划分规则:
1、星型拓扑(中心到站点、轴辐状) 区域0为骨干,大于0为非骨干;所有非骨干必须连接到骨干区域
2、必须存在ABR—区域边界路由器 –同时连接两个区域
启动配置完成后,邻居间收发hello包,建立邻居关系;生成邻居表
[r2]display ospf peer brief

邻居关系建立后,邻居间进行条件匹配;匹配失败,停留于2way的邻居关系。
匹配成功将建立成为邻接关系,关系间将进行LSA的洪泛、LSDB的同步(OSPF收敛);
完成后,生成LSDB—数据库表

当数据库表完全一致后,本地基于数据库生成有向图,在转换为最短路径树;之后将本地到达所有未知网段的最短路径加载于本地的路由表中。
优先级为10,选路基于cost值进行。
Cost开销值= 参考带宽/接口带宽 向上取整 默认优选整段路径cost值之和最小。
若接口带宽大于参考带宽,cost值为1;可能导致选路不佳;故需要修改默认的参考带宽。
默认参考带宽=100m

[r2]ospf 1
[r2-ospf-1]bandwidth-reference ?
INTEGER<1-2147483648> The reference bandwidth (Mbits/s)
[r2-ospf-1]bandwidth-reference 1000

切记:网络中一定修改参考带宽,需要全网设备修改一致。

5、邻居关系成为邻接关系的条件

邻居关系成为邻接关系的条件基于网络类型决定的。
点到点——OSPF在点到点网络必然成为邻接关系。
MA ——由于OSPF协议没有接口水平分割,故该网段两两间皆邻接,将可能出现大量的重复更新;因此ospf协议在MA网络中将进行DR/BDR选举;所有非DR/BDR间仅为邻居关系。
选举规则:先比较参选接口的优先级,默认1,0-255越大越优;0为不参选
若接口优先级相同,比较参选设备的RID,数值大的优先。

[r2]interface GigabitEthernet 0/0/0
[r2-GigabitEthernet0/0/0]ospf dr-priority 3 修改参选接口的优先级

DR/BDR为选举而非抢占,故修改优先级后不会影响网络选举结果。
因此修改优先级后,需要管理员重启该网段所有设备的ospf进程。

reset ospf process
Warning: The OSPF process will be reset. Continue? [Y/N]:y

还可以将非DR/BDR设备优先级修改为0,这样不需要重启进程。
在这里插入图片描述
P2P:点到点网络
P2MP:点到多点网络
NBMA:非广播型网络
BMA:广播型网络

6、注意

OSPF协议要求邻接关系间接口MTU值必须一致,否则将卡在exstart或exchange状态机;华为设备默认不检测邻接间的MTU。

[r1]interface GigabitEthernet 0/0/1
[r1-GigabitEthernet0/0/1]ospf mtu-enable

要求本地与该接口连接的邻接设备进行mtu值一致。

作业

1、使用OSPF实现全网可达;
2、R1与R3之间,R1为DR,没有BDR;
3、R3与R4,R4为DR,没有BDR。
在这里插入图片描述

解:

1、配置所有设备的IP地址
在这里插入图片描述
2、使用OSPF实现全网可达
1)对R1:

[r1]ospf 1 rou	
[r1]ospf 1 router-id 1.1.1.1
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]net	
[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]net	
[r1-ospf-1-area-0.0.0.0]network 123.1.1.1 0.0.0.0

2)对R2:

[r2]ospf 1 rou	
[r2]ospf 1 router-id 2.2.2.2
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]net	
[r2-ospf-1-area-0.0.0.0]network 
[r2-ospf-1-area-0.0.0.0]net	
[r2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0

3)对R3:

[r3]ospf 1 rou	
[r3]ospf 1 router-id 3.3.3.3
[r3-ospf-1]area 0
[r3-ospf-1-area-0.0.0.0]net	
[r3-ospf-1-area-0.0.0.0]network 123.1.1.3 0.0.0.0
[r3-ospf-1]area 1
[r3-ospf-1-area-0.0.0.1]net	
[r3-ospf-1-area-0.0.0.1]network 3.3.3.3 0.0.0.0
[r3-ospf-1-area-0.0.0.1]net	
[r3-ospf-1-area-0.0.0.1]network 34.1.1.1 0.0.0.0
[r3-ospf-1]display this 
#
ospf 1 router-id 3.3.3.3
 area 0.0.0.0
  network 123.1.1.3 0.0.0.0
 area 0.0.0.1
  network 3.3.3.3 0.0.0.0
  network 34.1.1.1 0.0.0.0
#
return

4)对R4:

[r4]ospf 1 router-id 4.4.4.4
[r4-ospf-1]area	
[r4-ospf-1]area 1
[r4-ospf-1-area-0.0.0.1]net	
[r4-ospf-1-area-0.0.0.1]network 34.1.1.2 0.0.0.0
[r4-ospf-1-area-0.0.0.1]net	
[r4-ospf-1-area-0.0.0.1]network 4.4.4.4 0.0.0.0

3.R1-R3之间R1为DR,没有BDR
先比较接口优先级,然后人为修改优先级。
R1为DR,其他的全是DROTHER。
现在修改除R1外的两个路由器的优先级为0,R1为1,在修改后重启三个路由器,再查询R1的优先级。
修改接口优先级命令:【对应接口:ospf dr-priority +优先级】

1)对R1:
在这里插入图片描述

2)对R2:
在这里插入图片描述
3)对R3:
在这里插入图片描述

4.R3与R4,R4为DR,没有BDR
先修改R4的优先级为0,再修改后重启R3与R4两个由器,最后查询R3的优先级。
1)对R3:
在这里插入图片描述
2)对R4:
在这里插入图片描述

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-07-10 14:49:19  更:2021-07-10 14:49:30 
 
开发: 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/25 17:39:24-

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