基于Packet Tracer的多区域OSPF仿真实验设计

2021-01-14 00:47赵婧如
现代信息科技 2021年14期

摘  要:链路状态路由协议OSPF是目前业内使用最为广泛的IGP,协议原理复杂。基于Packet Tracer进行多区域OSPF仿真实验设计,充分体现分层路由思想,结合链路状态数据库分析和路由分析,对比区域内部路由器和区域边界路由器LSDB和路由表项的异同,明确多区域关系,以及收敛后各区域LSDB的同步状。实验逻辑清晰,有助于学生在实际应用场景中灵活运用相关理论正确部署OSPF路由协议。

关键词:多区域;开放最短路径优先协议;链路状态通告;Packet Tracer

中图分类号:TP393       文献标识码:A文章编号:2096-4706(2021)14-0113-04

Abstract: Link state routing protocol OSPF is the most widely used IGP in the industry at present, and the protocol principle is complex. The multi area OSPF simulation experiment is designed based on Packet Tracer, which fully reflects the idea of hierarchical routing. Combined with link state database analysis and routing analysis, the similarities and differences between LSDB and routing table items of regional internal router and regional boundary router are compared, and the multi area relationship and the synchronization of LSDB in each area after convergence are clarified. The experimental logic is clear, which is helpful for students to flexibly use relevant theories to correctly deploy OSPF routing protocol in practical application scenarios.

Keywords: multi area; open shortest path first protocol; link state advertisement; Packet Tracer

0  引  言

OSPF是一種典型的链路状态路由选择协议,应用广泛[1,2]。OSPF用于一个自治系统内部[3,4],在这个自治系统中,每个OSPF路由器都维护着一个链路状态数据库(Link-State Database, LSDB),并基于LSDB中存储的链路状态信息,利用路由算法计算出到达目的地的最佳路由,生成路由表。

链路状态信息包括当前路由器与哪些路由器相邻,以及该路由器到达邻居的度量值,OSPF通过洪泛链路状态通告(Link-State Advertisement, LSA)将自己的链路状态信息传送给其他路由器。OSPF基于和带宽相关的度量进行选路,选择最快的无环路径,常用于大型网络[5]。

1  区域

OSPF将一个自治系统划分为多个区域(area),即将AS这个大的路由器组划分为多个较小的路由器组。区域不能相互重叠,不同区域通过区域边界路由器(Area Border Router, ABR)相连,区域间可以通过路由总结(Summary)来减少路由信息,缩减路由表,提高路由器的运算速度。

每一个区域都有该区域独立的LSDB及网络拓扑结构,这意味同在一个区域的所有路由器都维护着相同的LSDB。ABR与多个区域相连,它维护有与其相连的每一个区域的LSDB。不同区域的LSDB是各自独立的,不同区域的最短路径优先(Shortest Path First, SPF)算法也是分开进行运算的。

每个使用OSPF的AS中都有一个主干区域,称为0号区域(Area 0),其主要工作是在其他区域间传递路由信息。其他所有区域都要求连接到主干区域上,所以,从AS的任何一个区域出发,经过主干区域,总是可以到达该AS的任何其他区域。当一个区域对外广播时,其路由信息首先传递至主干区域,再由主干区域将该路由信息向其余区域广播。主干区域与其余区域的关系可以用图1来说明。

2  常见的OSPF LSA类型

OSPF使用LSA来承载链路状态信息,完成LSDB同步和路由选择,OSPF定义了多种类型的LSA,使用较多的是类型1~5和7,表1列举本实验设计涉及的两种LSA[6]。

3  多区域OSPF仿真实验设计

Cisco公司的Packet Tracer是一款能够进行复杂网络设计与配置实现的可视化界面仿真软件,支持的网络设备种类、型号齐全,能够满足中大型综合性实验需求。在PT中利用具有Serial接口的路由器4台、交换机2台、计算机2台,搭建如图2所示网络拓扑。

3.1  路由器接口配置

参照表2分别配置路由器 R1至R4各接口的IP地址、子网掩码,并且激活接口。

3.2  主机协议参数配置

参照表3分别配置主机PC1和PC2接口的IP地址、子网掩码。

3.3  OSPF协议配置

在4台路由器上分别启用OSPF,并使用“router-id”命令设置路由器ID(也可提前配置环回接口地址,作为路由器ID),R1至R4的ID依次为10.0.0.1、10.0.0.2、10.0.0.3、10.0.0.4。设置好路由器ID之后,指定连接网络并设定所在区域:R1属于area1、R2跨接area0和area1、R3跨接area0和area2、R4属于area2。各路由器配置如下文所示:

(1)路由器R1的配置:

R1(config)#router ospf 1

R1(config-router)#router-id 10.0.0.1

R1(config-router)#network 172.16.0.0 0.0.255.255 area 1

R1(config-router)#network 192.168.1.0 0.0.0.255 area 1

(2)路由器R2的配置:

R2(config)#router ospf 1

R2(config-router)#router-id 10.0.0.2

R2(config-router)#network 192.168.1.0 0.0.0.255 area 1

R2(config-router)#network 192.168.0.0 0.0.0.255 area 0

