OSPF路由协议详情和实验!带大家手把手理解OSPF的协议!还有超详细的OSPF三台路由器的实验!

前言:

​ OSPF路由协议是用于网际协议(IP)网络的链路状态路由协议。该协议使用链路状态路由算法的内部网关协议(IGP),在单一自治系统(AS)内部工作。适用于IPv4的OSPFv2协议定义于RFC 2328,RFC 5340定义了适用于IPv6的OSPFv3。

​ 开放式最短路径优先(Open Shortest Path First,OSPF)是目前广泛使用的一种动态路由协议,它属于链路状态路由协议,具有路由变化收敛速度快、无路由环路、支持变长子网掩码(VLSM)和汇总、层次区域划分等优点。在网络中使用OSPF协议后,大部分路由将由OSPF协议自行计算和生成,无须网络管理员人工配置,当网络拓扑发生变化时,协议可以自动计算、更正路由,极大地方便了网络管理。但如果使用时不结合具体网络应用环境,不做好细致的规划,OSPF协议的使用效果会大打折扣,甚至引发故障。

OSPF协议是一种链路状态协议。每个路由器负责发现、维护与邻居的关系,并将已知的邻居列表和链路费用LSU(Link State Update)报文描述,通过可靠的泛洪与自治系统AS(Autonomous System)内的其他路由器周期性交互,学习到整个自治系统的网络拓扑结构;并通过自治系统边界的路由器注入其他AS的路由信息,从而得到整个Internet的路由信息。每隔一个特定时间或当链路状态发生变化时,重新生成LSA,路由器通过泛洪机制将新LSA通告出去,以便实现路由的实时更新。

一、OSPF的基本概念和工作过程

1、OSPF路由协议概述

在这里插入图片描述

1.1、自治系统(AS)

多个路由跑相同路由进程协议的区域 成为AS区域系统。

1.2、内部网关协议(IGP)

在区域内部跑的进程协议

如:RIP,OSPF,ISIS等

1.3、外部网关协议(IGP)

在区域外跑的进程协议

1.4、OSPF是链路状态路由协议

在这里插入图片描述

2、OSPF工作过程

在这里插入图片描述

2.1、建立邻居列表

如图,A通过建立邻接关系,学习到所有的链路状态信息,即所有的网段信息。

2.2、链路状态数据库

A将学习到的链路状态信息存储在自己的链路状态数据库中。

2.3、形成路由表

A的链路状态数据库通过 Dijkstra算法 算出A到达每一个地点的最短路径,形成最短路径树。最终生成路由表。

3、OSPF基本概念

3.1、OPSF区域

OSPF在AS内划分多个区域,其中必须有个骨干区域,且骨干区域有且仅有一个。骨干区域负责区域间路由信息传播。

另,其他区域必须经过骨干区域转发,所有区域必须和骨干区域直接连接!

其他称作标准区域或非主干区域。

区域ID可以表示层一个十进制的数字。即area 0(0-9)

每个OSPF路由器只维护所在区域的完整链路状态信息

在这里插入图片描述

3.2、Router ID

OSPF区域内唯一标识路由器的IP地址。

3.3、Router ID选取规则

优先选取loopback接口最为Router ID,因为loopback是路由器上的虚接口,这样的话,即使物理端口损坏也不影响Router ID。

也可以使用 router-id 命令指定Router ID。这个命令是我们常用的。
在这里插入图片描述

3.4、DR 和 BDR

DR ,BDR 和其他路由中

1 DR: 区域当中的主路由,有且仅有一个

2 BDR:区域当中的备份路由,有且仅有一个

3 除了DR 和 BDR 都是其他路由

其他路由器只和 DR 和 BDR 形成邻接关系。主路由负责通告信息,备份路由负责准备顶替 DR

其他路由器发送信息只能到达DR 和BDR(一个组播) ,DR再发送通告信息(第二个组播)。其中存在两个组播信息。

DR 和 BDR 负责监控其他路由发来的信息。

3.5、DR 和 BDR 的选举方法

1、自动选举DR和BDR

  • 网段上Router ID最大的路由器将被选举为DR,第二大的
    将被选举为BDR。

网段上Router ID最大的路由器将被选举为DR,第二大的
将被选举为BDR。

2、手工选择DR和BDR

  • 优先级范围是0 ~ 255,数值越大,优先级越高,默认为1。
  • 如果优先级相同,则需要比较Router ID。
  • 如果路由器的优先级被设置为0,它将不参与DR和DBR
    的选举。

在这里插入图片描述

3.6、DR 和 BDR 的选举过程

路由器的优先级可以影响一个选举过程,但是他不能强制更换已经存在的DR或BDR路由器。
意思就是如果第一个路由器已经开启了DR,然后第二个路由器也开启了BDR,那么第三个路由器就算数值比他们高那也是无法更改现有的DR和BDR!

