华为HCIA-Datacom学习笔记------OSPF基础------第五篇


一、前言

●由于静态路由由网络管理员手工配置,因此当网络发生变化时,静态路由需要手动调整,这制约了静态路由在现网大规模的应用。
●动态路由协议因其灵活性高、可靠性好、易于扩展等特点被广泛应用于现网。在动态路由协议之中,OSPF (Open Shortest Path First, 开放式最短路径优先)协议是使用场景非常广泛的动态路由协议之一。
●OSPF在RFC2328中定义,是一种基于链路状态算法的路由协议。
●本篇将初步介绍0SPF基本概念、工作原理和基础配置。


二、OSPF协议概述

(1) 为什么需要动态路由协议

静态路由是由工程师手动配置和维护的路由条目,命令行简单明确,适用于小型或稳定的网络。
静态路由有以下问题:
●无法适应规模较大的网络: 随着设备数量增加,配置量急剧增加。
●无法动态响应网络变化:网络发生变化,无法自动收敛网络,需要工程师手动修改。
在这里插入图片描述

(2) 动态路由协议的分类

在这里插入图片描述
备注:BGP使用一种基于距离矢量算法修改后的算法,该算法被称为路径适量(Path Vector)算法。因此在某些场合下,BGP也被称为路径矢量路由协议。

(3) 距离矢量路由协议

●运行距离矢量路由协议的路由器周期性的泛洪自己的路由表。通过路由的交互,每台路由器都从相邻的路由器学习到路由,并且加载进自己的路由表中。
●对于网络中的所有路由器而言,路由器并不清楚网络的拓扑,只是简单的知道要去往某个目的方向在哪里,距离有多远。这即是距离矢量算法的本质。
在这里插入图片描述

(4)链路状态路由协议-LSA泛洪

●与距离矢量路由协议不同,链路状态路由协议通告的是链路状态而不是路由表。运行链路状态路由协议的路由器之间首先会建立一个协议的邻居关系,然后彼此之间开始交互LSA (Link State Advertisement,链路状态通告)。
在这里插入图片描述备注:链路状态通告,可以简单的理解为每台路由器都产生一个描述自己直连接口状态 (包括接口的开销、与邻居路由器之间的关系等)的通告。

(5)链路状态路由协议-LSDB组建

●每台路由器都会产生LSAs,路由器将接收到的LSAs放入自己的LSDB (Link State DataBase, 链路状态数据库)。路由器通过LSDB,掌握了全网的拓扑。

在这里插入图片描述

(6)链路状态路由协议-SPF计算

●每台路由器基于LSDB,使用SPF (Shortest Path First, 最短路径优先)算法进行计算。每台路由器都计算出一棵以自己为根的、无环的、拥有最短路径的"树"。有了这棵"树",路由器就已经知道了到达网络各个角落的优选路径。
在这里插入图片描述备注:SPF是OSPF路由协议的一个核心算法,用来在一个复杂的网络中做出路由优选的决策。

(7)链路状态路由协议-路由表生成

最后,路由器将计算出来的优选路径,加载进自己的路由表(Routing Table)。
在这里插入图片描述

(8)链路状态路由协议总结

在这里插入图片描述链路状态路由协议有四个步骤:
●第一步是建立相邻路由器之间的邻居关系。
●第二步是邻居之间交换链路状态信息和同步LSDB。
●第三步是进行优选路径计算。
●第四步是根据最短路径树生成路由表项加载到路由表。

(9)OSPF简介

