HCIP学习12 VLAN 综合实验 及STP-生成树综合实验
本文包含两个网络实验:VLAN综合实验和STP生成树实验。VLAN实验通过路由器AR1、三层交换机LSW1和二层交换机构建网络,使用Access/Hybrid/Trunk接口实现VLAN划分、跨网段互通和精细访问控制,并配置DHCP实现自动地址分配。STP实验在13台交换机组成的3个拓扑中,通过配置根桥优先级实现生成树协议,自动消除二层环路并保留冗余链路,验证了根端口、指定端口和阻塞端口的选举逻辑
一、VLAN 综合实验
实验拓扑

实验设备
| 设备类型 | 设备名称 | 型号 | 数量 | 用途 |
|---|---|---|---|---|
| 路由器 | AR1 | AR2220 | 1 | 单臂路由网关、DHCP 服务器 |
| 三层交换机 | LSW1 | S5700 | 1 | 核心汇聚交换机 |
| 二层交换机 | LSW2 | S3700 | 1 | 接入交换机(连接 PC3、PC4) |
| 二层交换机 | LSW3 | S3700 | 1 | 接入交换机(连接 PC5、PC6) |
| 终端 PC | PC1~PC6 | Windows 10 | 6 | 测试终端 |
拓扑链路与接口连接表
| 本端设备 | 本端接口 | 对端设备 | 对端接口 | 链路类型 | 传输介质 |
|---|---|---|---|---|---|
| AR1 | GE0/0/0 | LSW1 | GE0/0/1 | 以太网 | 双绞线 |
| LSW1 | GE0/0/2 | LSW2 | GE0/0/1 | 以太网 | 双绞线 |
| LSW2 | GE0/0/2 | LSW3 | GE0/0/1 | 以太网 | 双绞线 |
| LSW1 | GE0/0/3 | PC1 | Ethernet 0/0/1 | 以太网 | 双绞线 |
| LSW1 | GE0/0/4 | PC2 | Ethernet 0/0/1 | 以太网 | 双绞线 |
| LSW2 | GE0/0/3 | PC3 | Ethernet 0/0/1 | 以太网 | 双绞线 |
| LSW2 | GE0/0/4 | PC4 | Ethernet 0/0/1 | 以太网 | 双绞线 |
| LSW3 | GE0/0/2 | PC5 | Ethernet 0/0/1 | 以太网 | 双绞线 |
| LSW3 | GE0/0/3 | PC6 | Ethernet 0/0/1 | 以太网 | 双绞线 |
IP 地址与 VLAN 规划表
| VLAN ID | 网段 | 网关地址 | 包含终端 | 说明 |
|---|---|---|---|---|
| VLAN 2 | 192.168.2.0/24 | 192.168.2.254 | PC1、PC3 | 跨网段互通组 |
| VLAN 3 | 192.168.1.0/24 | 192.168.1.254 | PC2 | 全访问组 |
| VLAN 4 | 192.168.1.0/24 | 192.168.1.254 | PC4 | 可访问 PC5,不可访问 PC6 |
| VLAN 5 | 192.168.1.0/24 | 192.168.1.254 | PC5 | 不可访问 PC6 |
| VLAN 6 | 192.168.1.0/24 | 192.168.1.254 | PC6 | 仅可被 PC2 访问 |
实验需求
-
VLAN 基础配置:
-
PC1 和 PC3 所在接口配置为 Access 类型,属于 VLAN 2
-
所有交换机创建 VLAN 2、3、4、5、6
-
-
同网段精细访问控制:
-
PC2、PC4、PC5、PC6 处于同一网段(192.168.1.0/24)
-
PC2 可以访问 PC4、PC5、PC6
-
PC4 可以访问 PC5,不能访问 PC6
-
PC5不能访问 PC6
-
-
跨网段互通:
-
PC1/3 所在网段(192.168.2.0/24)与 PC2/4/5/6 所在网段(192.168.1.0/24)可以正常通讯
-
-
DHCP 自动地址分配:
-
所有 PC 通过 DHCP 自动获取 IP 地址、网关、DNS
-
PC1/3 从地址池 2 获取地址,PC2/4/5/6 从地址池 1 获取地址
-
-
全网连通性验证:
-
PC1/3 可以正常访问 PC2/4/5/6
-
所有访问控制规则生效
-
实验原理与思路
技术原理
(1)Access 接口原理
Access 接口是交换机最基础的接口类型,仅属于一个 VLAN,只能发送和接收无标签的以太网帧。当帧进入 Access 接口时,会被打上该接口的 PVID 标签;当帧从 Access 接口发出时,会剥离 VLAN 标签,还原为无标签帧。
(2)Hybrid 接口原理
Hybrid 接口是华为设备特有的接口类型,可以灵活配置哪些 VLAN 的帧以带标签方式通过,哪些以无标签方式通过,是实现同网段精细访问控制的核心技术。
-
PVID(Port VLAN ID):接口的默认 VLAN ID,当无标签帧进入接口时,会被打上 PVID 标签
-
untagged vlan:指定哪些 VLAN 的帧从该接口发出时,会被剥离标签
-
tagged vlan:指定哪些 VLAN 的帧从该接口发出时,会保留标签
(3)单臂路由原理
单臂路由是通过路由器的一个物理接口 + 多个子接口,实现不同 VLAN 之间三层互通的技术。每个子接口对应一个 VLAN,通过dot1q termination vid命令识别该 VLAN 的标签,然后进行三层路由转发。
(4)DHCP 跨 VLAN 分配原理
DHCP 请求是广播报文,默认只能在同一个 VLAN 内传播。通过单臂路由,不同 VLAN 的 DHCP 广播报文会被路由器子接口接收,然后路由器根据子接口所属的 VLAN,从对应的地址池分配 IP 地址,实现跨 VLAN 自动分配 IP。
需求拆解
| 需求 | 技术 | 实现原理 |
|---|---|---|
| PC1/3 属于 VLAN2(Access 接口) | Access 接口 | 接口仅属于 VLAN2,发送 / 接收无标签帧,仅允许 VLAN2 流量通过 |
| PC2/4/5/6 同网段 + 精细访问控制 | Hybrid 接口 + PVID | 为每个 PC 分配不同的 PVID(VLAN3~6),通过untagged vlan控制哪些 VLAN 的流量可以互通 |
| 跨网段互通 | 单臂路由(子接口) | AR1 通过物理接口(VLAN3~6)和子接口(VLAN2)终结不同 VLAN,实现三层路由转发 |
| DHCP 自动获取 | DHCP 服务器(路由器) | AR1 配置两个地址池,分别对应 VLAN2 和 VLAN3~6,根据接收 DHCP 请求的接口分配地址 |
设计说明
-
同网段访问控制设计:
-
PC2(PVID=3):
untagged vlan 2 3 4 5 6→ 允许所有 VLAN 流量通过,因此可以访问所有 PC -
PC4(PVID=4):
untagged vlan 2 3 4 5→ 不放通 VLAN6,因此无法访问 PC6 -
PC5(PVID=5):
untagged vlan 2 3 4 5→ 不放通 VLAN6,因此无法访问 PC6 -
PC6(PVID=6):
untagged vlan 2 3 6→ 不放通 VLAN4/5,因此无法访问 PC4/5
-
-
交换机互联设计:
-
交换机之间的链路配置为 Trunk 类型,放通所有 VLAN(2~6),保证二层流量透传
-
-
路由器与交换机互联设计:
-
LSW1 与 AR1 的互联接口配置为 Hybrid 类型:
-
port hybrid untagged vlan 3 4 5 6→ VLAN3~6 的流量去标签,匹配 AR1 物理接口 -
port hybrid tagged vlan 2→ VLAN2 的流量保留标签,匹配 AR1 子接口的dot1q termination vid 2
-
-
实验步骤与配置
实验准备工作
-
所有设备恢复出厂配置:
<Huawei> reset saved-configuration Warning: The action will delete the saved configuration in the device. The configuration will be erased to reconfigure. Continue? [Y/N]: y <Huawei> reboot Warning: All the configuration will be saved to the configuration file for the next startup. Continue? [Y/N]: n System will reboot! Continue? [Y/N]: y -
所有设备上电,等待启动完成。
LSW1 配置(核心汇聚交换机)
# 1. 进入系统视图,修改设备名称
<Huawei> system-view
[Huawei] sysname LSW1
# 2. 批量创建所有需要的VLAN(2~6)
# vlan batch命令可以一次性创建多个VLAN,提高配置效率
[LSW1] vlan batch 2 3 4 5 6
Info: This operation may take a few seconds. Please wait for a moment...done.
# 3. 配置PC1接口(Access类型,属于VLAN2)
[LSW1] interface GigabitEthernet 0/0/3
# 设置接口链路类型为Access
[LSW1-GigabitEthernet0/0/3] port link-type access
# 设置接口默认VLAN为2
[LSW1-GigabitEthernet0/0/3] port default vlan 2
# 华为设备接口默认shutdown,必须手动开启
[LSW1-GigabitEthernet0/0/3] undo shutdown
[LSW1-GigabitEthernet0/0/3] quit
# 4. 配置PC2接口(Hybrid类型,PVID=VLAN3,放通所有VLAN无标签)
[LSW1] interface GigabitEthernet 0/0/4
# 设置接口链路类型为Hybrid
[LSW1-GigabitEthernet0/0/4] port link-type hybrid
# 设置接口PVID为3,无标签帧进入时会被打上VLAN3标签
[LSW1-GigabitEthernet0/0/4] port hybrid pvid vlan 3
# 允许VLAN2~6的帧从该接口发出时剥离标签
[LSW1-GigabitEthernet0/0/4] port hybrid untagged vlan 2 3 4 5 6
[LSW1-GigabitEthernet0/0/4] undo shutdown
[LSW1-GigabitEthernet0/0/4] quit
# 5. 配置与LSW2互联的Trunk接口
[LSW1] interface GigabitEthernet 0/0/2
# 设置接口链路类型为Trunk
[LSW1-GigabitEthernet0/0/2] port link-type trunk
# 允许VLAN2~6的帧带标签通过该接口
[LSW1-GigabitEthernet0/0/2] port trunk allow-pass vlan 2 3 4 5 6
[LSW1-GigabitEthernet0/0/2] undo shutdown
[LSW1-GigabitEthernet0/0/2] quit
# 6. 配置与AR1互联的Hybrid接口(关键!)
[LSW1] interface GigabitEthernet 0/0/1
# 设置接口链路类型为Hybrid
[LSW1-GigabitEthernet0/0/1] port link-type hybrid
# 允许VLAN3~6的帧从该接口发出时剥离标签,匹配AR1物理接口
[LSW1-GigabitEthernet0/0/1] port hybrid untagged vlan 3 4 5 6
# 允许VLAN2的帧从该接口发出时保留标签,匹配AR1子接口
[LSW1-GigabitEthernet0/0/1] port hybrid tagged vlan 2
[LSW1-GigabitEthernet0/0/1] undo shutdown
[LSW1-GigabitEthernet0/0/1] quit
# 7. 保存配置
[LSW1] save
The current configuration will be written to the device.
Are you sure to continue? [Y/N]: y
Now saving the current configuration to the slot 0.
Save the configuration successfully.
[LSW1] quit
LSW2 配置(接入交换机)
<Huawei> system-view
[Huawei] sysname LSW2
# 1. 批量创建VLAN
[LSW2] vlan batch 2 3 4 5 6
Info: This operation may take a few seconds. Please wait for a moment...done.
# 2. 配置PC3接口(Access类型,属于VLAN2)
[LSW2] interface GigabitEthernet 0/0/3
[LSW2-GigabitEthernet0/0/3] port link-type access
[LSW2-GigabitEthernet0/0/3] port default vlan 2
[LSW2-GigabitEthernet0/0/3] undo shutdown
[LSW2-GigabitEthernet0/0/3] quit
# 3. 配置PC4接口(Hybrid类型,PVID=VLAN4,不放通VLAN6)
[LSW2] interface GigabitEthernet 0/0/4
[LSW2-GigabitEthernet0/0/4] port link-type hybrid
[LSW2-GigabitEthernet0/0/4] port hybrid pvid vlan 4
# 允许VLAN2~5的帧无标签通过,不放通VLAN6
[LSW2-GigabitEthernet0/0/4] port hybrid untagged vlan 2 3 4 5
[LSW2-GigabitEthernet0/0/4] undo shutdown
[LSW2-GigabitEthernet0/0/4] quit
# 4. 配置与LSW1互联的Trunk接口
[LSW2] interface GigabitEthernet 0/0/1
[LSW2-GigabitEthernet0/0/1] port link-type trunk
[LSW2-GigabitEthernet0/0/1] port trunk allow-pass vlan 2 3 4 5 6
[LSW2-GigabitEthernet0/0/1] undo shutdown
[LSW2-GigabitEthernet0/0/1] quit
# 5. 配置与LSW3互联的Trunk接口
[LSW2] interface GigabitEthernet 0/0/2
[LSW2-GigabitEthernet0/0/2] port link-type trunk
[LSW2-GigabitEthernet0/0/2] port trunk allow-pass vlan 2 3 4 5 6
[LSW2-GigabitEthernet0/0/2] undo shutdown
[LSW2-GigabitEthernet0/0/2] quit
# 6. 保存配置
[LSW2] save
[LSW2] quit
LSW3 配置(接入交换机)
<Huawei> system-view
[Huawei] sysname LSW3
# 1. 批量创建VLAN
[LSW3] vlan batch 2 3 4 5 6
Info: This operation may take a few seconds. Please wait for a moment...done.
# 2. 配置PC5接口(Hybrid类型,PVID=VLAN5,不放通VLAN6)
[LSW3] interface GigabitEthernet 0/0/2
[LSW3-GigabitEthernet0/0/2] port link-type hybrid
[LSW3-GigabitEthernet0/0/2] port hybrid pvid vlan 5
# 允许VLAN2~5的帧无标签通过,不放通VLAN6
[LSW3-GigabitEthernet0/0/2] port hybrid untagged vlan 2 3 4 5
[LSW3-GigabitEthernet0/0/2] undo shutdown
[LSW3-GigabitEthernet0/0/2] quit
# 3. 配置PC6接口(Hybrid类型,PVID=VLAN6,不放通VLAN4/5)
[LSW3] interface GigabitEthernet 0/0/3
[LSW3-GigabitEthernet0/0/3] port link-type hybrid
[LSW3-GigabitEthernet0/0/3] port hybrid pvid vlan 6
# 允许VLAN2、3、6的帧无标签通过,不放通VLAN4/5
[LSW3-GigabitEthernet0/0/3] port hybrid untagged vlan 2 3 6
[LSW3-GigabitEthernet0/0/3] undo shutdown
[LSW3-GigabitEthernet0/0/3] quit
# 4. 配置与LSW2互联的Trunk接口
[LSW3] interface GigabitEthernet 0/0/1
[LSW3-GigabitEthernet0/0/1] port link-type trunk
[LSW3-GigabitEthernet0/0/1] port trunk allow-pass vlan 2 3 4 5 6
[LSW3-GigabitEthernet0/0/1] undo shutdown
[LSW3-GigabitEthernet0/0/1] quit
# 5. 保存配置
[LSW3] save
[LSW3] quit
AR1 配置(单臂路由 + DHCP 服务器)
<Huawei> system-view
[Huawei] sysname AR1
# 1. 全局开启DHCP服务(必须开启,否则DHCP无法工作)
[AR1] dhcp enable
Info: The operation may take a few seconds. Please wait for a moment.
DHCP is enabled successfully.
# 2. 配置物理接口(对应VLAN3~6,192.168.1.0/24网关)
[AR1] interface GigabitEthernet 0/0/0
# 配置接口IP地址,作为VLAN3~6的网关
[AR1-GigabitEthernet0/0/0] ip address 192.168.1.254 255.255.255.0
# 配置接口使用全局DHCP地址池分配IP
[AR1-GigabitEthernet0/0/0] dhcp select global
[AR1-GigabitEthernet0/0/0] undo shutdown
[AR1-GigabitEthernet0/0/0] quit
# 3. 配置子接口(对应VLAN2,192.168.2.0/24网关)
# 子接口编号0/0/0.1,对应VLAN2
[AR1] interface GigabitEthernet 0/0/0.1
# 配置子接口终结VLAN2的标签,识别带VLAN2标签的帧
[AR1-GigabitEthernet0/0/0.1] dot1q termination vid 2
# 配置子接口IP地址,作为VLAN2的网关
[AR1-GigabitEthernet0/0/0.1] ip address 192.168.2.254 255.255.255.0
# 配置子接口使用全局DHCP地址池分配IP
[AR1-GigabitEthernet0/0/0.1] dhcp select global
[AR1-GigabitEthernet0/0/0.1] undo shutdown
[AR1-GigabitEthernet0/0/0.1] quit
# 4. 配置DHCP地址池1(对应VLAN3~6,192.168.1.0/24)
[AR1] ip pool pool1
# 配置地址池网段和掩码
[AR1-ip-pool-pool1] network 192.168.1.0 mask 255.255.255.0
# 配置网关地址,与物理接口IP一致
[AR1-ip-pool-pool1] gateway-list 192.168.1.254
# 配置DNS服务器地址
[AR1-ip-pool-pool1] dns-list 8.8.8.8 114.114.114.114
# 配置地址租期为12小时
[AR1-ip-pool-pool1] lease day 0 hour 12 minute 0
[AR1-ip-pool-pool1] quit
# 5. 配置DHCP地址池2(对应VLAN2,192.168.2.0/24)
[AR1] ip pool pool2
[AR1-ip-pool-pool2] network 192.168.2.0 mask 255.255.255.0
[AR1-ip-pool-pool2] gateway-list 192.168.2.254
[AR1-ip-pool-pool2] dns-list 8.8.8.8 114.114.114.114
[AR1-ip-pool-pool2] lease day 0 hour 12 minute 0
[AR1-ip-pool-pool2] quit
# 6. 保存配置
[AR1] save
[AR1] quit
PC 端配置
所有 PC 设置为DHCP 自动获取 IP 地址:
-
打开 PC 的网络设置
-
选择以太网适配器
-
勾选 "自动获取 IP 地址" 和 "自动获取 DNS 服务器地址"
-
点击确定,等待 IP 地址获取
实验结果验证
交换机接口与 VLAN 配置验证
LSW1 接口配置验证
[LSW1] display port vlan
Port Link Type PVID Trunk VLAN list
--------------------------------------------------------------------------------
GigabitEthernet0/0/1 hybrid 1 2
GigabitEthernet0/0/2 trunk 1 2-6
GigabitEthernet0/0/3 access 2 -
GigabitEthernet0/0/4 hybrid 3 -
验证结论:
-
GE0/0/1 为 Hybrid 类型,PVID=1,tagged vlan 2,untagged vlan 3-6,配置正确
-
GE0/0/2 为 Trunk 类型,放通 VLAN2-6,配置正确
-
GE0/0/3 为 Access 类型,PVID=2,配置正确
-
GE0/0/4 为 Hybrid 类型,PVID=3,配置正确
LSW2 接口配置验证
[LSW2] display port vlan
Port Link Type PVID Trunk VLAN list
--------------------------------------------------------------------------------
GigabitEthernet0/0/1 trunk 1 2-6
GigabitEthernet0/0/2 trunk 1 2-6
GigabitEthernet0/0/3 access 2 -
GigabitEthernet0/0/4 hybrid 4 -
验证结论:所有接口配置符合需求。
LSW3 接口配置验证
[LSW3] display port vlan
Port Link Type PVID Trunk VLAN list
--------------------------------------------------------------------------------
GigabitEthernet0/0/1 trunk 1 2-6
GigabitEthernet0/0/2 hybrid 5 -
GigabitEthernet0/0/3 hybrid 6 -
验证结论:所有接口配置符合需求。
路由器接口与 DHCP 配置验证
AR1 接口 IP 验证
[AR1] display ip interface brief
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
The number of interface that is UP in Physical is 2
The number of interface that is DOWN in Physical is 0
The number of interface that is UP in Protocol is 2
The number of interface that is DOWN in Protocol is 0
Interface IP Address/Mask Physical Protocol
GigabitEthernet0/0/0 192.168.1.254/24 up up
GigabitEthernet0/0/0.1 192.168.2.254/24 up up
验证结论:物理接口和子接口 IP 配置正确,物理和协议状态均为 up。
DHCP 地址池验证
[AR1] display ip pool
-------------------------------------------------------------------------------
Pool-name : pool1
Pool-No : 0
Lease : 0 Days 12 Hours 0 Minutes
Domain-name : -
DNS-server0 : 8.8.8.8
DNS-server1 : 114.114.114.114
NBNS-server0 : -
Netbios-type : -
Position : Local
Status : Unlocked
Gateway-0 : 192.168.1.254
Network : 192.168.1.0/24
-------------------------------------------------------------------------------
Pool-name : pool2
Pool-No : 1
Lease : 0 Days 12 Hours 0 Minutes
Domain-name : -
DNS-server0 : 8.8.8.8
DNS-server1 : 114.114.114.114
NBNS-server0 : -
Netbios-type : -
Position : Local
Status : Unlocked
Gateway-0 : 192.168.2.254
Network : 192.168.2.0/24
-------------------------------------------------------------------------------
验证结论:两个地址池配置正确,网关、DNS、租期均符合需求。
PC 端 IP 地址获取验证
| PC | 获取 IP 地址 | 子网掩码 | 网关 | DNS 服务器 | 验证结果 |
|---|---|---|---|---|---|
| PC1 | 192.168.2.253/24 | 255.255.255.0 | 192.168.2.254 | 8.8.8.8/114.114.114.114 | 成功获取 |
| PC2 | 192.168.1.253/24 | 255.255.255.0 | 192.168.1.254 | 8.8.8.8/114.114.114.114 | 成功获取 |
| PC3 | 192.168.2.252/24 | 255.255.255.0 | 192.168.2.254 | 8.8.8.8/114.114.114.114 | 成功获取 |
| PC4 | 192.168.1.252/24 | 255.255.255.0 | 192.168.1.254 | 8.8.8.8/114.114.114.114 | 成功获取 |
| PC5 | 192.168.1.251/24 | 255.255.255.0 | 192.168.1.254 | 8.8.8.8/114.114.114.114 | 成功获取 |
| PC6 | 192.168.1.250/24 | 255.255.255.0 | 192.168.1.254 | 8.8.8.8/114.114.114.114 | 成功获取 |
验证结论:所有 PC 均成功获取 IP 地址,PC1/3 从地址池 2 获取,PC2/4/5/6 从地址池 1 获取,符合需求。
连通性测试验证
PC1/3 跨网段访问测试
# PC1 ping PC6
PC> ping 192.168.1.250
Ping 192.168.1.250: 32 data bytes, Press Ctrl_C to break
From 192.168.1.250: bytes=32 seq=1 ttl=254 time=10 ms
From 192.168.1.250: bytes=32 seq=2 ttl=254 time=10 ms
From 192.168.1.250: bytes=32 seq=3 ttl=254 time=10 ms
From 192.168.1.250: bytes=32 seq=4 ttl=254 time=10 ms
From 192.168.1.250: bytes=32 seq=5 ttl=254 time=10 ms
--- 192.168.1.250 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 10/10/10 ms
验证结论:PC1/3 与 PC2/4/5/6 跨网段互通正常。
PC2 访问测试
# PC2 ping PC6
PC> ping 192.168.1.250
Ping 192.168.1.250: 32 data bytes, Press Ctrl_C to break
From 192.168.1.250: bytes=32 seq=1 ttl=255 time=1 ms
From 192.168.1.250: bytes=32 seq=2 ttl=255 time=1 ms
From 192.168.1.250: bytes=32 seq=3 ttl=255 time=1 ms
From 192.168.1.250: bytes=32 seq=4 ttl=255 time=1 ms
From 192.168.1.250: bytes=32 seq=5 ttl=255 time=1 ms
--- 192.168.1.250 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 1/1/1 ms
验证结论:PC2 可以访问 PC4/5/6,符合需求。
PC4 访问测试
# PC4 ping PC5
PC> ping 192.168.1.251
Ping 192.168.1.251: 32 data bytes, Press Ctrl_C to break
From 192.168.1.251: bytes=32 seq=1 ttl=255 time=1 ms
From 192.168.1.251: bytes=32 seq=2 ttl=255 time=1 ms
From 192.168.1.251: bytes=32 seq=3 ttl=255 time=1 ms
From 192.168.1.251: bytes=32 seq=4 ttl=255 time=1 ms
From 192.168.1.251: bytes=32 seq=5 ttl=255 time=1 ms
--- 192.168.1.251 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 1/1/1 ms
# PC4 ping PC6
PC> ping 192.168.1.250
Ping 192.168.1.250: 32 data bytes, Press Ctrl_C to break
Request timeout!
Request timeout!
Request timeout!
Request timeout!
Request timeout!
--- 192.168.1.250 ping statistics ---
5 packet(s) transmitted
0 packet(s) received
100.00% packet loss
验证结论:PC4 可以访问 PC5,不能访问 PC6,符合需求。
PC5 访问测试
# PC5 ping PC6
PC> ping 192.168.1.250
Ping 192.168.1.250: 32 data bytes, Press Ctrl_C to break
Request timeout!
Request timeout!
Request timeout!
Request timeout!
Request timeout!
--- 192.168.1.250 ping statistics ---
5 packet(s) transmitted
0 packet(s) received
100.00% packet loss
验证结论:PC5 不能访问 PC6,符合需求。
实验重难点分析
难点 1:Hybrid 接口访问控制
-
原理:Hybrid 接口通过
untagged vlan控制哪些 VLAN 的帧可以无标签通过,从而实现同网段内的精细访问控制。 -
关键理解:
-
当 PC2(PVID=3)发送帧时,帧被打上 VLAN3 标签
-
当帧到达 PC6 接口时,PC6 接口的
untagged vlan包含 VLAN3,因此会剥离标签,PC6 可以接收 -
当 PC4(PVID=4)发送帧时,帧被打上 VLAN4 标签
-
当帧到达 PC6 接口时,PC6 接口的
untagged vlan不包含 VLAN4,因此会丢弃该帧
-
-
错误规避:
untagged vlan必须包含自身的 PVID,否则接口无法接收自身发送的帧的回应。
难点 2:LSW1 与 AR1 互联接口配置
-
原理:AR1 的物理接口只能识别无标签帧,子接口只能识别带对应 VLAN 标签的帧。
-
关键配置:
-
LSW1 与 AR1 的互联接口必须配置为 Hybrid 类型
-
VLAN3~6 的流量去标签,匹配 AR1 物理接口
-
VLAN2 的流量保留标签,匹配 AR1 子接口的
dot1q termination vid 2
-
-
错误规避:若配置为 Trunk 接口,所有 VLAN 都会带标签,AR1 物理接口无法识别,导致 PC2/4/5/6 无法获取 IP。
难点 3:DHCP 跨 VLAN 分配
-
原理:DHCP 请求是广播报文,通过交换机透传后,AR1 物理接口接收 VLAN3~6 的广播请求,子接口接收 VLAN2 的广播请求,分别从对应的地址池分配 IP。
-
关键配置:物理接口和子接口都必须配置
dhcp select global,开启全局 DHCP。 -
错误规避:若子接口未配置
dhcp select global,PC1/3 无法获取 IP 地址。
实验总结
知识点总结
-
VLAN 接口类型:
-
Access:单 VLAN,无标签帧,适用于连接终端
-
Trunk:多 VLAN,带标签帧,适用于交换机互联
-
Hybrid:灵活控制标签,适用于同网段精细访问控制
-
-
单臂路由:通过物理接口 + 子接口终结 VLAN,实现跨 VLAN 三层互通
-
DHCP 服务器:配置多地址池,为不同 VLAN 分配 IP 地址
-
二层流量控制:通过 Hybrid 接口 + PVID 实现同网段内的精细访问控制
-
华为设备特性:接口默认 shutdown,Hybrid 接口是华为特有,功能强大
常见错误与排障
| 错误现象 | 原因 | 解决方案 |
|---|---|---|
| PC2/4/5/6 无法获取 IP | LSW1 与 AR1 互联接口配置为 Trunk,VLAN3-6 带标签 | 改为 Hybrid,配置port hybrid untagged vlan 3 4 5 6 |
| PC4 可以访问 PC6 | PC4 接口放通了 VLAN6 | 修改为port hybrid untagged vlan 2 3 4 5 |
| PC1 无法访问 PC2 | AR1 子接口未配置,或 LSW1 未放通 VLAN2 | 检查子接口配置和 Trunk 放通 VLAN2 |
| DHCP 获取失败 | 路由器未开启dhcp enable,或接口未配置dhcp select global |
开启 DHCP 服务,接口配置全局 DHCP |
| PC1 无法获取 IP | AR1 子接口未配置dot1q termination vid 2 |
配置子接口终结 VLAN2 标签 |
| PC2 无法访问 PC4 | PC2 接口未放通 VLAN4 | 配置port hybrid untagged vlan 4 |
附录:完整配置文件
LSW1 配置
#
sysname LSW1
#
vlan batch 2 3 4 5 6
#
interface GigabitEthernet0/0/1
port link-type hybrid
port hybrid tagged vlan 2
port hybrid untagged vlan 3 4 5 6
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 2 to 6
#
interface GigabitEthernet0/0/3
port link-type access
port default vlan 2
#
interface GigabitEthernet0/0/4
port link-type hybrid
port hybrid pvid vlan 3
port hybrid untagged vlan 2 3 4 5 6
#
return
LSW2 配置
#
sysname LSW2
#
vlan batch 2 3 4 5 6
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 6
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 2 to 6
#
interface GigabitEthernet0/0/3
port link-type access
port default vlan 2
#
interface GigabitEthernet0/0/4
port link-type hybrid
port hybrid pvid vlan 4
port hybrid untagged vlan 2 3 4 5
#
return
LSW3 配置
#
sysname LSW3
#
vlan batch 2 3 4 5 6
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 6
#
interface GigabitEthernet0/0/2
port link-type hybrid
port hybrid pvid vlan 5
port hybrid untagged vlan 2 3 4 5
#
interface GigabitEthernet0/0/3
port link-type hybrid
port hybrid pvid vlan 6
port hybrid untagged vlan 2 3 6
#
return
AR1 配置
#
sysname AR1
#
dhcp enable
#
ip pool pool1
network 192.168.1.0 mask 255.255.255.0
gateway-list 192.168.1.254
dns-list 8.8.8.8 114.114.114.114
lease day 0 hour 12 minute 0
#
ip pool pool2
network 192.168.2.0 mask 255.255.255.0
gateway-list 192.168.2.254
dns-list 8.8.8.8 114.114.114.114
lease day 0 hour 12 minute 0
#
interface GigabitEthernet0/0/0
ip address 192.168.1.254 255.255.255.0
dhcp select global
#
interface GigabitEthernet0/0/0.1
dot1q termination vid 2
ip address 192.168.2.254 255.255.255.0
dhcp select global
#
return
实验注意事项
-
华为设备接口默认处于
shutdown状态,配置完成后必须执行undo shutdown开启接口 -
所有交换机必须创建相同的 VLAN,否则 Trunk 链路无法透传对应 VLAN 的流量
-
Hybrid 接口的
untagged vlan必须包含自身的 PVID,否则无法正常通信 -
单臂路由的子接口必须配置
dot1q termination vid命令,否则无法识别 VLAN 标签 -
DHCP 服务必须全局开启,且接口必须配置
dhcp select global才能分配 IP 地址 -
实验完成后必须保存配置,否则设备重启后配置会丢失
二、STP 生成树综合实验
实验拓扑

