文档库 最新最全的文档下载
当前位置:文档库 › 实验3:OSPF协议的多区域特性

实验3:OSPF协议的多区域特性

电子科技大学

学生姓名:张乐中

学号:2012019020002

指导教师:苏俭

日期:2014 年11 月13 日

实验项目名称:OSPF协议的多区域特性报告评分:教师签字:

一、实验原理

OSPF协议(RFC2328)是一个基于链路状态路由选择的内部网关协议:路由器仅在网络拓扑变化时使用洪泛法(flooding)将自己的链路状态更新信息扩散到整个自治系统中。

为了增强OSPF协议的可伸缩能力(Scalability),OSPF协议引入了区域的概念来有效并及时地处理路由选择。OSPF区域是包含在AS中的一些网络、主机和路由器的集合,自治系统中所有OSPF区域必须连接到一个主干区域(Area 0)上。

区域内的OSPF路由器(内部路由器,IR)使用洪泛法(flooding)传送本区域内的链路状态信息,区域边界的OSPF路由器(区域边界路由器,ABR)将本区域的信息汇总发给其他区域,自治系统边界的OSPF路由器(自治系统边界路由器,ASBR)将自治系统外的路由(外部路由)发布在自治系统中。主干区域中的OSPF路由器也称为“主干路由器”(BR)。ABR不能向OSPF残桩区域(Stub Area)通告外部路由。在多址网络中,为了避免不必要的链路状态洪泛,需要选举1个指定路由器(DR)和一个备份指定路由器(BDR)。

OSPF协议有5种类型的报文,它们被直接封装在IP分组中多播发送。

-问候报文:用来建立并维护OSPF邻接关系。在建立了邻接关系后,OSPF路由器会定期发送Hello报文,来测试邻站的可达性。

-数据库描述(DBD)报文:描述OSPF路由器的链路状态数据库的概要信息,即数据库中每一行的标题,它在两台相邻路由器彼此建立邻接关系时发送的。

-链路状态请求(LSR)报文:由需要若干条特定路由信息的路由器发出的,它的回答是LSU报文。新接入的路由器在收到DBD报文后,可以使用LSR报文请求关

于某些路由的更多信息。

-链路状态更新(LSU)报文:OSPF的核心。OSPF路由器使用LSU通告链路状态更新信息(即链路状态通告,LSA),每一个LSU报文可包含几个LSA。OSPF协

议的LSA有5种常用类型:路由器链路LSA、网络链路LSA、汇总链路到网络LSA、汇总链路到ASBR LSA和外部链路LSA。这5种类型的LSA由不同类型的OSPF

路由器产生,在特定类型的区域范围内扩散。

-链路状态确认(LSAck)报文:用来确认每一个收到的LSU报文,使得OSPF协议的路由选择更加可靠。

二、实验目的

1、掌握OSPF协议中区域的类型、特征和作用

2、掌握OSPF路由器的类型、特征和作用

3、掌握OSPF LSA分组的类型、特征和作用

4、理解OSPF区域类型、路由器类型和OSPF LSA分组类型间的相互关系

三、实验内容

10和AS 20),路由器之间使用OSPF 协议进行路由选择。AS 10中有5个子网,划分了3个区域:Area 0、Area 1和Area 2,其中Area 2是一个Stub 区域。AS 20中有1个子网,其路由信息将以OSPF 的外部路由方式发布到AS 10的OSPF 网络中。

实验者使用Dynamips 软件捕获子网1、2、3上传送的OSPF 报文,使用Wireshark 软件查看捕获的OSPF 报文,分析OSPF 协议的路由更新过程,考察OSPF 协议中不同类型的区域、路由器和LSA 的特征和作用。

四、实验器材(设备、元器件)

PC 计算机一台

五、实验步骤

子网1:172.16.1.0/24 子网2:172.16.2.0/30 子网3:172.16.3.0/29 子网4:172.16.4.0/24 子网5:172.16.5.0/24 路由器ID : R1=1.1.1.1 R2=2.2.2.2 R3=3.3.3.3 R4=4.4.4.4

R5=5.5.5.5

R6=6.6.6.6

图A

图C

图B

注意:为方便分阶段分析OSPF路由更新过程,实验中请记录下步骤3、4、5、6的操作时间!

1、启动Dynamips Server,然后运行https://www.wendangku.net/doc/0b5375246.html,,在Dynagen窗口中提示符“=>”后依次输

入以下命令启动路由器R1~R6,并分别进入R1和R6的CLI:

=> start R1

=> start R2

=> start R3

=> start R4

=> start R5