●OSPF是典型的链路状态路由协议,是目前业内使用非常广泛的IGP协议之一。
●目前针对IPv4协议使用的是OSPF Version2 (RFC2328) ;针对IPv6协议使用OSPF Version 3 (RFC2740) 。如无特殊说明本篇后续所指的OSPF均为0SPF Version 2。
●运行OSPF路由器之间交互的是LS (Link State, 链路状态)信息,而不是直接交互路由。LS信息是OSPF能够正常进行拓扑及路由计算的关键信息。
●OSPF路由器将网络中的LS信息收集起来,存储在LSDB中。路由器都清楚区域内的网络拓扑结构,这有助于路由器计算无环路径。
● 每台OSPF路由器都采用SPF算法计算达到目的地的最短路径。路由器依据这些路径形成路由加载到路由表中。
●OSPF支持VLSM (Variable Length Subnet Mask,可变长子网掩码),支持手工路由汇总。
●多区域的设计使得OSPF能够支持更大规模的网络。

(10)OSPF在园区网络中的应用

在这里插入图片描述

(11)OSPF基础术语:区域

●OSPF Area用于标识一个OSPF的区域。
●区域是从逻辑上将设备划分为不同的组,每个组用区域号(Area ID)来标识。
在这里插入图片描述

(12)OSPF基础术语:Router-ID

●Router-ID (Router Identifier,路由器标识符),用于在一个OSPF域中唯一地标识一台路由器。
●Router-ID的设定可以通过手工配置的方式,或使用系统自动配置的方式。
在这里插入图片描述
备注:在实际项目中,通常会通过手工配置方式为设备指定OSPF Router-ID。请注意必须保证在OSPF域中任意两台设备的Router-ID都不相同。通常的做法是将Router-ID配置为与该设备某个接口(通常为Loopback接口)的IP地址一致。

(13)OSPF基础术语:度量值

●OSPF使用Cost (开销)作为路由的度量值。每一个激活了OSPF的接口都会维护一个接口Cost值,缺省时接口Cost值=100 Mbit/s/接口带宽其中100 Mbit/s为OSPF指定的缺省参考值,该值是可配置的。
●笼统地说,一条0SPF路由的Cost值可以理解为是从目的网段到本路由器沿途所有入接口的Cost值累加。
在这里插入图片描述

(14)OSPF协议报文类型

●OSPF有五种类型的协议报文。这些报文在OSPF路由器之间交互中起不同的作用。

在这里插入图片描述

(15)OSPF三大表项-邻居表

OSPF有三张重要的表项,OSPF邻居表、LSDB表和OSPF路由表。 对于OSPF的邻居表,需要了解:
●OSPF在传递链路状态信息之前,需先建立OSPF邻居关系。
●OSPF的邻居关系通过交互Hello报文建立。
●OSPF邻居表显示了OSPF路由器之间的邻居状态,使用display ospf peer查看。
在这里插入图片描述

(16)OSPF三大表项-LSDB表

对于OSPF的LSDB表,需要了解:
●LSDB会保存自己产生的及从邻居收到的LSA信息,本例中R1的LSDB包含了三条LSA。
●Type标识LSA的类型,AdvRouter标识发送LSA的路由器。
●使用命令行display ospf lsdb查看LSDB表。
在这里插入图片描述

(17)OSPF三大表项-OSPF路由表

对于OSPF的路由表,需要了解:
●OSPF路由表和路由器路由表是两张不同的表项。本例中OSPF路由表有三条路由。
●OSPF路由表包含Destination、Cost和NextHop等指导转发的信息。
●使用命令display ospf routing查看OSPF路由表。
在这里插入图片描述

三、OSPF协议工作原理

(1) OSPF路由器之间的关系

●关于OSPF路由器之间的关系有两个重要的概念,邻居关系和邻接关系。
●考虑一种简单的拓扑,两台路由器直连。在双方互联接口上激活OSPF,路由器开始发送及侦听Hello报文。在通过Hello报文发现彼此后,这两台路由器便形成了邻居关系。
●邻居关系的建立只是一个开始,后续会进行一系列的报文交互,例如前文提到的DD、LSR、LSU和LSACK等。当两台路由器LSDB同步完成,并开始独立计算路由时,这两台路由器形成了邻接关系。

(2) 初时OSPF邻接关系建立过程

