华为交换机STP与链路聚合实战

1.STP基本配置

本实验使用三台华为交换机(LSW1、LSW2、LSW3)组成三角形冗余拓扑,通过 STP 协议消除二层环路,实现链路冗余备份。

通用配置(所有交换机)

cpp 复制代码
<Huawei>sys
# 关闭信息中心,减少日志干扰
[Huawei]undo info-center enable
# 修改设备名称,便于识别
[Huawei]sysname LSWX
# 配置 STP 工作模式为传统 STP(默认可能为 MSTP)
[LSWX]stp mode stp
# 查看 STP 简要信息
[LSWX]dis stp brief

实验结果

LSW3 是网络中的根桥,因此所有端口默认被选举为指定端口(DP)

替代端口(AP)被阻塞

根端口(RP)距离根桥(LSW3)最近

2.Dot1q终结子接口

PC1和PC2不属于同一网段,需要通过AR1连接,但路由器不能处理vlan,Dot1q终结子接口0.2的vlan2和子接口0.3的vlan3,可以让路由器对vlan打标签去标签。

PC1

PC2

交换机 LSW1 配置

cpp 复制代码
<Huawei>sys
# 关闭信息中心,减少日志干扰
[Huawei]undo info-center enable
# 修改设备名称
[Huawei]sysname LSW1

# 创建 VLAN 2 和 VLAN 3
[LSW1]vlan batch 2 3

# 配置接入端口 GE0/0/1(连接 PC1)
[LSW1]interface GigabitEthernet 0/0/1
[LSW1-GigabitEthernet0/0/1]port link-type access
[LSW1-GigabitEthernet0/0/1]port default vlan 2
[LSW1-GigabitEthernet0/0/1]quit

# 配置接入端口 GE0/0/2(连接 PC2)
[LSW1]interface GigabitEthernet 0/0/2
[LSW1-GigabitEthernet0/0/2]port link-type access
[LSW1-GigabitEthernet0/0/2]port default vlan 3
[LSW1-GigabitEthernet0/0/2]quit

# 配置 Trunk 端口 GE0/0/3(连接路由器 AR1)
[LSW1]interface GigabitEthernet 0/0/3
[LSW1-GigabitEthernet0/0/3]port link-type trunk
[LSW1-GigabitEthernet0/0/3]port trunk allow-pass vlan 2 3
[LSW1-GigabitEthernet0/0/3]quit

路由器 AR1 配置

cpp 复制代码
<Huawei>sys
# 关闭信息中心
[Huawei]undo info-center enable
# 修改设备名称
[Huawei]sysname AR1

# 配置 Dot1q 终结子接口 G0/0/0.2(对应 VLAN 2)
[AR1]interface GigabitEthernet 0/0/0.2
[AR1-GigabitEthernet0/0/0.2]ip address 10.1.1.1 255.255.255.0
[AR1-GigabitEthernet0/0/0.2]dot1q termination vid 2
[AR1-GigabitEthernet0/0/0.2]arp broadcast enable
[AR1-GigabitEthernet0/0/0.2]quit

# 配置 Dot1q 终结子接口 G0/0/0.3(对应 VLAN 3)
[AR1]interface GigabitEthernet 0/0/0.3
[AR1-GigabitEthernet0/0/0.3]ip address 10.2.2.1 255.255.255.0
[AR1-GigabitEthernet0/0/0.3]dot1q termination vid 3
[AR1-GigabitEthernet0/0/0.3]arp broadcast enable
[AR1-GigabitEthernet0/0/0.3]quit

数据转发流程

  1. PC1 发送数据到 PC2

  2. PC1 将数据帧发送到 LSW1,LSW1 为其打上 VLAN 2 的标签。

  3. LSW1 通过 Trunk 端口 GE0/0/3 将带 VLAN 2 标签的帧转发给 AR1。

  4. AR1 的子接口 G0/0/0.2 终结 VLAN 2 标签,识别到数据目的是 VLAN 3 的 PC2。

  5. AR1 将数据转发到子接口 G0/0/0.3,并为其打上 VLAN 3 的标签,再发回 LSW1。

  6. LSW1 剥离 VLAN 3 标签,将数据转发给 PC2。

子接口必须开启 ARP 广播,否则同一 VLAN 内的设备无法通过 ARP 学习到网关的 MAC 地址,导致通信失败。

实验结果

cpp 复制代码
PC1>ping 10.2.2.2

