每条命令均附详细注释,适合零基础学习。
一、实验拓扑与 IP 规划
1.1 网络结构
- S_A(二层汇聚交换机):
- GE0/0/1:连接 Cloud1(管理网络,VLAN1)
- GE0/0/5:连接 PC1(Access VLAN10)
- Eth-Trunk1(成员口 GE0/0/23、GE0/0/24):Trunk 连接 S_B,只允许 VLAN1 和 VLAN10
- S_B(三层核心交换机):
- Eth-Trunk1(成员口 GE0/0/23、GE0/0/24):Trunk 连接 S_A,只允许 VLAN1 和 VLAN10
- GE0/0/5:连接 PC2(Access VLAN10)
- GE0/0/10:连接 PC3(Access VLAN30)
- VLANIF1:10.0.10.253/24(管理地址)
- VLANIF10:192.168.10.254/24(VLAN10 网关)
- VLANIF30:192.168.30.254/24(VLAN30 网关)
- 管理网络:Cloud1(10.0.10.20/24)可 SSH 登录 S_A(10.0.10.252)和 S_B(10.0.10.253)
1.2 IP 地址规划
1.3 拓扑图


二 基础配置(Console 口安全)
2.1 修改 Console 口密码
<Huawei> system-view
# 进入系统视图(全局配置模式)
[Huawei] sysname S_A
# 修改主机名为 S_A,便于识别
[S_A] user-interface console 0
# 进入 Console 物理端口配置
[S_A-ui-console0] authentication-mode password
# 设置认证方式为密码
[S_A-ui-console0] set authentication password cipher 123456
# 设置密码为 123456(密文存储)
[S_A-ui-console0] quit
# 退出
同样操作在 S_B 上执行,将主机名改为 S_B。
<Huawei> system-view
# 进入系统视图(全局配置模式)
[Huawei] sysname S_B
# 修改主机名为 S_B,便于识别
[S_B] user-interface console 0
# 进入 Console 物理端口配置
[S_B-ui-console0] authentication-mode password
# 设置认证方式为密码
[S_B-ui-console0] set authentication password cipher 123456
# 设置密码为 123456(密文存储)
[S_B-ui-console0] quit
# 退出
三、VLAN 创建与接口配置
3.1 创建 VLAN
S_A(只创建 VLAN10,不需要 VLAN30):
[S_A] vlan batch 10
# 只创建 VLAN 10(VLAN1 默认存在)
S_B(需要 VLAN10 和 VLAN30):
[S_B] vlan batch 10 30
# 批量创建 VLAN 10 和 VLAN 30
3.2 配置 Access 接口(连接 PC)
S_A 上配置 PC1(VLAN10):
[S_A] interface gigabitethernet 0/0/5
# 进入接口 GE0/0/5
[S_A-GigabitEthernet0/0/5] port link-type access
# 设置链路类型为 Access(连接终端)
[S_A-GigabitEthernet0/0/5] port default vlan 10
# 将该接口划入 VLAN 10
[S_A-GigabitEthernet0/0/5] quit
S_B 上配置 PC2(VLAN10)和 PC3(VLAN30):
[S_B] interface gigabitethernet 0/0/5
[S_B-GigabitEthernet0/0/5] port link-type access
[S_B-GigabitEthernet0/0/5] port default vlan 10
[S_B-GigabitEthernet0/0/5] quit
[S_B] interface gigabitethernet 0/0/10
[S_B-GigabitEthernet0/0/10] port link-type access
[S_B-GigabitEthernet0/0/10] port default vlan 30
[S_B-GigabitEthernet0/0/10] quit
3.3 配置 Trunk 与链路聚合(S_A ↔ S_B)
关键点:Trunk 只允许 VLAN1 和 VLAN10,VLAN30 的流量不需要经过此链路。
在 S_A 上配置 Eth-Trunk1:
[S_A] interface eth-trunk 1
# 创建逻辑聚合接口 Eth-Trunk 1
[S_A-Eth-Trunk1] port link-type trunk
# 设置链路类型为 Trunk(交换机互联)
[S_A-Eth-Trunk1] port trunk allow-pass vlan 1 10
# 只允许 VLAN 1 和 VLAN 10 通过(VLAN30 不需要经过 S_A)
[S_A-Eth-Trunk1] quit
[S_A] interface gigabitethernet 0/0/23
[S_A-GigabitEthernet0/0/23] eth-trunk 1
# 将物理口 GE0/0/23 加入聚合组 1
[S_A-GigabitEthernet0/0/23] quit
[S_A] interface gigabitethernet 0/0/24
[S_A-GigabitEthernet0/0/24] eth-trunk 1
[S_A-GigabitEthernet0/0/24] quit
在 S_B 上做完全相同配置(两端必须一致):
[S_B] interface eth-trunk 1
[S_B-Eth-Trunk1] port link-type trunk
[S_B-Eth-Trunk1] port trunk allow-pass vlan 1 10
# 同样只允许 VLAN1 和 VLAN10
[S_B-Eth-Trunk1] quit
[S_B] interface gigabitethernet 0/0/23
[S_B-GigabitEthernet0/0/23] eth-trunk 1
[S_B-GigabitEthernet0/0/23] quit
[S_B] interface gigabitethernet 0/0/24
[S_B-GigabitEthernet0/0/24] eth-trunk 1
[S_B-GigabitEthernet0/0/24] quit
验证链路聚合:
[S_A] display eth-trunk 1
# 查看成员口状态,应为 “Selected”