●OSPF完成邻接关系的建立有四个步骤,建立邻居关系、协商主从、交互LSDB信息,同步LSDB。

在这里插入图片描述

(3) OSPF邻接关系建立流程-1

在这里插入图片描述备注如下
●当一台OSPF路由器收到其他路由器发来的首个Hello报文时会从初始Down状态切换为Init状态。
●当OSPF路由器收到的Hello报文中的邻居字段包含自己的Router ID时,从Init切换2-way状态。

(4)OSPF邻接关系建立流程-2&3

在这里插入图片描述备注:
邻居状态机从2-way转为Exstart状态后开始主从关系选举:
●R1向R2发送的第一个DD报文内容为空,其Seq序列号假设为X。
●R2也向R1发出第一个DD报文,其Seq序列号假设为Y。
●选举主从关系的规则是比较Router ID,越大越优。R2的Router ID比R1大,因此R2成为真正的主设备。主从关系比较结束后,R1的状态从Exstart转变为Exchange.
R1邻居状态变为Exchange后,R1发送一个新的DD报文,包含自己LSDB的描述信息,其序列号采用主设备R2的序列号。R2收到后邻居状态从Exstart转变为Exchange.
R2向R1发送一个新的DD报文, 包含自己LSDB的描述信息,序列号为Y+1。
R1作为从路由器需要对主路由R2发送的每个DD报文进行确认,回复报文的序列号与主路由R2一致。
发送完最后一个DD报文后, R1将邻居状态切换为loading.

(5)OSPF邻接关系建立流程-4

在这里插入图片描述

备注:
邻居状态转变为Loading后,R1向R2发送LSR报文,请求那些在Exchange状态下通过DD报文发现的,但是在本地LSDB中没有的LSA。
R2收到后向R1回复LSU。在LSU报文中包含被请求的LSA的详细信息。
R1收到LSU报文后,向R2回复LSACK报文,确认已接收到,确保信息传输的可靠性。
此过程中R2也会向R1发送LSA请求。当两端LSDB完全一 致时,邻居状态变为Full,表示成功建立邻接关系。

(6)OSPF邻居表回顾

在这里插入图片描述

如图所示输入display ospf peer命令之后,各项参数含义如下:
OSPF Process 1 with Router ID 1.1.1.1: 本地OSPF进程号为1与本端OSPF Router ID为1.1.1.1
Router ID: 邻居OSPF路由器ID
Address: 邻居接口地址
GR State: 使能OSPF GR功能后显示GR的状态(GR为优化功能),默认为Normal
State: 邻居状态,正常情况下LSDB同步完成之后,稳定停留状态为Full
Mode: 用于标识本台设备在链路状态信息交互过程中的角色是Master还是Slave
Priority: 用于标识邻居路由器的优先级(该优先级用于后续DR角色选举)
DR: 指定路由器
BDR: 备份指定路由器
MTU: 邻居接口的MTU值
Retrans timer interval: 重传LSA的时间间隔,单位为秒
Authentication Sequence: 认证序列号

(7)OSPF网络类型简介

●在学习DR和BDR的概念之前,需要首先了解OSPF的网络类型。
●OSPF网络类型是一个非常重要的接口变量, 这个变量将影响OSPF在接口上的操作,例如采用什么方式发送OSPF协议报文,以及是否需要选举DR、BDR等。
●接口默认的OSPF网络类型取决于接口所使用的数据链路层封装。
●如图所示,OSPF的有四种网络类型, Broadcast. NBMA、P2MP和P2P。

在这里插入图片描述

(8)OSPF网络类型(1)

●一般情况下, 链路两端的OSPF接口网络类型必须一致,否则双方无法建立邻居关系。
●OSPF网络类型可以在接口下通过命令手动修改以适应不同网络场景,例如可以将BMA网络类型修改为P2P。

在这里插入图片描述

(9)OSPF网络类型(2)

