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

    技术2022-07-11  83

    文章目录

    前言:一、OSPF的基本概念和工作过程1、OSPF路由协议概述1.1、自治系统(AS)1.2、内部网关协议(IGP)1.3、外部网关协议(IGP)1.4、OSPF是链路状态路由协议 2、OSPF工作过程2.1、建立邻居列表2.2、链路状态数据库2.3、形成路由表 3、OSPF基本概念3.1、OPSF区域3.2、Router ID3.3、Router ID选取规则3.4、DR 和 BDR3.5、DR 和 BDR 的选举方法3.6、DR 和 BDR 的选举过程3.7、OSPF的组播地址3.8、OSPF的度量值为COST 二、OSPR的数据包类型1、OSPF数据包2、OSPF的包类型 三、OSPF邻接关系1、OSPF邻接关系的建立(7个状态)(重点)![在这里插入图片描述](https://img-blog.csdnimg.cn/20200701195238579.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ2NTYzOTM4,size_16,color_FFFFFF,t_70)2、OSPF的网络类型3、OSPF的特点(重点)4、OSPF与RIP的比较 四、三台路由器的OSPF实验1、实验目的2、实验需求3、实验括扑4、实验配置5、验证实验6、实验小结:

    前言:

    ​ 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(区域),这点一定不能弄错!!!

    Processed: 0.013, SQL: 9