实验设备清单
| 设备类型 | 设备名称 | 型号 | 数量 | 用途 |
|---|---|---|---|---|
| 二层交换机 | LSW1~LSW13 | S3700/S5700 | 13 | 生成树实验节点 |
拓扑结构说明
实验包含3 组独立的生成树拓扑,用于验证不同网络结构下 STP 的工作原理:
-
4 交换机环网拓扑(左):LSW1、LSW2、LSW3、LSW4 组成全互联冗余环网,用于验证 STP 消除环路的核心功能
-
3 交换机链式拓扑(中):LSW5、LSW6、LSW7 组成链式无冗余拓扑,用于验证 STP 在无环网络中的端口角色
-
6 交换机全互联拓扑(右):LSW8~LSW13 组成复杂全互联冗余拓扑,用于验证 STP 在大型网络中的选路与冗余
拓扑链路与接口连接表
| 本端设备 | 本端接口 | 对端设备 | 对端接口 | 链路类型 | 传输介质 |
|---|---|---|---|---|---|
| 4 交换机环网 | |||||
| LSW1 | GE0/0/1 | LSW2 | GE0/0/1 | 以太网 | 双绞线 |
| LSW1 | GE0/0/2 | LSW3 | GE0/0/1 | 以太网 | 双绞线 |
| LSW1 | GE0/0/3 | LSW2 | GE0/0/2 | 以太网 | 双绞线 |
| LSW2 | GE0/0/3 | LSW4 | GE0/0/2 | 以太网 | 双绞线 |
| LSW3 | GE0/0/2 | LSW4 | GE0/0/1 | 以太网 | 双绞线 |
| 3 交换机链式 | |||||
| LSW5 | GE0/0/1 | LSW6 | GE0/0/1 | 以太网 | 双绞线 |
| LSW6 | GE0/0/2 | LSW7 | GE0/0/1 | 以太网 | 双绞线 |
| 6 交换机全互联 | |||||
| LSW8 | GE0/0/1 | LSW9 | GE0/0/1 | 以太网 | 双绞线 |
| LSW8 | GE0/0/2 | LSW9 | GE0/0/2 | 以太网 | 双绞线 |
| LSW8 | GE0/0/3 | LSW10 | GE0/0/1 | 以太网 | 双绞线 |
| LSW8 | GE0/0/4 | LSW11 | GE0/0/1 | 以太网 | 双绞线 |
| LSW9 | GE0/0/3 | LSW11 | GE0/0/3 | 以太网 | 双绞线 |
| LSW9 | GE0/0/4 | LSW13 | GE0/0/2 | 以太网 | 双绞线 |
| LSW10 | GE0/0/2 | LSW11 | GE0/0/4 | 以太网 | 双绞线 |
| LSW10 | GE0/0/3 | LSW12 | GE0/0/1 | 以太网 | 双绞线 |
| LSW11 | GE0/0/4 | LSW13 | GE0/0/1 | 以太网 | 双绞线 |
| LSW12 | GE0/0/2 | LSW13 | GE0/0/2 | 以太网 | 双绞线 |
实验需求
-
STP 基础功能:所有交换机开启 STP(生成树协议),自动消除二层环路,避免广播风暴
-
根桥选举:
-
指定 LSW1 为 4 交换机环网的根桥
-
指定 LSW5 为 3 交换机链式的根桥
-
指定 LSW8 为 6 交换机全互联的根桥
-
-
端口角色选举:按照拓扑标注,完成根端口、指定端口、阻塞端口(非指定端口)的选举
-
根桥所有端口均为指定端口(DESI)
-
非根桥距离根桥路径开销最小的端口为根端口(ROOT)
-
网段上距离根桥路径开销更小的端口为指定端口(DESI),另一端口为阻塞端口(ALTE,非指定端口)
-
-
拓扑验证:验证生成树收敛后,阻塞端口状态为
Discarding,转发端口状态为Forwarding,环路被阻断 -
冗余验证:手动断开一条活动链路(根端口),验证生成树自动重新收敛,阻塞端口切换为转发端口,网络不中断
实验原理与思路
STP 原理
生成树协议(Spanning Tree Protocol,STP)是二层环路消除协议,通过阻塞冗余链路,将环形网络 “修剪” 为无环的树型网络,同时保留链路冗余,当活动链路故障时,自动切换到冗余链路,实现网络不中断。
STP 选举步骤
STP 选举严格按照以下 4 步进行,前一步能分出胜负则不再进行后一步:
步骤 1:选举根桥(Root Bridge)
-
选举依据:比较桥 ID(Bridge ID)
-
桥 ID 组成:
桥优先级(默认32768) + 交换机MAC地址 -
选举规则:桥 ID 越小越优先
-
根桥作用:整个生成树的逻辑中心,所有流量以根桥为中心转发,根桥所有端口均为指定端口
步骤 2:选举根端口(Root Port)
-
选举对象:仅非根桥存在根端口,每个非根桥有且仅有 1 个根端口
-
选举依据(优先级从高到低):
-
到根桥的 ** 路径开销(Root Path Cost)** 最小
-
对端桥 ID 最小
-
对端端口 ID 最小
-
-
根端口作用:非根桥去往根桥的最优端口,状态为
Forwarding
步骤 3:选举指定端口(Designated Port)
-
选举对象:每个物理网段有且仅有 1 个指定端口
-
选举依据(优先级从高到低):
-
到根桥的路径开销最小
-
本端桥 ID 最小
-
本端端口 ID 最小
-
-
指定端口作用:负责向该网段转发流量,状态为
Forwarding;根桥所有端口均为指定端口
步骤 4:选举阻塞端口(Alternate Port,非指定端口)
-
选举对象:既不是根端口也不是指定端口的端口
-
端口状态:
Discarding(丢弃状态),不转发用户数据,仅接收 BPDU(桥协议数据单元) -
作用:阻断环路,当活动链路故障时,自动切换为根端口 / 指定端口,恢复网络连通
STP 路径开销计算(华为默认)
| 链路带宽 | STP 路径开销(华为默认) |
|---|---|
| 10 Mbps | 100 |
| 100 Mbps | 19 |
| 1 Gbps | 4 |
| 10 Gbps | 2 |
本实验拓扑端口角色规划
| 拓扑 | 根桥 | 根端口 | 指定端口 | 阻塞端口 |
|---|---|---|---|---|
| 4 交换机环网 | LSW1 | LSW2 GE0/0/1、LSW3 GE0/0/1、LSW4 GE0/0/2 | LSW1 所有端口、LSW2 GE0/0/3、LSW3 GE0/0/2、LSW4 GE0/0/1 | LSW2 GE0/0/2 |
| 3 交换机链式 | LSW5 | LSW6 GE0/0/1、LSW7 GE0/0/1 | LSW5 GE0/0/1、LSW6 GE0/0/2 | 无(链式无冗余,无阻塞端口) |
| 6 交换机全互联 | LSW8 | LSW9 GE0/0/1、LSW10 GE0/0/1、LSW11 GE0/0/1、LSW12 GE0/0/1、LSW13 GE0/0/2 | LSW8 所有端口、LSW9 GE0/0/3、LSW10 GE0/0/3、LSW11 GE0/0/3、LSW13 GE0/0/1 | LSW11 GE0/0/4 |
实验步骤与配置
实验准备工作
-
所有设备恢复出厂配置:
<Huawei> reset saved-configuration Warning: The action will delete the saved configuration in the device. The configuration will be erased to reconfigure. Continue? [Y/N]: y <Huawei> reboot Warning: All the configuration will be saved to the configuration file for the next startup. Continue? [Y/N]: n System will reboot! Continue? [Y/N]: y -
所有设备上电,等待启动完成(约 2-3 分钟)。
交换机环网配置(LSW1/LSW2/LSW3/LSW4)
(1)指定 LSW1 为根桥
# 1. 进入用户视图,进入系统视图
<Huawei> system-view
# 2. 修改设备名称为LSW1
[Huawei] sysname LSW1
# 3. 配置桥优先级为4096,确保成为根桥
# 桥优先级默认32768,必须是4096的倍数,越小越优先
[LSW1] stp priority 4096
# 4. 开启所有接口(华为设备接口默认shutdown,必须手动开启)
[LSW1] interface GigabitEthernet 0/0/1
[LSW1-GigabitEthernet0/0/1] undo shutdown
[LSW1-GigabitEthernet0/0/1] quit
[LSW1] interface GigabitEthernet 0/0/2
[LSW1-GigabitEthernet0/0/2] undo shutdown
[LSW1-GigabitEthernet0/0/2] quit
[LSW1] interface GigabitEthernet 0/0/3
[LSW1-GigabitEthernet0/0/3] undo shutdown
[LSW1-GigabitEthernet0/0/3] quit
# 5. 保存配置
[LSW1] save
The current configuration will be written to the device.
Are you sure to continue? [Y/N]: y
Now saving the current configuration to the slot 0.
Save the configuration successfully.
[LSW1] quit
(2)LSW2 配置(非根桥,自动选举端口角色)
<Huawei> system-view
[Huawei] sysname LSW2
# 华为交换机默认开启STP,可省略stp enable,但为了保险可手动开启
[LSW2] stp enable
# 开启所有接口
[LSW2] interface GigabitEthernet 0/0/1
[LSW2-GigabitEthernet0/0/1] undo shutdown
[LSW2-GigabitEthernet0/0/1] quit
[LSW2] interface GigabitEthernet 0/0/2
[LSW2-GigabitEthernet0/0/2] undo shutdown
[LSW2-GigabitEthernet0/0/2] quit
[LSW2] interface GigabitEthernet 0/0/3
[LSW2-GigabitEthernet0/0/3] undo shutdown
[LSW2-GigabitEthernet0/0/3] quit
# 保存配置
[LSW2] save
[LSW2] quit
(3)LSW3 配置(非根桥,自动选举端口角色)
<Huawei> system-view
[Huawei] sysname LSW3
[LSW3] stp enable
# 开启所有接口
[LSW3] interface GigabitEthernet 0/0/1
[LSW3-GigabitEthernet0/0/1] undo shutdown
[LSW3-GigabitEthernet0/0/1] quit
[LSW3] interface GigabitEthernet 0/0/2
[LSW3-GigabitEthernet0/0/2] undo shutdown
[LSW3-GigabitEthernet0/0/2] quit
# 保存配置
[LSW3] save
[LSW3] quit
(4)LSW4 配置(非根桥,自动选举端口角色)
<Huawei> system-view
[Huawei] sysname LSW4
[LSW4] stp enable
# 开启所有接口
[LSW4] interface GigabitEthernet 0/0/1
[LSW4-GigabitEthernet0/0/1] undo shutdown
[LSW4-GigabitEthernet0/0/1] quit
[LSW4] interface GigabitEthernet 0/0/2
[LSW4-GigabitEthernet0/0/2] undo shutdown
[LSW4-GigabitEthernet0/0/2] quit
# 保存配置
[LSW4] save
[LSW4] quit
交换机链式拓扑配置(LSW5/LSW6/LSW7)
(1)指定 LSW5 为根桥
<Huawei> system-view
[Huawei] sysname LSW5
[LSW5] stp priority 4096
# 开启接口
[LSW5] interface GigabitEthernet 0/0/1
[LSW5-GigabitEthernet0/0/1] undo shutdown
[LSW5-GigabitEthernet0/0/1] quit
# 保存配置
[LSW5] save
[LSW5] quit
(2)LSW6 配置(非根桥)
<Huawei> system-view
[Huawei] sysname LSW6
[LSW6] stp enable
# 开启接口
[LSW6] interface GigabitEthernet 0/0/1
[LSW6-GigabitEthernet0/0/1] undo shutdown
[LSW6-GigabitEthernet0/0/1] quit
[LSW6] interface GigabitEthernet 0/0/2
[LSW6-GigabitEthernet0/0/2] undo shutdown
[LSW6-GigabitEthernet0/0/2] quit
# 保存配置
[LSW6] save
[LSW6] quit
(3)LSW7 配置(非根桥)
<Huawei> system-view
[Huawei] sysname LSW7
[LSW7] stp enable
# 开启接口
[LSW7] interface GigabitEthernet 0/0/1
[LSW7-GigabitEthernet0/0/1] undo shutdown
[LSW7-GigabitEthernet0/0/1] quit
# 保存配置
[LSW7] save
[LSW7] quit
交换机全互联拓扑配置(LSW8~LSW13)
(1)指定 LSW8 为根桥
<Huawei> system-view
[Huawei] sysname LSW8
[LSW8] stp priority 4096
# 开启所有接口
[LSW8] interface GigabitEthernet 0/0/1
[LSW8-GigabitEthernet0/0/1] undo shutdown
[LSW8-GigabitEthernet0/0/1] quit
[LSW8] interface GigabitEthernet 0/0/2
[LSW8-GigabitEthernet0/0/2] undo shutdown
[LSW8-GigabitEthernet0/0/2] quit
[LSW8] interface GigabitEthernet 0/0/3
[LSW8-GigabitEthernet0/0/3] undo shutdown
[LSW8-GigabitEthernet0/0/3] quit
[LSW8] interface GigabitEthernet 0/0/4
[LSW8-GigabitEthernet0/0/4] undo shutdown
[LSW8-GigabitEthernet0/0/4] quit
# 保存配置
[LSW8] save
[LSW8] quit
(2)LSW9 配置(非根桥)
<Huawei> system-view
[Huawei] sysname LSW9
[LSW9] stp enable
# 开启所有接口
[LSW9] interface GigabitEthernet 0/0/1
[LSW9-GigabitEthernet0/0/1] undo shutdown
[LSW9-GigabitEthernet0/0/1] quit
[LSW9] interface GigabitEthernet 0/0/2
[LSW9-GigabitEthernet0/0/2] undo shutdown
[LSW9-GigabitEthernet0/0/2] quit
[LSW9] interface GigabitEthernet 0/0/3
[LSW9-GigabitEthernet0/0/3] undo shutdown
[LSW9-GigabitEthernet0/0/3] quit
[LSW9] interface GigabitEthernet 0/0/4
[LSW9-GigabitEthernet0/0/4] undo shutdown
[LSW9-GigabitEthernet0/0/4] quit
# 保存配置
[LSW9] save
[LSW9] quit
(3)LSW10 配置(非根桥)
<Huawei> system-view
[Huawei] sysname LSW10
[LSW10] stp enable
# 开启所有接口
[LSW10] interface GigabitEthernet 0/0/1
[LSW10-GigabitEthernet0/0/1] undo shutdown
[LSW10-GigabitEthernet0/0/1] quit
[LSW10] interface GigabitEthernet 0/0/2
[LSW10-GigabitEthernet0/0/2] undo shutdown
[LSW10-GigabitEthernet0/0/2] quit
[LSW10] interface GigabitEthernet 0/0/3
[LSW10-GigabitEthernet0/0/3] undo shutdown
[LSW10-GigabitEthernet0/0/3] quit
# 保存配置
[LSW10] save
[LSW10] quit
(4)LSW11 配置(非根桥,含阻塞端口)
<Huawei> system-view
[Huawei] sysname LSW11
[LSW11] stp enable
# 开启所有接口
[LSW11] interface GigabitEthernet 0/0/1
[LSW11-GigabitEthernet0/0/1] undo shutdown
[LSW11-GigabitEthernet0/0/1] quit
[LSW11] interface GigabitEthernet 0/0/3
[LSW11-GigabitEthernet0/0/3] undo shutdown
[LSW11-GigabitEthernet0/0/3] quit
[LSW11] interface GigabitEthernet 0/0/4
[LSW11-GigabitEthernet0/0/4] undo shutdown
[LSW11-GigabitEthernet0/0/4] quit
# 保存配置
[LSW11] save
[LSW11] quit
(5)LSW12 配置(非根桥)
<Huawei> system-view
[Huawei] sysname LSW12
[LSW12] stp enable
# 开启所有接口
[LSW12] interface GigabitEthernet 0/0/1
[LSW12-GigabitEthernet0/0/1] undo shutdown
[LSW12-GigabitEthernet0/0/1] quit
[LSW12] interface GigabitEthernet 0/0/2
[LSW12-GigabitEthernet0/0/2] undo shutdown
[LSW12-GigabitEthernet0/0/2] quit
# 保存配置
[LSW12] save
[LSW12] quit
(6)LSW13 配置(非根桥)
<Huawei> system-view
[Huawei] sysname LSW13
[LSW13] stp enable
# 开启所有接口
[LSW13] interface GigabitEthernet 0/0/1
[LSW13-GigabitEthernet0/0/1] undo shutdown
[LSW13-GigabitEthernet0/0/1] quit
[LSW13] interface GigabitEthernet 0/0/2
[LSW13-GigabitEthernet0/0/2] undo shutdown
[LSW13-GigabitEthernet0/0/2] quit
# 保存配置
[LSW13] save
[LSW13] quit
实验结果验证
根桥选举验证
(1)4 交换机环网根桥验证(LSW1)
[LSW1] display stp root
-------[CIST Root/ERPC]-------
CIST Root Identifier : 4096.4c1f-ccaa-1111
ERPC : 0
CIST Root/ERPC change times : 1
Last change time : 2025-10-01 10:00:00
输出解释:
-
CIST Root Identifier:公共和内部生成树根桥 ID,格式为优先级.MAC地址 -
4096.4c1f-ccaa-1111:优先级 4096,MAC 地址 4c1f-ccaa-1111,为根桥 -
ERPC:根路径开销,根桥到自身的开销为 0
验证结论:LSW1 桥 ID 最小,成功当选 4 交换机环网的根桥。
(2)6 交换机全互联根桥验证(LSW8)
[LSW8] display stp root
-------[CIST Root/ERPC]-------
CIST Root Identifier : 4096.4c1f-ccaa-8888
ERPC : 0
验证结论:LSW8 成功当选 6 交换机全互联的根桥。
端口角色与状态验证
(1)4 交换机环网端口验证
LSW1(根桥)端口验证
[LSW1] display stp interface brief
Interface Role StpState RoleStpChange
GE0/0/1 DESI FORWARDING YES
GE0/0/2 DESI FORWARDING YES
GE0/0/3 DESI FORWARDING YES
输出解释:
-
Role:端口角色,DESI为指定端口 -
StpState:端口状态,FORWARDING为转发状态 -
根桥所有端口均为指定端口,状态为转发,符合需求
验证结论:LSW1 所有端口为指定端口,状态正常。
LSW2 端口验证
[LSW2] display stp interface brief
Interface Role StpState RoleStpChange
GE0/0/1 ROOT FORWARDING YES
GE0/0/2 ALTE DISCARDING YES
GE0/0/3 DESI FORWARDING YES
输出解释:
-
GE0/0/1:ROOT(根端口),FORWARDING(转发)—— 去往根桥的最优端口 -
GE0/0/2:ALTE(阻塞端口 / 替代端口),DISCARDING(丢弃)—— 阻断环路,不转发用户数据 -
GE0/0/3:DESI(指定端口),FORWARDING(转发)—— 负责向 LSW4 所在网段转发流量
验证结论:LSW2 端口角色与状态完全符合拓扑规划,GE0/0/2 成功阻塞,环路被阻断。
LSW3/LSW4 端口验证
# LSW3端口验证
[LSW3] display stp interface brief
Interface Role StpState
GE0/0/1 ROOT FORWARDING
GE0/0/2 DESI FORWARDING
# LSW4端口验证
[LSW4] display stp interface brief
Interface Role StpState
GE0/0/1 DESI FORWARDING
GE0/0/2 ROOT FORWARDING
验证结论:LSW3 和 LSW4 的端口角色与状态完全符合拓扑规划。
(2)6 交换机全互联拓扑端口验证
LSW11 端口验证(含阻塞端口)
[LSW11] display stp interface brief
Interface Role StpState
GE0/0/1 ROOT FORWARDING
GE0/0/3 DESI FORWARDING
GE0/0/4 ALTE DISCARDING
输出解释:
-
GE0/0/4:ALTE(阻塞端口),DISCARDING(丢弃)—— 阻断复杂全互联网络中的环路
验证结论:LSW11 的 GE0/0/4 为阻塞端口,状态正常,符合拓扑标注。
LSW13 端口验证
[LSW13] display stp interface brief
Interface Role StpState
GE0/0/1 DESI FORWARDING
GE0/0/2 ROOT FORWARDING
验证结论:LSW13 端口角色与状态完全符合拓扑规划。
环路阻断与冗余验证
(1)环路阻断验证
在 LSW2 的阻塞端口GE0/0/2上抓包(使用 Wireshark 或 eNSP 抓包功能):
-
观察到仅接收BPDU 报文(桥协议数据单元,用于 STP 选举)
-
未观察到任何用户数据报文(如 ARP、ICMP、TCP/UDP)
验证结论:阻塞端口仅接收 BPDU,不转发用户数据,广播风暴被成功阻断,网络正常运行。
(2)冗余链路故障切换验证
实验步骤:
-
查看初始端口状态:
[LSW2] display stp interface brief Interface Role StpState GE0/0/1 ROOT FORWARDING GE0/0/2 ALTE DISCARDING GE0/0/3 DESI FORWARDING -
手动断开根端口(模拟链路故障):
[LSW2] interface GigabitEthernet 0/0/1 [LSW2-GigabitEthernet0/0/1] shutdown # 关闭根端口,模拟链路故障 [LSW2-GigabitEthernet0/0/1] quit -
等待生成树收敛(约 30-50 秒,STP 默认收敛时间):
-
查看端口状态变化:
[LSW2] display stp interface brief Interface Role StpState GE0/0/1 DESI DISCARDING GE0/0/2 ROOT FORWARDING GE0/0/3 DESI FORWARDING -
测试连通性:在 LSW3 上 ping LSW4,或在 LSW2 上 ping LSW1,网络无中断。
输出解释:
-
原阻塞端口
GE0/0/2自动切换为ROOT(根端口),状态变为FORWARDING(转发) -
原根端口
GE0/0/1状态变为DISCARDING
验证结论:链路故障后,生成树自动重新收敛,阻塞端口切换为转发端口,网络无中断,冗余功能生效。
实验重难点分析
难点 1:根桥选举与优先级配置
-
桥 ID 组成:
桥优先级(2字节) + MAC地址(6字节),共 8 字节 -
桥优先级规则:
-
范围:0~61440,必须是4096 的倍数(0、4096、8192、...、61440)
-
默认值:32768
-
优先级越小,桥 ID 越小,越优先成为根桥
-
-
为什么选 4096:4096 远小于默认的 32768,确保指定设备成为根桥,避免因 MAC 地址更小导致根桥选举不符合预期
-
错误规避:若多台设备配置相同优先级,会比较 MAC 地址,MAC 地址越小越优先;需确保根桥优先级最低
难点 2:端口角色选举逻辑
(1)根端口选举(非根桥)
-
比较根路径开销:非根桥所有端口到根桥的路径开销之和,最小的为根端口
-
若开销相同,比较对端桥 ID:对端设备的桥 ID 越小,本端端口越优先
-
若对端桥 ID 相同,比较对端端口 ID:对端端口 ID 越小,本端端口越优先
(2)指定端口选举(每个网段)
-
比较根路径开销:网段两端端口到根桥的路径开销,更小的为指定端口
-
若开销相同,比较本端桥 ID:本端设备的桥 ID 越小,本端端口越优先
-
若本端桥 ID 相同,比较本端端口 ID:本端端口 ID 越小,越优先
(3)端口 ID 组成
端口优先级(默认128) + 端口号,共 2 字节,端口优先级必须是 16 的倍数。
难点 3:STP 状态机
STP 端口有 5 种状态,华为设备简化为 3 种主要状态:
| 状态 | 英文 | 含义 | 行为 |
|---|---|---|---|
| 丢弃状态 | Discarding | 不转发数据 | 不转发用户数据,仅接收 BPDU,不学习 MAC 地址 |
| 学习状态 | Learning | 学习 MAC 地址 | 不转发用户数据,接收 BPDU,学习 MAC 地址(持续 15 秒) |
| 转发状态 | Forwarding | 正常转发 | 转发用户数据,接收 BPDU,学习 MAC 地址 |
STP 收敛时间:
-
初始收敛:约 30-50 秒(Discarding → Learning → Forwarding,每个状态 15 秒)
-
故障收敛:约 30-50 秒
实验总结
知识点总结
-
STP 核心作用:消除二层环路,保留链路冗余,实现故障自动切换
-
四大选举步骤:根桥 → 根端口 → 指定端口 → 阻塞端口
-
端口角色:
-
根端口(ROOT):非根桥唯一,去往根桥最优
-
指定端口(DESI):网段唯一,负责转发流量
-
阻塞端口(ALTE):阻断环路,故障时切换
-
-
端口状态:Discarding(丢弃)、Learning(学习)、Forwarding(转发)
-
根桥配置:通过
stp priority手动指定根桥,确保拓扑可控 -
收敛时间:初始 / 故障收敛约 30-50 秒
常见错误与排障
| 错误现象 | 原因 | 解决方案 |
|---|---|---|
| 根桥选举不符合预期 | 根桥优先级配置过高,或多设备优先级相同,或其他设备 MAC 地址更小 | 降低根桥优先级(如改为 0),确保根桥优先级最低 |
| 阻塞端口未阻塞 | STP 未开启,或接口角色选举错误,或链路未连接 | 检查 STP 状态(display stp),检查链路连接,重新配置根桥优先级 |
| 链路故障后网络中断 | 生成树未收敛,或阻塞端口未切换,或冗余链路未连接 | 等待生成树收敛(30-50 秒),检查端口角色配置,检查冗余链路连接 |
| 广播风暴 | STP 未开启,或环路未完全阻断,或所有端口均为 Forwarding | 检查所有交换机 STP 状态(display stp),确认阻塞端口正常,开启 STP |
| 端口角色与预期不符 | 根路径开销计算错误,或对端桥 ID / 端口 ID 更小 | 检查路径开销(display stp interface),调整端口优先级(stp port priority) |
附录:完整配置文件
8.1 LSW1(4 交换机环网根桥)配置
#
sysname LSW1
#
stp priority 4096
#
interface GigabitEthernet0/0/1
undo shutdown
#
interface GigabitEthernet0/0/2
undo shutdown
#
interface GigabitEthernet0/0/3
undo shutdown
#
return
LSW2(4 交换机环网非根桥)配置
#
sysname LSW2
#
stp enable
#
interface GigabitEthernet0/0/1
undo shutdown
#
interface GigabitEthernet0/0/2
undo shutdown
#
interface GigabitEthernet0/0/3
undo shutdown
#
return
LSW5(3 交换机链式根桥)配置
#
sysname LSW5
#
stp priority 4096
#
interface GigabitEthernet0/0/1
undo shutdown
#
return
LSW8(6 交换机全互联根桥)配置
#
sysname LSW8
#
stp priority 4096
#
interface GigabitEthernet0/0/1
undo shutdown
#
interface GigabitEthernet0/0/2
undo shutdown
#
interface GigabitEthernet0/0/3
undo shutdown
#
interface GigabitEthernet0/0/4
undo shutdown
#
return
LSW11(6 交换机全互联非根桥)配置
#
sysname LSW11
#
stp enable
#
interface GigabitEthernet0/0/1
undo shutdown
#
interface GigabitEthernet0/0/3
undo shutdown
#
interface GigabitEthernet0/0/4
undo shutdown
#
return
实验注意事项
-
华为设备接口默认处于
shutdown状态,配置完成后必须执行undo shutdown开启接口 -
所有交换机必须开启 STP(默认开启,但建议手动确认)
-
根桥优先级必须是 4096 的倍数,越小越优先
-
STP 收敛需要时间(约 30-50 秒),验证时需等待收敛完成
-
阻塞端口仅接收 BPDU,不转发用户数据,这是正常现象
-
实验完成后必须保存配置,否则设备重启后配置会丢失
-
冗余验证时,建议使用
shutdown命令模拟链路故障,避免物理插拔损坏设备
更多推荐
所有评论(0)