3.7、OSPF的组播地址

DR、BDR向Dothers发送的组播的地址是 224.0.0.6
Dothers向DR和BDR发送的组播的地址是 224.0.0.5

3.8、OSPF的度量值为COST

COST=10^8/BW BW(带宽) COST 数制越小越好,说明带宽越高

COST越低,带宽越高,路径越短。

最短路径是基于接口指定的代价cost计算的
在这里插入图片描述

二、OSPR的数据包类型

1、OSPF数据包

承载在IP数据包,协议号是89

2、OSPF的包类型

在这里插入图片描述

三、OSPF邻接关系

1、OSPF邻接关系的建立(7个状态)(重点)在这里插入图片描述

在这里插入图片描述在这里插入图片描述

2、OSPF的网络类型

①点到点网络(Point-to-Point)
②广播多路访问网络(Broadcast MultiAccess, BMA)
③非广播多路访问网络(None Broadcast MultiAccess,NBMA)
④点到多点网络(Point-to-Multipoint)

3、OSPF的特点(重点)

①可适应大规模网络
②路由变化收敛速度快
③无路由环
④支持变长子网掩码VLSM
⑤支持区域划分
⑥支持以组播地址发送协议报

4、OSPF与RIP的比较

在这里插入图片描述

四、三台路由器的OSPF实验

1、实验目的

​ 最早是静态路由协议,静态路由协议的弊端是必须在每一台机器的端口上配置去往的网段,下一跳。后来出现了距离矢量路由协议RIP,通过跳数(Hop Count)来衡量到达目的地址的距离。它可以做到对运行了协议的机器自动发布路由,省下了繁琐的路由配置过程。

​ 但是rip协议最多只能达到15跳,而且存在着收敛慢、路由环路、可扩展性差等问题,于是诞生了ospf协议,ospf协议作为基于链路状态的路由协议拥有以下优点:

  • OSPF采用组播形式收发报文,这样可以减少对其它不运行OSPF路由器的影响。
  • OSPF支持无类型域间选路(CIDR)。
  • OSPF支持对等价路由进行负载分担。
  • OSPF支持报文加密。

2、实验需求

​ 通过三台路由器使用指定Router—ID命令指定DR、BDR、Dothers,然后查看OSPF路由协议的工作过程。

3、实验括扑

4、实验配置

这时候我们要注意!

当我们分别在AR1、AR2、AR3里面输入 network 13.0.0.0 0.0.0.255 的时候

不要按回车!!!不要按回车!!!不要按回车!!!重要的事情说三遍!!!

我们输入完之后,先在AR1里面敲回车,然后在AR2里面敲回车,最后在AR3里面敲回车。

这样做的目的是,我们可以验证之前说的选举DR、BDR、Dothers的规则。

  • 优先级范围是0—255,数值越大,优先级越高,默认为1
  • 如果优先级相同,则需要比较Router ID
  • 如果路由的优先级被设置位0,它将不参与DR和DBR的选举
AR1
sysname R1

interface GigabitEthernet0/0/0
 ip address 12.0.0.1 255.255.255.0 

interface LoopBack0
 ip address 1.1.1.1 255.255.255.255 

ospf 1 router-id 1.1.1.1 
 area 0.0.0.0 
  network 12.0.0.0 0.0.0.255 

AR2
 sysname R2
 
 interface GigabitEthernet0/0/0
 ip address 12.0.0.2 255.255.255.0 
 
 interface LoopBack0
 ip address 2.2.2.2 255.255.255.252 

ospf 1 router-id 2.2.2.2 
 area 0.0.0.0 
  network 12.0.0.0 0.0.0.255 

AR3
 sysname R3
 
 interface GigabitEthernet0/0/0
 ip address 12.0.0.3 255.255.255.0 

interface LoopBack0
 ip address 3.3.3.3 255.255.255.255 

ospf 1 router-id 3.3.3.3 
 area 0.0.0.0 
  network 12.0.0.0 0.0.0.255 

5、验证实验

当我们做了如上实验之后,开始进行抓包验证!
首先是Hello报文

在这里插入图片描述
然后在Hello报文里面选举DR和BDR。
然后我也标出了两个邻居

在这里插入图片描述如下图就是该实验报文的过程
先后出现了
Hello,DBD,LSR,LSU,LSAck报文
在这里插入图片描述

6、实验小结:


其实我们在上面分别输入
AR1、AR2、AR3里面输入 network 13.0.0.0 0.0.0.255 的时候
顺序也可以从R1>R2>R3开始回车,可以验证一下是否是从数值最大的开始选举DR和BDR

我们在配置OSPF命令的时候要在同一个Area(区域),这点一定不能弄错!!!

猜你喜欢

转载自blog.csdn.net/m0_46563938/article/details/107070546
今日推荐