【计算机网络】课程 实验四 配置快速生成树协议(RSTP)

实验四 配置快速生成树协议( RSTP

一、 实验目的

1.理解快速生成树协议RSTP的工作原理。

2.掌握如何在交换机上配置快速生成树。

二、 实验 分析与设计

【背景描述】

某学校为了开展计算机教学和网络办公,建立了一个计算机教室和一个校办公区,这两处的计算机网络通过两台交换机互联组成内部校园网,为了提高网络的可靠性,网络管理员用两条链路将交换机互联,现要在交换机上做适当配置,使网络避免环路。

【需求分析】

两台交换机以双链路互链,需要在启用RSTP避免环路的同时,提供链路的冗余备份功能。

【实验原理】

生成树协议(spanning-tree)作用是在交换网络中提供冗余备份链路,并且解决交换网络中的环路问题。该协议利用 SPA 算法(生成树算法),在存在交换环路的网络中生成一个没有环路的树形网络。运用该算法将交换网络冗余的备份链路逻辑上断开,当主要链路出现故障时,能够自动地切换到备份链路,保证数据的正常转发。生成树协议的特点是收敛时间长。从主要链路出现故障到切换到备份链路需要 50 秒的时间。

快速生成树协议(RSTP)在生成树协议的基础上增加了两种端口角色:替换端口(AlternatePort)和备份端口(Backup Port),分别作为根端口(Root Port)和指定端口(Designated Port)的冗余端口。当根端口或指定端口出现故障时,冗余端口不需要经过 50 秒的收敛时间,可以直接切换到替换端口或备份端口,从而实现 RSTP 协议小于 1 秒的快速收敛。

【实验拓扑】

实验的拓扑图,如下图所示。本实验以两台二层交换机为例,两台交换机分别命名为 SwitchA 和 SwitchB。PC1 与 PC2在同一个网段,假设 IP 地址分别为 192.168. X .Y 和 192.168. X .Y,网络掩码为 255.255.255.0。

(IP地址的X字段请使用实验分组的编号,Y字段请使用班号+学号)

【实验设备】

交换机 2 台,PC 2 台

【注意事项】

按照拓扑图连接网络时,两台交换机都配置完RSTP后,再将两台交换机连接起来。如果先连线再配置会造成广播风暴,影响交换机的正常工作。

三、 实验内容与步骤

1.先分别连接两台交换机的Consol线到配置终端。

2.在交换机SwitchA上完成 VLAN 划分及 Trunk 配置。

SwitchA(config)#vlan 10

SwitchA(config-vlan)#name stu

SwitchA(config-vlan)#exit

SwitchA(config)#interface fastethernet0/3

SwitchA(config-if)#switchport access vlan 10

SwitchA(config-if)#exit

SwitchA(config)#interface range fastethernet 0/1-2

SwitchA(config-if-range)#switchport mode trunk

3.在交换机SwitchB上完成 VLAN 划分及 Trunk 配置。

SwitchB(config)#vlan 10

SwitchB(config-vlan)#name stu

SwitchB(config-vlan)#exit

SwitchB(config)#interface fastethernet0/3

SwitchB(config-if)#switchport access vlan 10

SwitchB(config-if)#exit

SwitchB(config)#interface range fastethernet 0/1-2

SwitchB(config-if-range)#switchport mode trunk

4. 为PC1和PC2配置IP地址,分别为 192.168. X .Y 和 192.168. X .Y,网络掩码为 255.255.255.0。(IP地址的X字段请使用实验分组的编号,Y字段请使用班号学号)

(请给出配置截图)

5.按照如下拓扑连接设备。

6.测试PC1和PC2的连通性。(请截图并说明)

7.在交换机SwitchA上配置快速生成树协议。

SwitchA#configure terminal

SwitchA(config)#spanning-tree

! 锐捷交换机缺省是关闭 spanning-tree 的,如果网络在物理上存在环路,则必须手工开启。

SwitchA(config)#spanning-tree mode rstp

!指定生成树协议的类型为 RSTP,默认生的成树版本为 MSTP 协议

8.在交换机SwitchB上配置快速生成树协议。

SwitchB#configure terminal

SwitchB(config)#spanning-tree

SwitchB(config)#spanning-tree mode rstp!指定生成树协议的类型为 RSTP

9.设置交换机的优先级为4096(优先级的值越小,优先级越高),指定 SwitchA 为根交换机。

SwitchA(config)#spanning-tree priority 4096

10.按如下拓扑连接设备。

11. 查看交换机 SwitchA及端口 STP 状态。
SwitchA#show spanning-tree

12.查看交换机 SwitchB及端口 STP 状态。

SwitchB#show spanning-tree

StpVersion : RSTP

SysStpStatus : Enabled

BaseNumPorts : 24

MaxAge : 20

HelloTime : 2

ForwardDelay : 15

BridgeMaxAge : 20

BridgeHelloTime : 2

BridgeForwardDelay : 15

MaxHops : 20

TxHoldCount : 3

PathCostMethod : Long

BPDUGuard : Disabled

BPDUFilter : Disabled

BridgeAddr : 00d0.f8ef.9e89

Priority : 4096 !显示交换机的优先级

TimeSinceTopologyChange : 0d:0h:13m:43s

TopologyChanges : 0

DesignatedRoot : 200000D0F8EF9E89

RootCost : 0

RootPort : 0

!从 show 命令的输出结果可以看到交换机 SwitchA 为根交换机。

StpVersion : RSTP !生成树协议的版本

SysStpStatus : Enabled !生成树协议的运行状态为开启状态

BaseNumPorts : 24

MaxAge : 20

HelloTime : 2

ForwardDelay : 15

BridgeMaxAge : 20

BridgeHelloTime : 2

BridgeForwardDelay : 15

MaxHops : 20

TxHoldCount : 3

PathCostMethod : Long

BPDUGuard : Disabled

BPDUFilter : Disabled

BridgeAddr : 00d0.f8e0.9c81

Priority : 32768 !显示交换机的优先级

TimeSinceTopologyChange : 0d:0h:11m:39s

TopologyChanges : 0

DesignatedRoot : 100000D0F8EF9E89

RootCost : 200000 !交换机到达根交换机的开销

RootPort : Fa0/1

!从 show 命令输出结果可以看到SwitchB为非根交换机,根端口为 F0/1。

13.查看交换机 SwitchB 的端口 1 和端口 2 的状态。

SwitchB#show spanning-tree interface fastEthernet 0/1

PortAdminPortfast : Disabled

PortOperPortfast : Disabled

PortAdminLinkType : auto

PortOperLinkType : point-to-point

PortBPDUGuard: Disabled

PortBPDUFilter: Disabled

PortState : forwarding !端口 fastEthernet 0/1 处于转发状态

PortPriority : 128

PortDesignatedRoot : 200000D0F8EF9E89

PortDesignatedCost : 0

PortDesignatedBridge : 200000D0F8EF9E89

PortDesignatedPort : 8001

PortForwardTransitions : 3

PortAdminPathCost : 0

PortOperPathCost : 200000

PortRole : rootPort !显示端口角色为根端口

!上述 show 命令输出结果显示交换机 SwitchB 的端口 F0/1 角色为根端口,处于转发状态。

SwitchB#show spanning-tree interface fastEthernet 0/2

PortAdminPortfast : Disabled

PortOperPortfast : Disabled

PortAdminLinkType : auto

PortOperLinkType : point-to-point

PortBPDUGuard: Disabled

PortBPDUFilter: Disabled

PortState : discarding !端口 fastEthernet 0/2处于阻塞状态

PortPriority : 128

PortDesignatedRoot : 200000D0F8EF9E89

PortDesignatedCost : 200000

PortDesignatedBridge : 800000D0F8EF9D09

PortDesignatedPort : 8002

PortForwardTransitions : 3

PortAdminPathCost : 0

PortOperPathCost : 200000

PortRole : alternatePort ! SwitchB 的 F0/2 端口为根端口的替换端口

!上述 show 命令输出结果显示交换机 SwitchB 的端口 F0/2 角色为替换端口,状态为阻塞状态。

14.验证测试:从主机PC1 ping PC2(用连续ping,命令如下所示),然后拔掉SwitchA与SwitchB的端口F0/1 之间的连线,观察丢包情况,观察替换端口能够再多长时间内成为转发端口。

C:\>ping 192.168.0.136 --t

四、 实验总结

在本次实验中,我们的目标是理解和掌握快速生成树协议(RSTP)的工作原理,并在交换机上进行相应的配置。实验的背景是学校计算机教室和校办公区通过两台交换机互联,以提高网络的可靠性。我们的任务是在启用RSTP避免环路的同时,提供链路的冗余备份功能。

实验开始前,我们首先分析了生成树协议(STP)和快速生成树协议(RSTP)的原理。STP通过生成树算法在存在交换环路的网络中生成一个无环路的树形网络,而RSTP则在此基础上增加了替换端口和备份端口,以实现小于1秒的快速收敛。

在实验设备方面,我们使用了两台交换机和两台PC。在实验过程中,我们首先按照拓扑图连接了网络,并在两台交换机上完成了VLAN划分及Trunk配置。接着,我们为PC1和PC2配置了IP地址,并测试了它们的连通性。

在配置快速生成树协议时,我们遇到了一个问题:交换机的接口三无法使实验正常接通。经过我们的排查和尝试,我们将接口三换成了接口五,最终实验成功。这一过程中,我们深刻体会到了实验中可能出现的意外情况,以及在实际操作中解决问题的重要性。

在成功配置RSTP后,我们设置了交换机的优先级,指定SwitchA为根交换机。通过查看交换机SwitchA和SwitchB的STP状态,我们确认了SwitchA为根交换机,SwitchB为非根交换机,且端口F0/1为根端口,端口F0/2为替换端口。

最后,我们进行了验证测试,从主机PC1向PC2发送连续ping,然后拔掉了SwitchA与SwitchB的端口F0/1之间的连线,观察丢包情况。实验结果显示,替换端口能够在极短的时间内成为转发端口,验证了RSTP快速收敛的特性。

本次实验不仅加深了我对RSTP工作原理的理解,也提升了我在实际网络环境中配置和调试网络设备的能力。通过解决实验中遇到的问题,我学会了如何灵活应对实际操作中的挑战,这对于我未来的网络工程实践具有重要的意义。

相关推荐
JaguarJack1 天前
FrankenPHP 原生支持 Windows 了
后端·php·服务端
BingoGo1 天前
FrankenPHP 原生支持 Windows 了
后端·php
JaguarJack2 天前
PHP 的异步编程 该怎么选择
后端·php·服务端
BingoGo2 天前
PHP 的异步编程 该怎么选择
后端·php
JaguarJack3 天前
为什么 PHP 闭包要加 static?
后端·php·服务端
ServBay4 天前
垃圾堆里编码?真的不要怪 PHP 不行
后端·php
用户962377954484 天前
CTF 伪协议
php
BingoGo6 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack6 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo7 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php