(3)路由器R3的配置:

R3(config)#router ospf 1

R3(config-router)#router-id 10.0.0.3

R3(config-router)#network 192.168.0.0 0.0.0.255 area 0

R3(config-router)#network 192.168.2.0 0.0.0.255 area 2

(4)路由器R4的配置:

R4(config)#router ospf 1

R4(config-router)#router-id 10.0.0.4

R4(config-router)#network 192.168.2.0 0.0.0.255 area 2

R4(config-router)#network 172.17.0.0 0.0.255.255 area 2

3.4  测试主机连通性

分别为 R1~R4正确配置OSPF路由协议后,用ping命令测试PC1~PC2之间的连通性,发现主机间连通性良好。在主机PC1上利用“tracert”命令跟踪到达PC2的路由,如图3所示,从PC1出发以此经过R1~R4,证明路由已生效。

3.5  OSPF链路状态数据库分析

分别在4台路由器上使用“show ip ospf database”命令查看LSDB。图4和图5分别为区域内部路由器R1和区域边界路由器R2的链路状态数据库(其他路由器的LSDB与之类似)。

“Router Link States (Area N)”列出的是Area N的类型1的LSA条目,类型1的LSA能够描述本路由器的多个链路,在一个区域内每个路由器都会产生一个类型1的LSA并将其泛洪到当前区域。“Link ID”实际上指的是Link-State ID,这是LSA的唯一ID,取值为产生该LSA的路由器的ID,“ADV Router”是产生该LSA的路由器的ID;“Age”是LSA条目的老化时间。“Seq#”是LSA的序列号;“Checksum”是LSA的校验和;“Link count”是通告路由器(ADV Router)在本区域内检测到的活动链路数目。

“Summary Net Link States (Area N)”的表列出的是Area N的类型3的LSA条目。ABR路由器针对某个区域内的每个网络产生一个类型3的LSA并将其洪泛到其他区域。以R1的“Summary Net Link States (Area 1)”表为例,表中“10.0.0.2”即R2,它是一个ABR,它向本区域(Area 1)通告了其他区域中的网络链路状态信息,表中的“Link ID” 即Link-State ID,取值为网络标识信息。同样,观察R2的“Summary Net Link States (Area 0)”的表,可以看出R2也向其他区域通告了Area 1中的网络链路状态信息。

R2是跨接在Area 0和Area 1上的ABR,因此R2维护着Area 0、Area 1两个链路状态数据库。收敛后,同一区域中的路由器的链路状态数据库是一致的,如R2和R1的Area 1的链路状态数据库完全相同;R2和R3的Area 0的链路状态数据库完全相同;R3和R4的Area 2的链路状态数据库完全相同。如果使用“show ip ospf neighbor”命令观察路由器之间的关系状态,能够发现R2和R1,R2和R3,R3和R4均为全毗邻关系。

3.6  路由分析

在4台路由器上查看路由表。以路由器R2为例,如图6所示。路由表中标记为“O”的路由是区域内路由,而标记为“O IA”的路由是区域间路由。R2 是Area 0和Area 1间的ABR,以R2的路由表为例,“O 172.16.0.0/16……”这条路由是区域内路由,因为目标网络172.16.0.0就在Area 1中,而“O IA 172.17.0.0/16……”和“O IA 192.168.2.0/24……”这两条路由之所以是区域间路由,是因为目标网络172.17.0.0和192.168.2.0均在Area 2中。在本实验中(不含多路访问链路),区域内路由是根据类型1的LSA生成的,区域间路由是根据类型3的LSA生成的。

4  结  论

OSPF协议是一种被广泛使用的动态路由协议,工作原理复杂,不易理解。本实验设计拓扑规模适中,实验逻辑清晰,测试分析部分不仅仅停留在主机间连通性的测试,引入路由跟踪的同时,结合多区域OSPF链路状态数据库分析和路由分析,使得多区域关系、链路状态数据库状态以及区域间路由过程更加清晰明了。在教学实践中,本实验设计能明显降低学生对多区域路由的理解难度,有效训练学生OSPF多区域部署与分析能力。

参考文献:

[1] 孙光懿,贾英霞,薛颖.基于OSPF动态路由协议的优化研究 [J].首都師范大学学报(自然科学版),2019,40(6):44-51+58.

[2] 孟旭莹,李鹏,冯相榕.OSPF特殊区域网络原理分析及应用 [J].计算机与网络,2019,45(14):65-68.

[3] 高荣昊,王树平,张勇.由现网应用谈OSPF协议与IS-IS协议异同 [J].信息技术与信息化,2021(3):189-191.

[4] 胡垚,徐皓,武树斌.OSPF协议在无线网络上的应用仿真与性能评估 [J].舰船电子工程,2019,39(3):73-76.

[5] 谢水珍,武良丹.基于eNSP的OSPF教学设计 [J].信息技术与信息化,2019(2):133-135.

[6] 朱仕耿.HCNP路由交换学习指南 [M].北京:人民邮电出版社,2017.

作者简介:赵婧如(1977—),女,汉族,河北满城人,讲师,硕士,研究方向:网络管理技术。