Ping 10.2.2.2: 32 data bytes, Press Ctrl_C to break
From 10.2.2.2: bytes=32 seq=1 ttl=127 time=78 ms
From 10.2.2.2: bytes=32 seq=2 ttl=127 time=93 ms
From 10.2.2.2: bytes=32 seq=3 ttl=127 time=94 ms
From 10.2.2.2: bytes=32 seq=4 ttl=127 time=78 ms
From 10.2.2.2: bytes=32 seq=5 ttl=127 time=63 ms

--- 10.2.2.2 ping statistics ---
  5 packet(s) transmitted
  5 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 63/81/94 ms

3.手工模式配置链路聚合

本实验通过手工模式链路聚合(Eth-Trunk),将 LSW1 与 LSW2 之间的 3 条物理链路(GE0/0/1、GE0/0/2、GE0/0/3)捆绑为一条逻辑聚合链路,实现了带宽叠加与链路冗余备份。同时,通过配置 Trunk 模式透传 VLAN 10 和 VLAN 20,保障了跨交换机的 VLAN 通信。

LSW1

cpp 复制代码
<Huawei>sys
# 关闭信息中心
[Huawei]undo info-center enable
# 修改设备名称
[Huawei]sysname LSW1

# 创建 Eth-Trunk 1 接口
[LSW1]interface Eth-Trunk 1
# 加入成员端口 GE0/0/1 到 GE0/0/3
[LSW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/1 to 0/0/3
# 配置聚合链路为 Trunk 模式
[LSW1-Eth-Trunk1]port link-type trunk
# 允许 VLAN 10、20 透传
[LSW1-Eth-Trunk1]port trunk allow-pass vlan 10 20
# 配置负载分担策略为源目 MAC 地址哈希
[LSW1-Eth-Trunk1]load-balance src-dst-mac
[LSW1-Eth-Trunk1]quit

# 创建 VLAN 10、20
[LSW1]vlan batch 10 20

# 配置接入端口 GE0/0/4(连接 PC1,划入 VLAN 10)
[LSW1]interface GigabitEthernet 0/0/4
[LSW1-GigabitEthernet0/0/4]port link-type access
[LSW1-GigabitEthernet0/0/4]port default vlan 10
[LSW1-GigabitEthernet0/0/4]quit

# 配置接入端口 GE0/0/5(连接 PC2,划入 VLAN 20)
[LSW1]interface GigabitEthernet 0/0/5
[LSW1-GigabitEthernet0/0/5]port link-type access
[LSW1-GigabitEthernet0/0/5]port default vlan 20
[LSW1-GigabitEthernet0/0/5]quit

LSW2

cpp 复制代码
<Huawei>sys
# 关闭信息中心
[Huawei]undo info-center enable
# 修改设备名称
[Huawei]sysname LSW2

# 创建 VLAN 10、20
[LSW2]vlan batch 10 20

# 配置接入端口 GE0/0/4(连接 PC3,划入 VLAN 10)
[LSW2]interface GigabitEthernet 0/0/4
[LSW2-GigabitEthernet0/0/4]port link-type access
[LSW2-GigabitEthernet0/0/4]port default vlan 10
[LSW2-GigabitEthernet0/0/4]quit

# 配置接入端口 GE0/0/5(连接 PC4,划入 VLAN 20)
[LSW2]interface GigabitEthernet 0/0/5
[LSW2-GigabitEthernet0/0/5]port link-type access
[LSW2-GigabitEthernet0/0/5]port default vlan 20
[LSW2-GigabitEthernet0/0/5]quit

# 创建 Eth-Trunk 1 接口
[LSW2]interface Eth-Trunk 1
# 加入成员端口 GE0/0/1 到 GE0/0/3
[LSW2-Eth-Trunk1]trunkport GigabitEthernet 0/0/1 to 0/0/3
# 配置聚合链路为 Trunk 模式
[LSW2-Eth-Trunk1]port link-type trunk
# 允许 VLAN 10、20 透传
[LSW2-Eth-Trunk1]port trunk allow-pass vlan 10 20
# 配置负载分担策略为源目 MAC 地址哈希
[LSW2-Eth-Trunk1]load-balance src-dst-mac
[LSW2-Eth-Trunk1]quit

实验结果

cpp 复制代码
[LSW2]display eth-trunk 1
Eth-Trunk1's state information is:
WorkingMode: NORMAL         Hash arithmetic: According to SA-XOR-DA           
Least Active-linknumber: 1  Max Bandwidth-affected-linknumber: 8              
Operate status: up          Number Of Up Port In Trunk: 3                     
--------------------------------------------------------------------------------
PortName                      Status      Weight 
GigabitEthernet0/0/1          Up          1      
GigabitEthernet0/0/2          Up          1      
GigabitEthernet0/0/3          Up          1      
  

[LSW2]display interface Eth-Trunk 1
Eth-Trunk1 current state : UP
Line protocol current state : UP
Description:
Switch Port, PVID :    1, Hash arithmetic : According to SA-XOR-DA,Maximal BW: 3
G, Current BW: 3G, The Maximum Frame Length is 9216
IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 4c1f-ccae-8063
Current system time: 2026-01-27 15:59:22-08:00
    Input bandwidth utilization  :    0%
    Output bandwidth utilization :    0%
-----------------------------------------------------
PortName                      Status      Weight
-----------------------------------------------------
GigabitEthernet0/0/1          UP          1
GigabitEthernet0/0/2          UP          1
GigabitEthernet0/0/3          UP          1
-----------------------------------------------------
The Number of Ports in Trunk : 3
The Number of UP Ports in Trunk : 3

4.基本ACL

ACL(Access Control List,访问控制列表)是网络设备(如路由器、交换机)上的一种安全过滤技术,通过定义一系列规则来对进出设备的数据包进行检查和控制。

本实验通过在路由器 AR1 上配置基本 ACL(编号 2000),实现对 VLAN 10(PC1 所在网段)访问 Server1 的流量进行过滤,以此验证基本 ACL 基于源 IP 地址的访问控制能力。

PC1/PC2

SERVER1

交换机 LSW1 配置

cpp 复制代码
<Huawei>sys
[Huawei]undo info-center enable
[Huawei]sysname LSW1

# 创建 VLAN 10、20
[LSW1]vlan batch 10 20

# 配置接入端口 GE0/0/1(连接 PC1,划入 VLAN 10)
[LSW1]interface GigabitEthernet 0/0/1
[LSW1-GigabitEthernet0/0/1]port link-type access
[LSW1-GigabitEthernet0/0/1]port default vlan 10
[LSW1-GigabitEthernet0/0/1]quit

# 配置接入端口 GE0/0/2(连接 PC2,划入 VLAN 20)
[LSW1]interface GigabitEthernet 0/0/2
[LSW1-GigabitEthernet0/0/2]port link-type access
[LSW1-GigabitEthernet0/0/2]port default vlan 20
[LSW1-GigabitEthernet0/0/2]quit

# 配置 Trunk 端口 GE0/0/3(连接路由器 AR1)
[LSW1]interface GigabitEthernet 0/0/3
[LSW1-GigabitEthernet0/0/3]port link-type trunk
[LSW1-GigabitEthernet0/0/3]port trunk allow-pass vlan 10 20
[LSW1-GigabitEthernet0/0/3]quit

路由器 AR1 配置

cpp 复制代码
<Huawei>sys
[Huawei]undo info-center enable
[Huawei]sysname AR1

# 配置 Dot1q 终结子接口 G0/0/1.10(对应 VLAN 10)
[AR1]interface GigabitEthernet 0/0/1.10
[AR1-GigabitEthernet0/0/1.10]dot1q termination vid 10
[AR1-GigabitEthernet0/0/1.10]ip address 192.168.10.254 24
[AR1-GigabitEthernet0/0/1.10]arp broadcast enable
[AR1-GigabitEthernet0/0/1.10]quit

# 配置 Dot1q 终结子接口 G0/0/1.20(对应 VLAN 20)
[AR1]interface GigabitEthernet 0/0/1.20
[AR1-GigabitEthernet0/0/1.20]dot1q termination vid 20
[AR1-GigabitEthernet0/0/1.20]ip address 192.168.20.254 24
[AR1-GigabitEthernet0/0/1.20]arp broadcast enable
[AR1-GigabitEthernet0/0/1.20]quit

# 配置连接 Server1 的物理接口 G0/0/0
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip address 10.1.1.254 24
[AR1-GigabitEthernet0/0/0]quit

# 创建基本 ACL 2000,拒绝 VLAN 10 网段(192.168.10.0/24)的流量
[AR1]acl 2000
[AR1-acl-basic-2000]rule 5 deny source 192.168.10.0 0.0.0.255
[AR1-acl-basic-2000]quit

# 应用 ACL 到 G0/0/0 接口的出站方向
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]traffic-filter outbound acl 2000
[AR1-GigabitEthernet0/0/0]quit

