signed

QiShunwang

“诚信为本、客户至上”

OSPF学习笔记整理

2021/4/26 22:35:48   来源:

OSPF :Open shortest path first

开放式最短路径优先协议

1.协议使用范围:IGP

2.协议算法特点:链路状态型路由协议  SPF(最短路径算法)

3.协议是否传递网络掩码:传递网络掩码(无类别的路由协议)

4.协议封装: 基于IP协议封装,协议号为89   因为是IP协议封装,所以不可靠,通过协议交互方式保证可靠性

一. OSPF 特点

1.OSPF 是一种链路状态型协议  LSA 路由信息(可汇总)和拓扑信息(不可汇总)

2.OSPF 传递的是 LSA (链路状态通告 6种类型LSA  1 2 3 4 5 7--组播使用)

3.OSPF 更新方式: 触发更新  +  30分钟的周期链路状态刷新 --计时器归零(倒计时)   

               其他更新方式

                            增量更新:在进行更新操作时,只更新需要改变的地方,不需要更新或者已经更新过的地方则不会重复更新

                            有界更新:判断接口shutdown对网络有无影响,有影响则做增量更新

4.OSPF 更新地址:

224.0.0.5  指代在任意网络中所有运行OSPF进程的接口都属于该组,于是接收所有224.0.0.5的组播数据包。  

224.0.0.6  otherRouter发送的只有DR BDR可以收到。

5.OSPF 支持区域划分  可以把一个网络分成多个区域--可以减少LSA传播的数量和范围

6.OSPF 是一种比较消耗路由器资源的协议(低速链路需要注意,即低于1.544 Mbps 的通信链路)

二. OSPF 区域

OSPF支持区域的划分: 1.限制LSA的传播范围  2.减少LSA的数量

OSPF 区域的划分:基于接口(链路)

OSPF 区域的标识: 1.十进制数  2.类似于IP地址 A.B.C.D 一般使用91.1.1.1格式,十进制与点分十进制换算则先转化为二进制,然后按八位一组划分。

区域分类:1、骨干区域(0区域---0.0.0.0 只有一个骨干区域)   2、非骨干区域 (非0区域)

区域设计原则

1.OSPF网络中必须存在并且唯一的骨干区域(area 0)(单区域可以不为area 0 )

2.若存在非骨干区域,非骨干区域必须与骨干区域直接相连。area1 area0 area1 或者area2 area0 area1格式。

 

三、OSPF 路由器角色:

骨干路由器:所有接口在area 0

非骨干路由器

ABR:区域边界路由器(骨干区域到非骨干区域)

ASBR:自治系统边界路由器 不同协议间可以通过配置路由器引入,如把RIP引入到OSPF ,该路由器为ASBR

 

四. OSPF 邻居和邻接关系(OSPF 邻居状态机制)

点到点:two-way(无mac地址)后直接进入full

MA网络:2way后需要进行选举判断等过程进入full

邻居(neighbour)   two-way

邻接(Adjacency)  full 

状态描述

Down :关闭状态

Init :初始化状态  一旦发送hello包

Two-way :双向通信状态,邻居状态,收到了包含自己信息的hello包则进入邻居

router-id:可指定,唯一

DR路由器:只有DR路由器(指定路由器,指定的是一个接口)才能与以太网络中所有路由器建立邻居 n*(n-1)/2

DR:指定路由器 并不是路由器概念,而是接口概念,BDR:备份指定

Exstart :预启动状态,发送DBD -数据库描述报文,包含的所有路由信息和拓扑信息的目录

Exchange :预交换,发送LSR链路状态请求   返回LSU链路状态更新

Loading :加载    发送大量的LSR   返回大量的LSU 

Full :邻接状态

 

down——init(初始化)

init——two-way(收到hello包里有自己的router-id则转到two-way)

two-way——exstart(第一个DBD报文---数据描述报文,主从选举DBD,flag字段中有I,M,M/S位,I代表第一个DBD,M代表还有更多DBD,M/S为1代表主,初始条件都为1,最终router-id大的路由器为主,从回复DBD代表选举完成)

exstart——exchange(交互携带LSA目录信息的DBD报文)

exchange——loading(LSR,LSU,LSACK)

loading——full----网络稳定,只发hello包。

 

OSPF建邻条件

1.版本一致.IPv4 版本的OSPF(OSPFv2) 和IPv6版本的OSPF(OSPFv3) 版本报文不兼容。

2.RouterID不能冲突。

3.一条链路的两端 必须在同一个区域。

4.认证类型和密钥相同。

5.hello时间dead时间需要匹配。

 

四.OSPF cost值计算

          开销值  cost= 100Mbps/带宽,即用100/每个需要通过的广播域的带宽,再相加

五.OSPF 消息数据报

Hello:建立邻居,存放router-id,hello--10s发送一次,dead--40s时间(部分特殊情况时间不一样),neighbors(对方的router-id),area id,路由器优先 级(priority),认证类型(0-不做认证,1明文,2密文),数据(密码)等

router-id:标识唯一性,类似于IP地址 A.B.C.D 1.手工指定最优先   2.选举所有环回接口中IP地址最大的  3.选举所有物理接 口 中IP地址最大的

DR:优先级 0-255,0代表放弃选举,默认1,比router-id越大越好不支持抢占,如果需要指定DR则要注意不可抢占特性

主从选举DBD:I M M/S  1 1 1  master slave,比router-id 谁大谁主

DBD:数据库描述,选举主从,发送LSA 目录,隐式确认---提前约定默认值,相同的目录用隐式,剩下的使用显式

LSR:链路状态请求,请求某些LSA信息,ADVrouter--产生者,link-state ID,类型---LSA类型

LSU:链路状态更新,发送LSA详细信息

LSACK:链路状态确认,进行确认    ---显式确认

LSR,LSU,LSACK三条类似TCP的方式。

 

OSPF配置实验

https://blog.csdn.net/qq_42230307/article/details/116175341