华为配置篇-RSTP/MSTP实验

MSTP

一、简介

RSTP(快速生成树协议)

RSTP(Rapid Spanning Tree Protocol)是 STP 的改进版本,基于 ​​IEEE 802.1w 标准​​ ,核心目标是解决传统 STP 收敛速度慢的问题。其通过引入 ​​快速过渡机制​​ 和 ​​新增端口角色​​(如替代端口、备份端口、边缘端口),将收敛时间从 STP 的 30-50 秒缩短至 ​​1 秒以内​​。

  • 端口角色扩展:除根端口、指定端口外,新增替代端口(Alternate Port)和备份端口(Backup Port),用于快速接管失效链路。
  • 快速状态转换:通过P/A( ​​Proposal/Agreement )机制直接协商端口状态,跳过 STP 的监听和学习阶段。
  • 兼容性:当检测到传统 STP BPDU 时,自动切换为 STP 模式。

MSTP(多生成树协议)

MSTP(Multiple Spanning Tree Protocol)基于 ​​IEEE 802.1s 标准​​ ,支持多生成树实例(MSTI)​​,允许不同 VLAN 组映射到不同的生成树实例,实现逻辑拓扑的灵活划分。

  • 实例化与区域划分:将网络划分为多个 ​​MST 区域,每个区域独立运行生成树,并通过 CST(公共生成树) 连接不同区域。
  • VLAN 映射:通过配置 VLAN-实例映射表,将流量分配到不同实例,避免单一生成树的资源浪费。
  • BPDU 优化:使用 MST BPDU 携带区域和实例信息,减少控制报文数量。

二、常用命令总结

bash 复制代码
display stp						#查 STP 的状态和统计信息
display stp instance 0 brief	#查看 STP 的状态和统计信息摘要,特殊实例0
display stp interface GigabitEthernet 0/0/2	#查看 GE0/0/2 接口的 STP 的状态和统计信息,可查看port cost的开销

#优先级确定根桥
stp priority 4096				#调整 STP 优先级,默认32768,越小越好
#直接指定根桥
stp root primary				#相当于优先级为0
stp root secondary				#相当于优先级为4096

[S4-GigabitEthernet0/0/2] stp cost 40001	#修改GE0/0/2 接口的 STP cost 值为 40001。影响根路径开销,进而改变本端口角色。
[S1-GigabitEthernet0/0/11] stp port priority 64	#修改 GE0/0/11 的 STP 接口优先级,默认为128,越小越好。影响对端端口角色。



display stp region-configuration	#检查 MSTP 实例和 VLAN 的映射关系
display stp instance 1 brief		#查看 MSTI1 的状态和统计信息摘要

#配置MSTI1 的根桥和备份根桥
[S1]stp instance 1 root primary
[S2]stp instance 1 root secondary

三、实验

背景

你是公司的网络管理员。公司的网络采用了备份网络,为避免环路问题,在网络中部署了RSTP 。所有的 VLAN 共享一棵 STP 生成树,为了实现VLAN 间数据流量的负载均衡, 在网络中部署 MSTP

拓扑

配置-RSTP模式

bash 复制代码
#
sysname S1
#
stp enable
stp mode rstp
stp instance 0 root primary				#直接设置为根桥
#
interface GigabitEthernet0/0/11
 stp instance 0 port priority 64		#设置stp接口优先级
#
return 

#
sysname S2
#
stp enable
stp mode rstp
stp instance 0 root secondary
#
return 

#
sysname S3
#
stp enable
stp mode rstp
#
return 

#
sysname S4
#
stp enable
stp mode rstp
#
interface GigabitEthernet0/0/2
 stp instance 0 cost 40001			#设置stp接口开销
#
return 

配置-MSTP模式

S1

bash 复制代码
#
sysname S1
#
vlan batch 10 20 30 40 50 60 70 80
#
stp instance 0 root primary
stp instance 1 root primary
stp instance 2 root secondary
#
stp region-configuration
 region-name hcip				#配置区域名
 revision-level 1				#配置修订版本,默认0
 instance 1 vlan 10 30 50 70 	#设置实例1 对应vlan
 instance 2 vlan 20 40 60 80 	#设置实例2 对应vlan
 active region-configuration	#激活区域配置
#
interface GigabitEthernet0/0/10
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/11
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
 stp instance 0 port priority 64
#
interface GigabitEthernet0/0/12
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/13
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
return 

S2

bash 复制代码
#
sysname S2
#
vlan batch 10 20 30 40 50 60 70 80
#
stp instance 0 root secondary
stp instance 1 root secondary
stp instance 2 root primary
#
stp region-configuration
 region-name hcip
 revision-level 1
 instance 1 vlan 10 30 50 70 
 instance 2 vlan 20 40 60 80 
 active region-configuration
#
interface GigabitEthernet0/0/10
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/11
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/12
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/13
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
return 

S3

bash 复制代码
#
sysname S3
#
vlan batch 10 20 30 40 50 60 70 80
#
stp region-configuration
 region-name hcip
 revision-level 1
 instance 1 vlan 10 30 50 70 
 instance 2 vlan 20 40 60 80 
 active region-configuration
#
interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/3
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
return 

S4

bash 复制代码
#
sysname S4
#
vlan batch 10 20 30 40 50 60 70 80
#
stp region-configuration
 region-name hcip
 revision-level 1
 instance 1 vlan 10 30 50 70 
 instance 2 vlan 20 40 60 80 
 active region-configuration
#
interface GigabitEthernet0/0/1
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
 stp instance 0 cost 40001
#
interface GigabitEthernet0/0/3
 port link-type trunk
 port trunk allow-pass vlan 2 to 4094
#
return 

总结

根桥选举:桥ID(桥priorityMAC地址),越小越好,抢占式。

根接口选举:根路径开销PRC上行桥ID(BID)、上行接口优先级上行接口ID(PID)、本地接口ID,越小越好。

相关推荐
留不住丨晚霞10 分钟前
说说SpringBoot常用的注解?
java·开发语言
hardStudy_h20 分钟前
C++——内联函数与Lambda表达式
开发语言·jvm·c++
艾莉丝努力练剑1 小时前
【C语言】学习过程教训与经验杂谈:思想准备、知识回顾(三)
c语言·开发语言·数据结构·学习·算法
witton2 小时前
Go语言网络游戏服务器模块化编程
服务器·开发语言·游戏·golang·origin·模块化·耦合
刘阿宾2 小时前
【华为昇腾|CUDA】服务器A6000显卡部署LLM实战记录
服务器·华为·语言模型·gpu算力·kylin
枯萎穿心攻击3 小时前
ECS由浅入深第三节:进阶?System 的行为与复杂交互模式
开发语言·unity·c#·游戏引擎
Jerry Lau3 小时前
go go go 出发咯 - go web开发入门系列(一) helloworld
开发语言·前端·golang
nananaij3 小时前
【Python基础入门 re模块实现正则表达式操作】
开发语言·python·正则表达式
Micro麦可乐3 小时前
Java常用加密算法详解与实战代码 - 附可直接运行的测试示例
java·开发语言·加密算法·aes加解密·rsa加解密·hash算法
天下一般3 小时前
go入门 - day1 - 环境搭建
开发语言·后端·golang