实验结果

cpp 复制代码
PC1>ping 10.1.1.1
# 服务器ping不通
Ping 10.1.1.1: 32 data bytes, Press Ctrl_C to break
Request timeout!
Request timeout!
Request timeout!
Request timeout!
Request timeout!

--- 10.1.1.1 ping statistics ---
  5 packet(s) transmitted
  0 packet(s) received
  100.00% packet loss

PC1>ping 192.168.20.1
# PC2可以ping通
Ping 192.168.20.1: 32 data bytes, Press Ctrl_C to break
From 192.168.20.1: bytes=32 seq=1 ttl=127 time=63 ms
From 192.168.20.1: bytes=32 seq=2 ttl=127 time=62 ms
From 192.168.20.1: bytes=32 seq=3 ttl=127 time=78 ms
From 192.168.20.1: bytes=32 seq=4 ttl=127 time=78 ms
From 192.168.20.1: bytes=32 seq=5 ttl=127 time=78 ms

--- 192.168.20.1 ping statistics ---
  5 packet(s) transmitted
  5 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 62/71/78 ms

5.高级ACL

需求:拒绝 PC1(192.168.10.1)到 PC2(192.168.20.1)的 IP 流量,同时允许其他通信。

PC1和PC2

AR1

cpp 复制代码
<Huawei>system-view
[Huawei]undo info-center enable  # 关闭信息中心,减少日志干扰
[Huawei]sysname AR1
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip address 192.168.10.254 24
[AR1-GigabitEthernet0/0/0]undo shutdown
[AR1-GigabitEthernet0/0/0]quit
[AR1]interface GigabitEthernet 0/0/1
[AR1-GigabitEthernet0/0/1]ip address 192.168.20.254 24
[AR1-GigabitEthernet0/0/1]undo shutdown
[AR1-GigabitEthernet0/0/1]quit