四、VLANIF 三层接口(所有网关均在 S_B 上)
S_B 配置 VLANIF 接口:
[S_B] interface vlanif 1
[S_B-Vlanif1] ip address 10.0.10.253 24
# S_B 管理地址,用于远程 SSH
[S_B-Vlanif1] quit
[S_B] interface vlanif 10
[S_B-Vlanif10] ip address 192.168.10.254 24
# VLAN10 网关,PC1 和 PC2 的默认网关
[S_B-Vlanif10] quit
[S_B] interface vlanif 30
[S_B-Vlanif30] ip address 192.168.30.254 24
# VLAN30 网关,PC3 的默认网关
[S_B-Vlanif30] quit
S_A 上不需要配置 VLANIF10 和 VLANIF30,因为所有三层转发由 S_B 完成。S_A 仅做二层交换。
S_A 仅配置管理地址:
[S_A] interface vlanif 1
[S_A-Vlanif1] ip address 10.0.10.252 24
# S_A 管理地址,用于远程管理
[S_A-Vlanif1] quit
启用 S_B 的三层路由功能(默认已开启,无需额外操作):
[S_B] ip routing
# 确保 IP 路由功能开启(华为交换机默认开启,此处仅为确认)
S_B上检查路由表:

五、远程管理配置(Telnet/SSH/FTP)
[S_B] telnet server enable
# 开启交换机的 Telnet 服务,使其监听 TCP 23 端口,允许远程 Telnet 连接。
[S_B] user-interface vty 0 4
# 进入虚拟终端线路 VTY 0~4 的配置模式(共 5 条线路,最多支持 5 个远程用户同时登录)。
[S_B-ui-vty0-4] authentication-mode aaa
# 设置 VTY 线路的用户认证方式为 AAA(使用本地用户名/密码数据库或 RADIUS 等,而非单一密码)。
[S_B-ui-vty0-4] protocol inbound telnet
# 指定该 VTY 线路只允许 Telnet 协议入站(禁止 SSH),确保协议匹配。
[S_B-ui-vty0-4] quit
# 退出 VTY 配置模式,返回系统视图。
[S_B] aaa
# 进入 AAA(认证、授权、计费)视图,用于配置本地用户和认证方法。
[S_B-aaa] local-user admin password cipher Admin@123
# 创建一个名为 admin 的本地用户,密码为 Admin@123(采用密文存储,避免明文泄露)。
[S_B-aaa] local-user admin service-type telnet
# 指定用户 admin 允许使用的服务类型为 Telnet(若缺少此项,即使密码正确也无法登录)。
[S_B-aaa] local-user admin privilege level 15
# 设置用户 admin 的权限级别为 15(最高权限,可进入系统视图执行所有配置命令)。
[S_B-aaa] quit
# 退出 AAA 视图,返回系统视图。
5.2 SSH 配置(生产推荐,重点解决老版本闪退)
以 S_B 为例(S_A 同理),注意 shell 命令。
[S_B] rsa local-key-pair create
# 生成 RSA 密钥对,提示输入模数时输入 2048(不要用 512)
[S_B] stelnet server enable
# 开启 SSH Stelnet 服务
[S_B] ssh user admin authentication-type password
# 创建 SSH 用户 admin,认证方式为密码
[S_B] ssh user admin service-type stelnet
# 允许该用户使用交互式命令行
[S_B] user-interface vty 0 4
[S_B-ui-vty0-4] authentication-mode aaa
[S_B-ui-vty0-4] protocol inbound ssh
# 只允许 SSH 登录
[S_B-ui-vty0-4] user privilege level 15
[S_B-ui-vty0-4] shell
# 【关键】老版本(VRP5.110)必须加这一条,否则认证通过后会闪退,报 protocol error
[S_B-ui-vty0-4] quit
[S_B] aaa
[S_B-aaa] local-user admin password cipher Admin@123
[S_B-aaa] local-user admin service-type ssh
[S_B-aaa] local-user admin privilege level 15
[S_B-aaa] quit
客户端注意事项(解决 SSH 闪退):
- MobaXterm:会话设置 → Advanced SSH settings → 远程环境 → 选择 “交互式shell”(不要选“执行命令”)
- PuTTY:Connection → SSH → 勾选 “Don't allocate a pseudo-terminal”
- 命令行:
ssh -T admin@10.0.10.253或ssh -t admin@10.0.10.253 "bash"
5.3 FTP 配置(用于上传下载配置文件)
[S_B] ftp server enable
[S_B] aaa
[S_B-aaa] local-user ftpuser password cipher Ftp@123
[S_B-aaa] local-user ftpuser service-type ftp
[S_B-aaa] local-user ftpuser privilege level 15
[S_B-aaa] local-user ftpuser ftp-directory flash:/
[S_B-aaa] quit
六、保存配置与常用排错命令
[S_A] save
[S_B] save
# 保存配置到闪存,防止重启丢失
排错命令速查表