=> start R6

=> con R1

=> con R4

2、分别在R1的CLI提示符“R1>”以及R4的CLI提示符“R4>”后输入“show ip route”

命令查看两台路由器当前的路由表,确保实验网的OSPF协议已经收敛。

R1> show ip route R4> show ip route

3、在Dynagen窗口中提示符“=>”后输入以下命令捕获子网2、3、4和5中的分组:

=> capture R2 s1/0 2.cap HDLC

=> capture R3 s1/0 3.cap HDLC

=> capture R4 f0/0 4.cap

=> capture R5 f0/0 5.cap

4、1分钟后,在路由器R1的CLI中输入以下命令断开R1与子网1的连接(如图B所

示):

en 对应的CLI提示符为“R1>”

conf t 对应的CLI提示符为“R1#”

int f0/0 对应的CLI提示符为“R1(config)#”

shut 对应的CLI提示符为“R1(config-if)#”

5、1分钟后,在路由器R1的CLI中输入以下命令恢复R1与子网1的连接,并在路由

器R4的CLI中输入以下命令将到AS 20中子网20.0.0.0/16的路由以外部路由的方

式发布到AS 10的OSPF网络中(如图C所示):

R1:

en 对应的CLI提示符为“R1>”

conf t 对应的CLI提示符为“R1#”

int f0/0 对应的CLI提示符为“R1(config)#”

no shut 对应的CLI提示符为“R1(config-if)#”

R4:

en 对应的CLI提示符为“R4>”

conf t 对应的CLI提示符为“R4#”

router ospf 1 对应的CLI提示符为“R4(config)#”

redis static sub 对应的CLI提示符为“R1(config-router)#”

说明:请根据R1 CLI的当前提示符输入对应的命令。

6、1分钟后,在Dynagen窗口中提示符“=>”后输入以下命令停止捕获:

=> no capture R2 s1/0

=> no capture R3 s1/0

=> no capture R4 f0/0

=> no capture R5 f0/0

7、用Wireshark软件查看并分析捕获的分组文件(2.cap、3.cap、4.cap和5.cap)中的

OSPF报文,查看过滤条件为“ospf”(在Wireshark主窗口界面“过滤工具栏”的“Filter:”

域中输入)。

8、实验结束后,按照以下步骤关闭实验软件、上传实验数据、还原实验环境:

(1)关闭R1、R4的CLI窗口,在Dynagen窗口中提示符“=>”后依次输入以下命令关闭Dynagen窗口,然后再关闭Dynamips Server窗口:

=> stop /all

=> exit

(2)运行https://www.wendangku.net/doc/0b5375246.html,所在目录下的“reset.bat”文件。

六、实验数据及结果分析

1、步骤2中根据R1路由表和R4路由表中的哪些信息可以确保实验网中的OSPF协议

已经收敛?为什么?

两个路由器的表项对应路径相符合。因为OSPF是各个路由器将自己的路由信息广播给其他路由器,所以当R1和R4的表项信息相符的时候就能够确定其已经收敛了

2、分析执行步骤4之前在4个子网上捕获的OSPF报文。记录子网2、

3、4和5上每

一台路由器发送的1个OSPF Hello报文的如下信息:

说明:“路由器”=拓扑图中的路由器编号,即R1,R2,R3,R4,R5,R6;

“区域ID”=十进制表示,所有IP地址=点分十进制表示。

【分析】

1)实验中的OSPF hello间隔是多少秒?

10s

2)是否4个子网上都选举有DR和BDR?为什么?根据记录中的DR和BDR信息,用路由器编号写出图A中子网4上的DR和BDR。在本实验的后续步骤中,各子网上的DR和BDR是否会改变?

否,子网四上DR:172.16.4.5.BDR:172.16.4.4,子网2和子网3是点到点连接,没有制定路由器和备份指定路由器,在本实验的后续步骤中,各子网上的DR 和BDR不会改变。

3、分析从执行步骤4开始到执行步骤5之前在4个子网上捕获的OSPF报文。按报文

的捕获顺序记录每个子网上捕获到的OSPF报文概要,要求:从第1个非类型1(即hello报文)的OSPF报文开始记录,包括后续的类型1(hello)报文,一直记录到最后1个非类型1的OSPF报文。记录的信息如下:

说明:所有IP地址=点分十进制表示,“区域ID”=十进制表示。

“类型”=Hello,DBD,LSR,LSU,LSAck;

“捕获时间”=Wireshark窗口分组列表栏中的“Time”值

要求:“Time”查看格式为菜单“View→Time Display Format→Seconds Since Beginning of Capture”。

