唐国良 李浩杰
(河南中医学院信息技术学院,河南 郑州 450008)
OSPF(Open Shortest Path First,开放最短路径优先)是一个开放标准的路由选择协议,被各种网络开发厂商广泛支持,其中包括思科的路由器和交换机,OSPF是目前使用最广泛的IGP(Interior Gateway Protocol,内部网关协议)路由协议[1]。Packet Tracer V5.3模拟器是Cisco公司开发的网络仿真工具软件,利用Packet Tracer V5.3学习各种组网实验,是一种高效低成本的网络实验解决方案,是开展网络实验教学行之有效的方法,具有较高的实用价值。
OSPF协议是一个典型的链路状态路由协议,是一个IETF标准。作为一种内部网关协议,用于在同一个AS(Autonomous System,自治系统)中的路由器之间交换路由信息。采用OSPF的路由器彼此交换并保存整个网络的链路信息,从而掌握全网的拓扑结构,独立计算路由。由于OSPF采用多播和Dijkstra算法,产生一个无环路径图表,具有快速收敛、支持VLSM(Variable Length Subnet Mask,可变长子网掩码)、适合组建大型网络、带宽利用率高、对坏消息有较小的敏感性等优点,使得在当前应用的路由协议中占有相当重要的地位。目前广为使用的是OSPF第二版,最新标准为RFC2328。
路由协议OSPF的工作原理如图1所示。具体由以下5步:
图1 OSPF的工作原理示意图
(1)路由器间相互发送Hello报文,建立邻居关系。
(2)每台路由器向每个邻接发送 LSA(Link-State Advertisement,链路状态通告)。每个邻接在收到LSA之后要依次向它的邻接转发这些LSA。
(3)通过在一个区域中泛洪LSA,所有的路由器构建完全相同的LSDB(Link-State Database,链路状态数据库)。
(4)待数据库完成后,每台路由器基于本地的LSDB,执行SPF(Shortest Path First,最短路径优先)算法,以本地路由器为根,生成一个SPF树。
(5)基于SPF树,计算到每一个目的网络的最短路径,也就是路由表。
运行Packet Tracer V5.3,在“Custom Made Devices”模式下,向工作区域中拖入3个2811路由器,并修改名字分别为R1、R2和R3,然后在“Connections”模式下,用“Serial DCE”将各路由器进行连接,最后用工具栏中的“Draw ing Palette”将拓扑图圈起来,并用工具栏中的“Place Note”标签将各路由器的基本信息在图中标出,最终的实验拓扑图如图2所示:
图2 单区域点到点链路的实验拓扑图
各设备的IP分配情况如表1所示:
表1 IP地址分配
第一步:配置3台路由器,实现基本连通性
第三步:实验调试
(1)查看OSPF的Hello包
以路由器R1为例,在特权模式下,用“debug ip ospf events”命令,部分输出结果如下:
从上面可以看到,在00:14:15的时候,OSPF中发送一个hello,是从Area0中router-id为2.2.2.2的路由器发出的;是通过IP地址为12.1.1.2的Serial0/0/0这个接口发出的,接下来的10秒00:14:25的时候,收到了同样的hello包。
类似的,在路由器R2和R3的特权模式下,查看hello信息,只不过时刻、接口和地址不同罢了。
(2)查看OSPF邻居表
在特权模式下,用“show ip ospf neighbor”查看相邻路由器信息,以R2为例,由下面的输出可看出,R2连接两个路由器,RouterID为1.1.1.1和3.3.3.3,两台路由器的接口OSPF的优先级均为0,不具有DR/BDR的选举权,且都达到了FULL状态。
(3)查看OSPF数据库表
在特权模式下,使用“show ip ospf database”命令查看OSPF链路状态数据库。路由器R1的链路状态数据库如下。
路由器R2的链路状态数据库如下:
(4)查看OSPF路由表
以R1为例,在特权模式下,用“show ip route”查看路由表信息,从下面的输出可以看到,除了直连网段12.1.1.0外,R1还学习到了网段23.1.1.0/30,标识符为“O”(表示是通过OSPF学习到的)。[110/128]中,“110”表示OSPF的管理距离,“128”表示cost值。“12.1.1.2”表示到达目标网络23.1.1.0的下一跳,“Serial0/0/0”为下一跳的接口。
运行Packet Tracer V5.3在“Custom Made Devices”模式下,向工作区域中拖入4个2811路由器,并修改名字为R1、R2、R3和R4,然后在“Connections”模式下,用“Serial DCE”将各路由器连接,最后用工具栏中的“Draw ing Palette”将各区域圈起来,并用右边工具栏中的“Place Note”标签将各路由器的基本信息在图中标出,最终的实验拓扑如图3所示:
图3 多区域点到点链路的实验拓扑图
各路由器的IP分配情况如表2:
表2 IP地址分配
第一步:配置4台路由器,实现基本连通性
第二步:启用OSPF路由协议
第三步:实验调试
稍等一会儿,在特权模式下,使用“show ip route”命令,可以查看各路由器上的路由条目。从各路由器显示的结果来看,每个路由器都学到了到达全网中每个目的网段的路由,即掌握了整个网络的拓扑信息。
虚链路是指一条通过一个非骨干区域连接到骨干区域的链路。包括两种情况:一是没有与Area0直接相连的区域;二是分割的Area0区域。这样做,一方面是变相的允许非骨干区域不用物理的连接到骨干区域;另一方面是可以修改不连续的骨干区域。
3.3.1 没有与Area0连接的区域组网
第一步:在3.2的基础上将Area0与Area1互换
第二步:实验调试
在特权模式下,对各路由器用“show ip route”命令可以看到,只有路由器R3知道到达全网的路由,而路由器R1和R2只知道12.1.1.0/30和23.1.1.0/30的网段,路由器R4路由表中只有其直连网段34.1.1.0/30的路由。虽然在这个自治系统中运行着OSPF,但各路由器并不能都了解整个网络拓扑的状态信息,这就需要对路由器R2和R3进行虚链路的配置。
第三步:虚链路的配置
第四步:实验调试
待配置完成后,需要一定的延时。然后在特权模式下,对各路由器再用“show ip route”命令可以看到,所有的路由器都学习到了到达全网中每个目的网段的路由条目。
3.3.2 分割的Area0的组网
第一步:在3.3.1的基础上将Area2换成Area0
第二步:实验调试
稍等一会儿,在特权模式下,对4台路由器用“show ip route”查看各路由器的路由信息。结果发现路由器R1和R2没有学习到34.1.1.0/30的网段,而路由器R3和R4没有学习到12.1.1.0/30的网段,也就是说,在此情况下,该自治系统中的各路由器没有学习到整个网络的拓扑信息。这就需要配置虚链路以达到每台路由器对全网中每个目的网段的掌握。
第三步:虚链路的配置
第四步:实验调试
稍等一会儿,在特权模式下,对4台路由器再用“show ip route”命令查看各路由器的路由信息。从显示的结果可以看到4台路由器均学习到了到达全网中每个目的网段的拓扑信息。
在实验室中采用Packet Tracer V5.3模拟软件将有效改善教学效果,节约学校的设备投入,具有广泛的推广价值。通过虚拟平台对OSPF点到点链路的区域组网的模拟,初步了解了点到点链路OSPF区域组网的类型及相关的配置方法。有助于学生对OSPF路由协议的进一步理解和掌握,提升一定的工程实践经验。
[1]崔北亮.CCNA认证指南(640-802)[M].北京:电子工业出版社,2009.
[2]万晓琳.利用PACKET TRACER 5.0组建CISCO网络实训平台[J].电脑知识与技术,2009,5(21):5914-5915.
[3]杨华,黄静.基于virtual-link解决OSPF孤岛问题[J].桂林航天工业高等专科学校校报,2008,(3):30-31.
[4]Jeff Doyle.Routing TCP/IP VolumeⅠ (CCIE Professional Development).Routing TCP/IPVolumeⅠ(CCIE Professional Development),1998.