[AR1]acl 3000  # 创建高级ACL 3000
[AR1-acl-adv-3000]rule 5 deny ip source 192.168.10.1 0.0.0.0 destination 192.168.20.1 0.0.0.0
# 注:反掩码0.0.0.255会匹配整个网段,更精准的写法是使用0.0.0.0匹配单个主机
[AR1-acl-adv-3000]quit

[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000
[AR1-GigabitEthernet0/0/0]quit

6.基于时间的ACL

需求 :仅允许 PC1 在工作日(周一至周五)8:00-17:00访问 AR2,其他时间拒绝访问。

PC1

AR2 配置

cpp 复制代码
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname AR2
[AR2]interface GigabitEthernet 0/0/0
[AR2-GigabitEthernet0/0/0]ip address 100.1.1.2 24
[AR2-GigabitEthernet0/0/0]undo shutdown
[AR2-GigabitEthernet0/0/0]quit
# 配置静态路由,使AR2能访问PC1所在网段
[AR2]ip route-static 192.168.1.0 24 100.1.1.1

AR1 配置

cpp 复制代码
<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname AR1
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip address 192.168.1.254 24
[AR1-GigabitEthernet0/0/0]undo shutdown
[AR1-GigabitEthernet0/0/0]quit
[AR1]interface GigabitEthernet 0/0/1
[AR1-GigabitEthernet0/0/1]ip address 100.1.1.1 24
[AR1-GigabitEthernet0/0/1]undo shutdown
[AR1-GigabitEthernet0/0/1]quit
# 配置时间范围(Time Range)
[AR1]time-range hw 8:00 to 17:00 working-day
# 验证时间范围配置
[AR1]display time-range hw
Current time is 21:43:45 2-4-2026 Wednesday              
 
Time-range : hw ( Inactive ) 
 08:00 to 17:00 working-day   
# 配置高级 ACL 并关联时间范围
[AR1]acl 3000
# 允许PC1在指定时间访问AR2
[AR1-acl-adv-3000]rule 5 permit ip source 192.168.1.1 0.0.0.0 destination 100.1.1.2 0.0.0.0 time-range hw
# 拒绝其他所有IP流量(默认规则)
[AR1-acl-adv-3000]rule 10 deny ip
[AR1-acl-adv-3000]quit
# 在接口下应用 ACL
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000
[AR1-GigabitEthernet0/0/0]quit
相关推荐
乘云数字DATABUFF4 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--6 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森6 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜7 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB8 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode9 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户03284722207010 天前
如何搭建本地yum源(上)
运维
大树8813 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠13 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质13 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务