七、验证步骤
- 同 VLAN 二层连通性:PC1 ping PC2(同 VLAN10,路径 PC1→S_A→Trunk→S_B→PC2)—— 应通

2.跨 VLAN 路由:PC1 ping PC3(VLAN10 → VLAN30,由 S_B 路由转发)—— 应通
-
- 流量路径:PC1 (VLAN10) → S_A → Trunk (VLAN10) → S_B (VLAN10) → S_B 路由 → VLAN30 → PC3

3.管理访问:从 Cloud1 SSH 登录 S_B(10.0.10.253)—— 成功

4.FTP 上传:从 PC 上传配置文件到 S_B —— 成功

八、结语
通过本实验,你已掌握:
- ✅ VLAN 划分与 Access/Trunk 配置
- ✅ 跨交换机链路聚合(Eth-Trunk)且 Trunk 只放通必要 VLAN
- ✅ 三层交换机集中实现 VLAN 间路由
- ✅ SSH 安全远程管理(含老版本闪退解决方案)
为什么 Trunk 不需要放通 VLAN30?
因为 VLAN30 的终端(PC3)直连 S_B,且 S_B 有 VLANIF30 网关。PC1 要访问 PC3,流量到达 S_B 后,由 S_B 内部路由从 VLAN10 转到 VLAN30,整个过程不需要将 VLAN30 的帧送到 S_A 上。因此 Trunk 只放通 VLAN10(和管理 VLAN1)即可,这样可以减少不必要的广播流量,提高安全性。









