武汉学院 湖北武汉 430212
【摘 要】OSPF(OpenShortestPathFirst)即开放式最短路径优先协议,它是链路状态路由协议的一种。广泛应用于中大型网络环境中,是一种性能非常优良的路由协议。本文将从ospf缘由、基本概念、特点、数据报状态、网络配置以及通过案例演示效果。意在厘清OSPF协议路由的原理与过程,本文将对研究学习OSPF等链路状态路由协议有一定参考意义。
【关键词】 开放式最短路径优先协议;链路状态路由协议;网络配置;应用场景;
我们常常将路由协议按照内部网关协议和域间路由协议分为两大类。内部网关协议(Interior GatewayProtocol IGP),适用于单个ISP的统一路由协议的运行,一般由一个ISP运营的网络位于一个AS(自治系统)内,有统一的ASnumber(自治系统号),用来处理内部路由。RIP、IGRP(Cisco私有协议)、EIGRP(Cisco私有协议)、OSPF、IS-IS等都是内部网关协议。域间路由协议是光网络中基于链路状态的路由协议,主要用在同一运营网络中不同控制域之间拓扑、资源状态和可达信息交换的路由协议。典型代表就是BGP协议。本文主要研究内部网关协议中的OSPF 协议。具体研究其发展历程、基本概念、典型应用等。旨在系统了解中小网络环境中OSPF的应用。
二、开放式最短路径优先协议简介
(一)中小企业使用OSPF缘由
当前,网络规模随着用户需求、设备性能等因素,逐年越来越大。这样就导致了使用RIP协议将无法满足要求。因为,第一网络规模扩大企业新业务层出不穷,且业务呈现大集中趋势,使得网络规模不断扩大。第二网络可靠性要求提高:各种应用程序对网络可靠性要求越来越高,网络发生故障后,需要在更短的时间内恢复正常。第三网络异构化,多厂商设备互联需求:在日常的运营维护中,硬件设备不断升级或更新,不同设备之间性能差异较大,设备间互连链路带宽也存在一定的差异。需要-种各厂商均支持的开放路由协议。
在上述变化中如果继续使用RIP协议将导致如下弊端:以图2.1为例子
逐跳收敛如图所示,N1网络发生变化,RTA向RTB发出更新,RTB收到更新之后进行本地计算,完成计算后再向RTC发送路由变化通知,如此循环。逐跳收敛的方式,造成了网络收缓慢的问题。
传闻路由更新机制:RIP在计算路由完全依赖于从邻居路由器收到的路由信息,RTE仅依靠从RTD获取的信息计算路由,对RTA、RTB和RTC之间的网络情况并不了解。RIP在计算路由时,缺少对全局网络拓扑的了解。
以“跳数”为度量:因为RIP基于跳数的度量方式,所以N1与N2网络互访时会选择RTA->RTB->RTD->RTE作为最优路径。显然RTB->RTC->RTD之间的以太链路要比RTB->RTD的串行链路带宽要高的多。
因此在较大网络环境中我们引入了OSPF协议来解决RIP协议的不足。
(二)OSPF基本概念
为了了解OSPF协议运行的过程,我们需要弄清楚以下概念:自治系统(As)、区域(Area)、路由器类型和路由类型。一台运行OSPF协议的路由器中,每个OSPF进程必须指定一个用于标识本地路由器的Router-ID,Router-ID是一个32b无符号整数。OSPF的另外一个重要特征就是Area(区域),每台0SPF路由器只能在所属的区域内部学习完整的链路状态信息,并使用组播(224.0.0.5和224.0.0.6)以开销作为度量值,触发更新,每30min发送一次定时更新,不支持自动汇总,支持手动汇总。
OSPF支持区域的划分,从逻辑上将路由器分为不同的组,每个组用区域号来标识。一个网段只能属于一个区域,或者说每个运行OSPF的接口必须指明属于哪一个区域。区域0为骨干区域,骨干区域主要负责在非骨干区域之间发布区域间的路由信息。一个OSPF区域中有且只有一个骨干区域。
OSPF协议支持多种类型的网络都运行在IP协议之上,使用IP协议号89,根据链路层协议类型将这些网络分为广播型、NBMA型、点到多点型、点到点型。因为0SPF:是专门为TCP/IP网络而设计的路由协议,所以,OSPF的各种报文都是封装在IP报文内,可以采用单播或组播的方式发送。OSPF报文主要有以下5种。具体为Hello报文、DD报文、LSR报文、LSU报文、LSACK报文。
OSPF是一种链路状态路由协议, 相邻设备间交换的是链路状态信息,OSPF路 由是在链路状态信息构成的链路状态数据库下形成的。所以在OSPF中,建立设备间的邻居关系,交换彼此的LSDB很重要,而邻居关系的建立流程主要体现在OSPF接口的状态转换过程中。OSPF中共有8种状态机制,分别是Down、Attempt、Init、2-Way、Ex Start、Exchange、Loading、Full。这些概念将在后续具体实例中展现。
(三)OSPF工作原理
如图2.2所示,企业网络是由众多的路由器、交换机等网络设备之间互相连接组成的,类似一张地图。由于众多不同型号的路由器、不同类型的链路及其连接关系,造成了路由计算的复杂性。OSPF的路由计算过程可以简化描述为:路由器之间发现并建立邻居关系。每台路由器产生并向邻居泛洪链路状态信息,同时收集来自其他路由器链路状态信息,完成LSDB(Link State Database)的同步。每台路由器基于LSDB通过SPF算法,计算得到一棵以自己为根的SPT(Shortest Path Tree),再以SPT为基础计算去往各目的网络的最优路由,并形成路由表。
三、 OSPF综合实例
下面通过一个综合实例具体分析OSPF的工作原理、概念、状态变化等,具体工作网络拓扑图如图3.1所示,具体要求如下:
1、按照图示配置路由器接口以及PC的IP地址。
2、按照图示划分OSPF多区域。Router-ID按X.X.X.X规划,R1即为1.1.1.1。三、图中区域2不能和其他区域通信,请通过合理配置解决。
3、R1和R2之间需要快速建立邻居关系,请通过合理配置解决。
4、区域2不能存在其他区域的外部路由,但是可以在R5上引入外部路由。
5、如图所示R5上有三个环回口和一个物理接口G0/0/1连接PC2,请通过import-route的形式将这四个接口引入进OSPF,并做最优汇总。
6、为了安全考虑,需要在OSPF区域0配置认证,认证类型为MD5,密码为huawei@123。认证配置成功后观察区域2还能不能正常访问其他区域比如PC1,如果不能请通过合理配置解决。
7、验证:PC1 和 PC2 可以互访
实验具体步骤如下
1、配置路由器接口及 PC 的 IP 地址
#配置 R1
#
interface GigabitEthernet0/0/0
ip address 10.1.12.1 255.255.255.0
ospf network-type p2p
#
interface GigabitEthernet0/0/1
ip address 172.16.1.254 255.255.255.0
#
#配置 R2
#
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.0
ospf network-type p2p
#
interface GigabitEthernet0/0/1
ip address 10.1.23.2 255.255.255.0
#
#配置 R3
#
interface GigabitEthernet0/0/0
ip address 10.1.23.3 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.34.3 255.255.255.0
#
#配置 R4
#
interface GigabitEthernet0/0/0
ip address 10.1.45.4 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.34.4 255.255.255.0
#
#配置 R5
#
interface GigabitEthernet0/0/0
ip address 10.1.45.5 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 192.168.1.254 255.255.255.0
#
interface LoopBack0
ip address 192.168.0.1 255.255.255.255
#
interface LoopBack1
ip address 192.168.2.1 255.255.255.255
#
interface LoopBack2
ip address 192.168.3.1 255.255.255.255
#
2、配置 OSPF 进程
#配置 R1
#
ospf 1 router-id 1.1.1.1
area 0.0.0.0
authentication-mode md5 1 plain huawei@123 network 10.1.12.1 0.0.0.0
network 172.16.1.254 0.0.0.0
#
#配置 R2
#
ospf 1 router-id 2.2.2.2
area 0.0.0.0
authentication-mode md5 1 plain huawei@123 network 10.1.12.2 0.0.0.0
area 0.0.0.1
network 10.1.23.2 0.0.0.0
vlink-peer 4.4.4.4
#
#配置 R3
#
ospf 1 router-id 3.3.3.3
area 0.0.0.1
network 10.1.23.3 0.0.0.0
network 10.1.34.3 0.0.0.0
#
#配置 R4
#
ospf 1 router-id 4.4.4.4
area 0.0.0.0
authentication-mode md5 1 plain huawei@123 area 0.0.0.1
network 10.1.34.4 0.0.0.0
vlink-peer 2.2.2.2
area 0.0.0.2
network 10.1.45.4 0.0.0.0 nssa
#
#配置 R5
#
ospf 1 router-id 5.5.5.5
asbr-summary 192.168.0.0 255.255.252.0
import-route direct
area 0.0.0.2
network 10.1.45.5 0.0.0.0
nssa
#
#配置 PC1
最终测试结论:
#PC1pingPC2
#查看 OSPF 虚链路状态
四、 OSPF总结
OSPF的总体步骤原理为:系统内每一个运行OSPF协议的路由器记录其接口/连接的链路状态,通过Flooding算法将它们各自的链路状态广播到整个系统中,然后通过DD(数据库描述包)的协商与交换组成链路状态数据库,路由器根据运算得出以自己为根节点,邻接路由为叶子的最短路径树,根据转换形成路由表,并每隔一段时间或者拓扑发生变化时进行更新。OSPF过程的初步学习可以分为以下几个方面:
链路状态邻居的建立—>DR、BDR的选取—>链路数据库的同步—>LSA信息的传播—>
路由表形成的算法。
通过对OSPF协议路由计算的深入研究,能了解OSPF协议路由运算的原理和过程,特别是对几类常见的LSA有更深一步的了解,这对灵活运用OSPF协议、查看网络路由、路由故障排除有非常大的帮助。
参考文献
[1] 王龙珍,孙志军,杨静,那刚,胡海旭.OSPF协议在构建大中型网络中的应用分析[J].现代信息科技,2020,4(15):73-75.
[2] 夏晶.OSPF协议路由计算研究[J].信息记录材料,2020,21(11):223-224.