【分析】

1)为什么会在实验中捕获到两种不同目的IP地址(224.0.0.6和224.0.0.5)的LSU 报文?

DR/BDR路由器以目的地址224.0.0.5发送LSU报文,而非DR/BDR路由器只能以目的地址224.0.0.6发送LSU报文,

2)OSPF要求路由器确认收到的LSA,即对收到的每个LSU报文进行确认。为什么在子网4上捕获到了2个LSU报文,但LSAck报文却只有1个?

OSPF路由器对收到的LSU报文进行确认的方式有两种:一是发送包含收到的LSU首部信息的LSAck报文进行显式确认,一是发送包含收到的LSU报文中LSA信息的LSU报文进行隐式确认。

在Area 0中,R3是DRothers,需要将收到的LSU报文中携带的LSA 洪泛给本子网上的所有OSPF路由器,R3使用组播地址224.0.0.6发送更新报文,对收到的LSA采取的是隐式确认;R5是DR,使用组播地址224.0.0.5发送更新报文,R4不需要再次洪泛更新报文,发送了一个LSAck 报文,采取的是显式确认。

4、按报文捕获顺序,记录从执行步骤4开始到执行步骤5之前在4个子网上捕获到的

所有LSU报文的如下信息:

说明:如果1份LSU报文中携带有多条LSA,则需记录每条LSA的首部信息。

“No.”=记录3-1中对应报文的No.值;

“链路ID”和“通告路由器”=点分十进制表示;

“序号”和“校验和”=十六进制表示。

【分析】

1)同一Area内不同发送者发送的LSU报文(例如:Area 1中子网2上R1发送的LSU报文和子网3上R2发送的LSU报文)中携带的LSA内容是否完全一致?在LSU报文中,1个LSA首部中的通告路由器、该LSU报文的OSPF首部中的路由器ID,以及封装该OSPF报文的IP分组首部中的源IP地址,它们指的是什么路由器?是否是同一台路由器?

2)每个子网上捕获到的LSU报文中的LSA是哪种类型的LSA?每种类型的LSA 是由图B中的哪台路由器始发的?该路由器属于哪种类型的OSPF路由器?这些LSA分别在图B的哪些区域中洪泛?通告的是其洪泛区域内部的链路信息还是该区域外部的链路信息?

3)除路由器R1外,其它路由器可以根据收到的LSA中的什么信息判定子网1不可达?(提示:对比记录6的信息)

4)如果在图B中,将子网1接到R3上,并且让子网1处于区域0中,那么此时在各个区域中会出现哪些路由器始发的哪些类型的LSA?

5、按报文捕获顺序,记录从执行步骤5开始到执行步骤6之前在4个子网上捕获到的

所有LSU报文,记录信息如下:

说明:如果1份LSU报文中携带有多条LSA,则需记录每条LSA的首部信息。

“No.”=记录4-1中对应报文的No.值;

“链路ID”、“通告路由器”、“网络掩码”=点分十进制表示;

“度量”=十进制表示。

【分析】

1)为什么子网5上只有类型3的LSA?

2)Area 1(子网2、子网3)中的类型1 LSA所通告的拓扑变化,在Area 0(子网4)和Area 2(子网5)中分别使用哪种类型的LSA进行通告?

3)Area 0(子网4)中的类型1 LSA所通告的拓扑变化,在Area 1(子网2、子网3)中使用哪种类型的LSA进行通告?

4)Area 0(子网4)中的类型5 LSA所通告的拓扑变化,在Area 1(子网2、子网3)中使用哪种类型的LSA进行通告?

5)子网2、3和4上的类型5 LSA信息(包括LSA首部及其数据部分)是否完全一致?如有不同,请指出不同之处,并解释不同的原因?

【思考题】

1、OSPF协议有5种类型的报文,并能通告5种类型的LSA。本实验中捕

获到了哪些类型的OSPF报文和哪些类型的LSA?请解释本实验中不能捕获到某些类型的OSPF报文和某些类型的LSA的原因。

七、实验结论

1、本实验中,路由器R1~R6分别属于哪种类型的OSPF路由器?

2、结合实验拓扑图和小组捕获的所有OSPF报文,总结5种LSA分别由哪

种类型的OSPF路由器产生?通告了哪些信息?能在哪些区域范围内洪泛?

八、总结及心得体会

通过模拟实验以及对Wireshark软件捕获的数据包的分析,加深了对OSPF 路由协议工作原理的理解。

九、对本实验过程及方法、手段的改进建议

相关文档
相关文档 最新文档