在这里插入图片描述

(10)DR与BDR的背景

●MA (Multi-Access) 多路访问网络有两种类型: 广播型多路访问网络(BMA) 及非广播型多路访问网络(NBMA)。以太网(Ethernet) 是一种典型的广播型多路访问网络。
●在MA网络中,如果每台OSPF路由器都与其他的所有路由器建立OSPF邻接关系,便会导致网络中存在过多的OSPF邻接关系,增加设备负担,也增加了网络中泛洪的OSPF报文数量。
●当拓扑出现变更,网络中的LSA泛洪可能会造成带宽的浪费和设备资源的损耗。

在这里插入图片描述

(11)DR与BDR

●为优化MA网络中OSPF邻接关系, OSPF指定了三种OSPF路由器身份,DR (Designated Router, 指定路由器)、BDR (Backup Designated Router,备用指定路由器)和DRother路由器。
●只允许DR、BDR与其他OSPF路由器建立邻接关系。DRother之间不会建立全毗邻的OSPF邻接关系,双方停滞在2-way状态。
●BDR会监控DR的状态,并在当前DR发生故障时接替其角色。

在这里插入图片描述

选举规则: OSPF DR优先级更高的接口成为该MA的DR,如果优先级相等(默认为1) ,则具有更高的OSPF Router-ID的路由器(的接口)被选举成DR,并且DR具有非抢占性。

(12)OSPF域与单区域

在这里插入图片描述

(13)OSPF多区域

区域的分类: 区域可以分为骨干区域与非骨干区域。骨干区域即Area0,除Area0以外其他区域都称为非骨干区域。
多区域互联原则: 基于防止区域间环路的考虑,非骨干区域与非骨干区域不能直接相连,所有非骨干区域必须与骨干区域相连。
在这里插入图片描述

(14)OSPF路由器类型

区域内路由器(Internal Router) : 该类路由器的所有接口都属于同一个OSPF区域。
区域边界路由器ABR (Area Border Router) : 该类路由器的接口同时属于两个以上的区域,但至少有一个接口属于骨干区域。
骨干路由器(Backbone Router) : 该类路由器至少有一个接口属于骨干区域。
自治系统边界路由器ASBR (AS Boundary Router) : 该类路由器与其他AS交换路由信息。只要一台OSPF路由器引入 了外部路由的信息,它就成为ASBR。

在这里插入图片描述

(15)OSPF单区域&多区域典型组网

●中小型企业网络规模不大,路由设备数量有限,可以考虑将所有设备都放在同一个OSPF区域。
●大型企业网络规模大,路由设备数量很多,网络层次分明,建议采用OSPF多区域的方式部署。

在这里插入图片描述

四、OSPF协议典型配置

(1)OSPF基础配置命令

Router ID的选择顺序是: 优先从Loopback地址中选择最大的IP地址作为设备的ID号,如果没有配置Loopback接口, 则在接口地址中选取最大的IP地址作为设备的ID号。

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

(2)OSPF配置案列

在这里插入图片描述

(3)OSPF配置案列-配置接口

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

(4)OSPF配置案列-配置OSPF(1)

在这里插入图片描述

(5)OSPF配置案列-配置OSPF(2)

在这里插入图片描述

(6)OSPF配置案列-结果验证(1)

在这里插入图片描述

(7)OSPF配置案列-结果验证(2)

在这里插入图片描述

五、总结

●OSPF是现网中使用广泛的路由协议之一,本篇帮助您初步了解OSPF的基本概念、应用场景和基础配置。
●Router ID、区域、OSPF邻居表、LSDB表和OSPF路由表是OSPF的基本概念。能够阐述OSPF的邻居和邻接关系建立过程,可以帮助您更好的理解链路状态路由协议。
●OSPF有更多有趣的细节,例如LSA的类型、SPF的计算过程和OSPF的特殊区域等。

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是菜鸟@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值