news 2026/9/18 15:43:12

华为交换机配置入门:VLAN划分、三层互通与远程登录

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
华为交换机配置入门:VLAN划分、三层互通与远程登录

1. 先把思路理清楚:华为交换机配置到底在配什么

很多人第一次摸到华为交换机,心里想的都是“赶紧敲几条命令把它点亮”,结果线接好了、终端也连上了,盯着那个<Huawei>提示符却不知道该从哪一条开始。我在带新人的时候最常说的一句话就是:华为交换机的基本配置,本质上只解决三件事——设备能被人认出来、不同部门的流量能被分开、管理员能远程连上去。这三件事搞定了,剩下的一切(路由、ACL、端口安全、堆叠)都是往上叠的楼层。

华为交换机跑的是 VRP 操作系统,这一点很关键。它不像家用路由器那样点几下网页就完事,VRP 是纯命令行的,所有操作都建立在“视图”这个层级模型上。你不理解视图,就会频繁看到Error: Unrecognized command found at '^' position.这种提示,然后一头雾水地反复敲同一行命令。热词里出现的“华为交换机配置实例”“华为交换机vlan”“华为三层交换机”这些搜索,背后其实都是同一批人在同一个坎上卡住。

这篇文章面向的是刚接触华为交换机的人,比如刚考完 HCIA 想动手练的、公司买了两台 S5720 让你先配起来的、或者做弱电工程顺手要接交换机的。我会从一条 Console 线开始,把规划、命名、VLAN 划分、管理地址、远程登录、保存和恢复,一条命令一条命令地拆开讲。中间会带上子网计算的过程,因为这部分是新手最容易算错、也是现场最容易出事故的地方。看完之后你至少能做到:拿到一台全新的华为交换机,四十钟内把它配成一个可以远程管理、按部门隔离流量的可用设备。

1.1 一台交换机从开箱到能用,中间缺的是什么

全新的华为交换机出厂状态其实是很“干净”的:没有管理 IP,没有 VLAN 划分,所有千兆口默认都在 VLAN 1 里,属于同一广播域。你把它接进办公室网络,它就是一个透明的大二层盒子——插上就能通,但也意味着所有端口互相都通,谁都能看到谁的广播包。这不是故障,这是默认行为。

所以“配置”要补的正是这几块缺口。第一块是身份:设备得有名字(sysname),否则你在机房面对一堆Huawei根本分不清哪台是哪台。第二块是隔离:把不同部门的端口划进不同 VLAN,让广播域收缩,也顺手把安全边界立起来。第三块是可达性:给交换机一个管理 IP,配上远程登录方式,这样以后改配置就不用抱着笔记本蹲在机柜前。

还有一个经常被忽略的第四块:持久化。VRP 的配置分“当前配置”和“保存配置”两份,你敲进去的命令默认只在内存里,断电就没了。热词里“华为交换机s5720怎么改密码本地登录”这类问题,十有八九是改完密码没执行save,重启后又回去了。这一点我会在第 3 章单独讲。

1.2 命令行视图体系:为什么敲错一个命令会提示 Error

VRP 的视图是分层的,最低层是用户视图,提示符是尖括号<Huawei>。在这个视图里你只能执行查看类命令,比如display versiondisplay current-configuration,想改任何东西都得先输入system-view进入系统视图,提示符变成方括号[Huawei]

从系统视图再往下走,就是各类专用视图:interface GigabitEthernet 0/0/1进接口视图,vlan 10进 VLAN 视图,user-interface vty 0 4进用户界面视图。每进一层,能用的命令就换一批。所以“命令不认识”的报错,九成不是因为命令写错了,而是你在错的视图里敲了它。比如port link-type access只能在接口视图下生效,你在系统视图里敲它,VRP 直接给你个 Error。

返回的方式也分两种,这个细节新手特别容易搞混:quit退一层,从接口视图回系统视图;return或者快捷键Ctrl+Z直接回用户视图,不管你在多深的层级。我自己的习惯是深层次配置完一段就用return一把弹回顶层,视线清爽,不容易在错误的视图里继续敲命令。

另外提醒一句,华为设备支持命令缩写,只要前缀唯一就行,比如sys等于system-viewint g0/0/1等于interface GigabitEthernet 0/0/1。缩写能提速,但我在给别人录配置脚本时从来不用缩写,原因很简单——脚本是要给人看、要存档的,可读性比省那几个字符重要得多。

1.3 准备工作清单:线材、终端软件与信息规划表

动手之前,工欲善其事。硬件上你需要一根Console 线(USB 转 RJ45 或者 DB9 转 RJ45,看笔记本接口),这是配置新设备的唯一入口。终端软件用 SecureCRT、PuTTY、Xshell、MobaXterm 都行,我个人偏爱 MobaXterm,因为它自带串口会话,还能顺手管理 SSH 会话。

串口参数是固定的,记牢这一组:波特率 9600、数据位 8、停止位 1、校验位无、流控无,也就是常说的 9600-8-N-1。参数错了的表现是满屏乱码或者什么都出不来,不是设备坏了,别慌。

软件之外的准备更重要,我一般会在纸上(或者 Excel 里)先画一张表,把要配的东西全部列清楚再上机:

项目示例值说明
设备名称SW-A-3F楼层+用途,一眼能认出位置
管理 VLANVLAN 100单独一个 VLAN 走管理流量
管理地址192.168.1.2/24和办公网段隔离
默认网关192.168.1.1指向核心或路由器
业务 VLAN10 / 20 / 30对应各部门
远程登录Stelnet + AAA不用明文 Telnet
管理员账号netadmin / 强密码权限等级 15

注意:这张表看起来多余,但它是现场不出错的最大保障。我见过太多次“配到一半忘了管理地址规划成什么”的情况,然后只能重新数一遍地址,浪费半小时。

规划的核心原则只有一条:先定地址,再定 VLAN,最后才配置端口。顺序颠倒的话,你会反复改 VLAN 接口地址,改一次断一次管理连接,体验极差。

2. 基础配置三大件:设备命名、VLAN、管理地址

2.1 设备命名与基础参数:从 Console 登录的第一分钟

Console 连上、终端参数设好、按几下回车,你就能看到<Huawei>提示符。第一件事不是改密码,是给它起名字。理由是,接下来所有操作你都会在提示符里看到这个名字,改完立刻有反馈,心理上会稳很多。

进系统视图、改名字、顺手把时间设对:

<Huawei> system-view [Huawei] sysname SW-A-3F [SW-A-3F] clock timezone CST add 08:00:00 [SW-A-3F] clock datetime 14:30:00 2024-06-18

时区和时间是很多人跳过的一步,但它的价值在排障时体现得淋漓尽致。交换机的日志、告警、端口 up/down 记录全都打时间戳,如果时间不准,你拿着日志去比对“用户报障时间是下午三点”,根本对不上,排查效率直接砍半。所以我的习惯是开局先校时,条件允许的话再配 NTP 自动同步。

命名规范我建议带上位置 + 用途 + 序号三段,比如SW-A-3F(A 栋 3 楼)、SW-IDF-B2,尽量别有中文和空格。有些老版本 VRP 对特殊字符支持不好,中文名在 Telnet 里还会乱码,纯英文加数字最保险。名字最长 246 个字符,实际没人会写那么长,但长度限制心里有个数。

设备名改了之后,提示符会立刻从[Huawei]变成[SW-A-3F],这是第一次“看得见的成功”。接下来配置出错时,你能很清楚地知道自己在哪台设备上操作——这在批量维护多台交换机时特别有用,是防止“在 A 机上敲了 B 机的命令”的第一道防线。

2.2 VLAN 划分与端口类型:access、trunk、hybrid 怎么选

VLAN 是交换机的灵魂,也是热词里出现频率最高的词之一。华为交换机的端口有三种链路类型:access、trunk、hybrid。新手最容易犯的错是把三种混着用,结果就是“配了 VLAN 但网络不通”。

先给一个直观的判断法则:

  • 接终端、服务器、打印机、AP 的端口 → access。access 口只属于一个 VLAN,进出都不带标签,终端完全无感知。
  • 接另一台交换机、接路由器的端口 → trunk。trunk 口能承载多个 VLAN,默认只给 VLAN 1 放行,其他 VLAN 必须手动allow-pass
  • hybrid介于两者之间,能灵活控制“哪些 VLAN 带标签出去、哪些剥掉标签”。它功能最强也最难理解,日常组网里用得不多,除非有特殊需求(比如 IP 电话串接 PC)才会用到。

创建 VLAN 的写法有两种,单条和批量:

[SW-A-3F] vlan batch 10 20 30 40 50 100

一条命令建六个,比vlan 10回车再vlan 20回车高效太多,配置行数也短。批量创建 VLAN 时即使 VLAN 已存在也不会报错,可以放心重复执行。

配 access 口的标准三段式:

[SW-A-3F] interface GigabitEthernet 0/0/1 [SW-A-3F-GigabitEthernet0/0/1] port link-type access [SW-A-3F-GigabitEthernet0/0/1] port default vlan 10 [SW-A-3F-GigabitEthernet0/0/1] quit

如果是连续一段端口要批量配,用port-group或者范围写法更省事:

[SW-A-3F] port-group group-member GigabitEthernet 0/0/1 to GigabitEthernet 0/0/10 [SW-A-3F-port-group] port link-type access [SW-A-3F-port-group] port default vlan 10

trunk 口的配置要注意allow-pass这一行不能漏:

[SW-A-3F] interface GigabitEthernet 0/0/24 [SW-A-3F-GigabitEthernet0/0/24] port link-type trunk [SW-A-3F-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20 30 40 50 100

热词里“交换机的四种模式trunk”说的就是这个。我踩过的最典型的坑是:两端 trunk 口都配好了,但其中一端忘了写allow-pass,默认只放行 VLAN 1,业务 VLAN 全部被丢。现象是“能 ping 通管理地址,但部门之间完全不通”,特别迷惑。排查时用display port vlan GigabitEthernet 0/0/24看两端的放行列表对不对,通常一眼就能看出问题。

注意:华为设备的很多端口命令是覆盖式而不是叠加式。你在一个端口上反复执行port default vlan 10port default vlan 20,最终生效的是最后一次,端口只属于 VLAN 20。想改 VLAN 直接重敲即可,不用先undo

2.3 管理地址与远程登录:Telnet 和 Stelnet 的配置差异

交换机要能远程管理,需要一个三层地址,最简单的方式是创建管理 VLAN 并给它配 IP:

[SW-A-3F] vlan 100 [SW-A-3F-vlan100] quit [SW-A-3F] interface Vlanif 100 [SW-A-3F-Vlanif100] ip address 192.168.1.2 24 [SW-A-3F-Vlanif100] quit [SW-A-3F] ip route-static 0.0.0.0 0 192.168.1.1

划到管理 VLAN 的那个物理口(比如 G0/0/24)要配成 access 并划进 VLAN 100,否则 Vlanif 100 起不来,display ip interface brief里会看到接口是 down 的。这个细节新手经常忽略,以为配了 Vlanif 就自动通了。

远程登录方式上,Telnet 是明文,Stelnet 是加密。生产环境我只建议上 Stelnet(也就是 SSH),Telnet 只用来做实验或者在完全隔离的实验网里用。两者的配置差异在于:Stelnet 需要先生成密钥对,再在 VTY 上把入站协议限制为 SSH。

先生成密钥,这是 Stelnet 的前提:

[SW-A-3F] rsa local-key-pair create The key name will be: SW-A-3F_Host Input the bits in the modulus[default = 2048]: 2048

2048 位是当前的合理选择,1024 已经偏弱,4096 在老设备上生成慢、也可能不被支持。生成过程偶尔会卡十几秒到一两分钟,属于正常现象,别以为是设备死机。

然后建管理员账号,走 AAA 认证:

[SW-A-3F] aaa [SW-A-3F-aaa] local-user netadmin password irreversible-cipher MyStrong@2024 [SW-A-3F-aaa] local-user netadmin privilege level 15 [SW-A-3F-aaa] local-user netadmin service-type ssh telnet [SW-A-3F-aaa] quit

irreversible-cipher是华为推荐的口径,密码在配置文件里以不可逆形式存储,比早期的cipher更安全。权限等级 15 是最高级,相当于管理员;等级 1 只能看不能改。给运维人员分级时,日常巡检账号给等级 1 就够了,改配置的账号才给 15。

最后开 SSH 服务并限制 VTY 入站协议:

[SW-A-3F] stelnet server enable [SW-A-3F] user-interface vty 0 4 [SW-A-3F-ui-vty0-4] authentication-mode aaa [SW-A-3F-ui-vty0-4] protocol inbound ssh [SW-A-3F-ui-vty0-4] user privilege level 15 [SW-A-3F-ui-vty0-4] idle-timeout 10 0 [SW-A-3F-ui-vty0-4] quit

protocol inbound ssh是安全加固的关键一步,它把 Telnet 挡在门外。热词里的“ensp 交换机配置stelnet server”练的就是这套流程。idle-timeout 10 0表示空闲 10 分钟自动断开,防止有人开了会话就走人,留一个永远挂着的管理通道。

还有一点,VTY 支持的并发会话数由user-interface vty 0 4决定,这里是 0 到 4 共 5 个。小型网络够用,大型运维团队可以扩到 0 14。

3. 完整实操:一台 S5720 从零开始配到可远程管理

3.1 实验拓扑与地址规划(含子网计算过程)

现在把前面零散的步骤串成一条完整链路。假设场景是这样的:公司五个部门共用一个 192.168.10.0/24 网段,A 部门 100 台主机,B 部门 50 台,C 部门 20 台,D、E 部门各 12 台。核心是一台三层交换机 S5720,下面挂一台接入交换机 S5730,管理网段单独用 192.168.1.0/24。

子网划分要从“每个子网最多需要多少台主机”倒推。计算逻辑是 2^n - 2 ≥ 主机数,减 2 是因为网络地址和广播地址不能用。

A 部门 100 台:2^7 - 2 = 126 ≥ 100,所以主机位留 7 位,掩码就是 /25(255.255.255.128),每个子网块大小 128。 B 部门 50 台:2^6 - 2 = 62 ≥ 50,主机位 6 位,/26(255.255.255.192),块大小 64。 C 部门 20 台:2^5 - 2 = 30 ≥ 20,主机位 5 位,/27(255.255.255.224),块大小 32。 D、E 部门各 12 台:2^4 - 2 = 14 ≥ 12,主机位 4 位,/28(255.255.255.240),块大小 16。

按块大小顺序切 192.168.10.0/24:

部门子网网段可用地址范围网关VLAN
A192.168.10.0/25.1 – .126192.168.10.1VLAN 10
B192.168.10.128/26.129 – .190192.168.10.129VLAN 20
C192.168.10.192/27.193 – .222192.168.10.193VLAN 30
D192.168.10.224/28.225 – .238192.168.10.225VLAN 40
E192.168.10.240/28.241 – .254192.168.10.241VLAN 50

这里有个新手常问的问题:为什么网关不用习惯的.254?因为.254在 A 部门那个 /25 里属于 192.168.10.128 到 .255 这一段,那是 B 部门的地盘,会冲突。所以网关统一取每个子网的第一个可用地址,好记也好算。这是按块大小紧凑切分的做法,缺点是各子网大小不一,如果以后某个部门要扩员,只能重新规划;另一种做法是给每个部门统一留 /24,空间换灵活性,看预算和规模决定。

注意:划分方案一旦定下来,务必写进网络文档。我见过一次因为没留文档,半年后新来的同事给 D 部门配了 .226 的网关,和实际配置差一位,排查了整整一个下午才发现是网关地址本身写错了。

3.2 命令行逐条实录与解释

配置分两层做:接入交换机负责把端口划 VLAN,三层交换机负责起网关和互通。

接入交换机 SW-A-3F 的部分:

<Huawei> system-view [Huawei] sysname SW-A-3F [SW-A-3F] vlan batch 10 20 30 40 50 100 [SW-A-3F] interface GigabitEthernet 0/0/1 [SW-A-3F-GigabitEthernet0/0/1] port link-type access [SW-A-3F-GigabitEthernet0/0/1] port default vlan 10 [SW-A-3F-GigabitEthernet0/0/1] quit [SW-A-3F] interface GigabitEthernet 0/0/2 [SW-A-3F-GigabitEthernet0/0/2] port link-type access [SW-A-3F-GigabitEthernet0/0/2] port default vlan 20 [SW-A-3F-GigabitEthernet0/0/2] quit [SW-A-3F] interface GigabitEthernet 0/0/3 [SW-A-3F-GigabitEthernet0/0/3] port link-type access [SW-A-3F-GigabitEthernet0/0/3] port default vlan 30 [SW-A-3F-GigabitEthernet0/0/3] quit [SW-A-3F] interface GigabitEthernet 0/0/24 [SW-A-3F-GigabitEthernet0/0/24] port link-type trunk [SW-A-3F-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20 30 40 50 100 [SW-A-3F-GigabitEthernet0/0/24] quit

上联口 G0/0/24 配成 trunk 并放行全部业务 VLAN,这一行allow-pass是整段配置里最关键的一行,少了它后面全白干。

三层交换机 SW-CORE 的部分,重点是 Vlanif 接口和默认路由:

<Huawei> system-view [Huawei] sysname SW-CORE [SW-CORE] vlan batch 10 20 30 40 50 100 [SW-CORE] interface Vlanif 10 [SW-CORE-Vlanif10] ip address 192.168.10.1 25 [SW-CORE-Vlanif10] quit [SW-CORE] interface Vlanif 20 [SW-CORE-Vlanif20] ip address 192.168.10.129 26 [SW-CORE-Vlanif20] quit [SW-CORE] interface Vlanif 30 [SW-CORE-Vlanif30] ip address 192.168.10.193 27 [SW-CORE-Vlanif30] quit [SW-CORE] interface Vlanif 40 [SW-CORE-Vlanif40] ip address 192.168.10.225 28 [SW-CORE-Vlanif40] quit [SW-CORE] interface Vlanif 50 [SW-CORE-Vlanif50] ip address 192.168.10.241 28 [SW-CORE-Vlanif50] quit [SW-CORE] interface Vlanif 100 [SW-CORE-Vlanif100] ip address 192.168.1.1 24 [SW-CORE-Vlanif100] quit

注意掩码写法,ip address 192.168.10.1 25里的 25 就是掩码长度,不用写 255.255.255.128,两种写法都认,但长度写法更省事也更不容易敲错。

三层交换机默认就开了路由功能,各 Vlanif 一配好,A、B、C、D、E 之间自动互通,不需要额外写静态路由。这就是“华为三层交换机”的核心价值——用一台设备把二层隔离和三层互通同时做完,比“二层交换机 + 外部路由器”的组合干净得多。

接入交换机上还需要一条指向核心的默认路由,否则它自己没法跨网段通信(虽然对纯二层的转发没影响,但管理和日志上报会成问题):

[SW-A-3F] ip route-static 0.0.0.0 0 192.168.1.1

对于接入交换机,其实更标准的做法是把它的管理 VLAN 100 的 Vlanif 地址配成 192.168.1.x,然后在核心上看到这个网段是直连的,路由自然就有。用默认路由也可以,看运维习惯。

配完之后立刻验证,别急着保存:

[SW-CORE] display ip interface brief [SW-CORE] display vlan [SW-CORE] display port vlan [SW-A-3F] display mac-address [SW-A-3F] display interface GigabitEthernet 0/0/24

display ip interface brief会列出所有 Vlanif 的 IP 和状态,重点看PhysicalProtocol两列是不是都 up。如果某个 Vlanif 是 down,说明没有物理端口属于这个 VLAN,回去检查端口划分。display mac-address能确认终端到底学到了哪个端口、属于哪个 VLAN,是排查“插错口”的利器。

3.3 保存配置、备份版本文件与恢复出厂

配置验证通过后,必须保存:

<SW-CORE> save The current configuration will be written to the device. Are you sure to continue? (y/n)[n]: y

系统会提示你确认文件名,默认是vrpcfg.zip,直接回车即可。保存完之后建议再敲一次display saved-configuration | include sysname,确认保存的内容里有你的设备名,这样能确定保存动作真的生效了。

备份配置文件是另一个值得养成的习惯。华为支持把配置导出到文件服务器,用 FTP 或 SFTP:

<SW-CORE> save <SW-CORE> ftp 192.168.1.100

登录后执行put vrpcfg.zip把配置文件传上去。也可以在系统视图里用startup saved-configuration命令切换下次启动加载的配置文件,做版本的灰度回退。

需要恢复出厂时,流程是:清配置 → 清 saved 文件 → 重启

<SW-CORE> reset saved-configuration This will delete the configuration in the flash memory. Are you sure to continue? (y/n)[n]: y <SW-CORE> reboot

这里有个必须提醒的细节:部分型号在reset saved-configuration之后reboot时会问你“是否保存当前配置”,一定要选N。如果选了 Y,设备会把当前内存里的配置又写回 flash,等于白清。这个坑坑过无数人,我也中过一次,看着重启后配置还在,愣了三秒才反应过来。

注意:恢复出厂操作会清掉管理 IP 和登录账号,如果设备不在你身边,操作完就只能靠 Console 现场连了。远程做这个操作之前,务必确认有人能到现场。

4. 常见故障排查实录与速查表

4.1 登录不上设备的几种情况

Console 连上没反应,最常见的原因就是串口参数不对。乱码 = 波特率错,全黑屏 = 流控或线序问题。手上有几根不同品牌的 Console 线时,还要注意有些线是“交叉”的,有些是“直连”的,插错了也会没输出。

设备起来了但 Telnet/SSH 连不上,按顺序排查这几项:

现象可能原因排查命令
能 ping 通管理 IP,SSH 拒绝Stelnet 服务未开启display stelnet server status
连接被拒绝,ping 也不通Vlanif 未 up 或物理口没划进管理 VLANdisplay ip interface brief
提示密码错误但密码没错VTY 认证模式不是 aaa`display current-configuration
连上后立刻断开VTY 会话数被占满display users
命令敲不进去权限等级不足`display current-configuration

display users会列出当前所有登录会话,如果有人挂着不退出,把会话数占满了,新连接就会被拒。这时候可以kill user-interface vty 1强制踢掉某个会话。热词里“华为交换机dis mac | in broad”这种带过滤的查询写法,本质就是用|管道把输出过滤掉,非常实用,display current-configuration | include vlan也是同理。

4.2 VLAN 不通、链路不同步的排查套路

“配了 VLAN 但网络不通”是新手遇到最多的问题,我总结了一个从下往上的排查顺序:物理层 → 端口配置 → VLAN 放行 → 三层地址

先看物理层,display interface GigabitEthernet 0/0/1关注Line protocol current state是不是 UP。如果是 DOWN,先查线、查对端端口是否被 shutdown。华为端口默认是undo shutdown状态的,但工程上被人手动关掉是常事。

第二步看端口配置,display port vlan GigabitEthernet 0/0/1会显示端口的链路类型、默认 VLAN、允许通过的 VLAN 列表。这里能一眼看出 access/trunk 有没有配错。有个经典错误是把本该是 trunk 的口配成了 access,然后两端交换机互相不通,现象是“同一个交换机内能通,跨交换机就不通”。

第三步看 VLAN 是否真的建了,display vlan能看到每个 VLAN 下有哪些端口。如果 VLAN 建了但端口列表是空的,说明端口没划进去。

第四步才是三层问题,display ip interface brief确认 Vlanif 地址和状态。热词里“为什么从局域网中拿走一个交换机后很卡”这类现象,往往不是 VLAN 问题,而是生成树重新收敛。拔掉一台交换机后,STP 会重新计算拓扑,中间有几十秒的阻塞和收敛过程,流量抖动是正常的。如果抖动超过一分钟还不恢复,那就是环路或者 STP 配置有问题了,用display stp brief看各端口角色和状态。

4.3 配置丢失、保存失败的坑

配置丢失的典型场景有三个。一是改完没保存,重启就回原样,这个占九成。二是保存了但没保存成功,比如 flash 满了或者权限不够,VRP 会报错但很多人不看提示。三是多台设备共用同一个配置文件,在堆叠或者备份场景下误加载。

flash 空间可以通过dir查看,如果剩余空间很小,删掉旧的日志文件和多余的.zip备份。热词里“华为读bootloader”涉及的是设备引导阶段从 BootROM 加载系统文件,属于比较底层的操作,正常运行中不需要碰,操作不当可能导致设备无法启动,新手不建议深入。

还有一类问题是配置文件内容正确但顺序导致的行为差异。比如你先配了port default vlan 10,后来又改端口为 trunk 并allow-pass vlan 20,那么原来那条 access 配置的影响会以最后一次为准。VRP 的配置是“最终状态”模型,不是“逐条执行”模型,这一点理解透了,很多诡异现象就能解释通。

5. 从单机到组网:多部门网络的三层互通实践

5.1 五个部门五个网段的路由配置

前面五部门例子里的 Vlanif 配置,其实已经把路由这件事做完了大半。三层交换机上的直连网段会自动生成直连路由,用display ip routing-table能看到五条Direct路由加一条到管理网段的直连。部门之间互访本来就是默认放通的,不需要额外配置。

但现实里往往不希望所有部门自由互通,比如财务和访客之间就该隔离。这时需要 ACL 配合流策略。举个例子,禁止 VLAN 30(访客)访问 VLAN 10(财务):

[SW-CORE] acl number 3000 [SW-CORE-acl-adv-3000] rule 5 deny ip source 192.168.10.192 0.0.0.31 destination 192.168.10.0 0.0.0.127 [SW-CORE-acl-adv-3000] rule 10 permit ip [SW-CORE-acl-adv-3000] quit [SW-CORE] traffic classifier deny-visitor operator or [SW-CORE-classifier-deny-visitor] if-match acl 3000 [SW-CORE-classifier-deny-visitor] quit [SW-CORE] traffic behavior deny-behavior [SW-CORE-behavior-deny-behavior] deny [SW-CORE-behavior-deny-behavior] quit [SW-CORE] traffic policy deny-policy [SW-CORE-trafficpolicy-deny-policy] classifier deny-visitor behavior deny-behavior [SW-CORE-trafficpolicy-deny-policy] quit [SW-CORE] interface Vlanif 30 [SW-CORE-Vlanif30] traffic-policy deny-policy inbound

这里的反掩码写法值得展开一句:ACL 里的0.0.0.31对应 /27 的反掩码(32 - 1 = 31),0.0.0.127对应 /25 的反掩码(128 - 1 = 127)。华为 ACL 用反掩码,和思科的写法一致,0 表示“必须匹配”,1 表示“不关心”。这是新手最绕的地方,记不住就用计算器算,别靠感觉。

5.2 端口安全、STP 与常见加固项

生产环境里,交换机的加固项目远不止 VLAN 和密码,几个性价比最高的必做项:

  • 端口安全:限制单个端口允许学习的 MAC 数量,防止有人拿小交换机私接一堆设备。port-security enableport-security max-mac-num 3,超出后可以配成告警或直接关闭端口。
  • BPDU 保护:接终端的 access 口开stp bpdu-protection,一旦收到 BPDU 就关闭端口,防止有人私接交换机导致拓扑被篡改。
  • 根桥保护:在核心交换机上对下联口开stp root-protection,防止某台接入交换机因为优先级配得莫名低而抢走根桥角色,导致流量走向变得莫名其妙。
  • 关闭未使用端口:空闲端口全部shutdown,这是最简单也最有效的攻击面收缩手段。

STP 相关命令在华为上有 RSTP 和 MSTP 两种模式,默认是 MSTP。stp mode stp可以切回传统模式做实验,但生产环境建议保留 MSTP,收敛快而且能按实例做负载分担。热词里“双路交换机设计方案”如果指的是双上行冗余,那 STP 就是实现这个冗余的核心,配不好就会出现环路广播风暴,整个网络瞬间瘫痪。

注意:做 STP 相关改动时,一定避开业务高峰。拓扑变更会触发 MAC 表刷新和短暂泛洪,表现是网络卡顿几秒到几十秒。我在一个下午高峰期给接入交换机开 BPDU 保护,结果因为某台老设备发的是非标准 BPDU,端口被连续关闭,影响了半个楼层,教训很深。

5.3 批量运维:把重复劳动交给脚本

当你管理的交换机从一台变成二十台,逐台 Console 配置就变成灾难。华为提供了几个提升效率的路子:

一是配置模板 + 变量替换。把命名、VLAN、管理 IP 抽成变量,用 Excel 或 Python 批量生成每台设备的命令脚本,然后通过 SSH 批量下发。

二是eNSP 做实验验证。热词里的“华为ensp官网下载”和“ensp 交换机配置stelnet server”说明很多人用 eNSP 练手。我的建议是任何批量脚本先在 eNSP 里跑一遍,确认没有语法错误、没有顺序依赖问题,再动生产设备。用 Python 配合 paramiko 库写批量登录脚本,基本骨架是这样:

import paramiko devices = [ {"host": "192.168.1.2", "name": "SW-A-3F"}, {"host": "192.168.1.3", "name": "SW-A-4F"}, ] for dev in devices: client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(dev["host"], username="netadmin", password="MyStrong@2024", look_for_keys=False) shell = client.invoke_shell() shell.send("system-view\n") shell.send(f"sysname {dev['name']}\n") shell.send("return\n") shell.send("save\n") shell.send("y\n") client.close()

这段脚本的关键点在于:华为交换机对save会弹二次确认,必须补一个y\n,否则保存不会执行。另外每发一条命令最好加一点延时或者读取返回,设备处理速度跟不上脚本发送速度时,命令会丢。

三是自动化巡检。用脚本定期跑display cpu-usagedisplay memory-usagedisplay interface briefdisplay device,把输出存档,出故障时能对比历史数据找异常点。CPU 突然从 5% 涨到 70%,通常就是异常流量或者环路的早期信号。

我个人在实际运维里的体会是:能把命令写成脚本的,就一定不要手敲第二遍。手敲的每一次都是出错机会,脚本写一次、测一次、以后反复用,长期看省下的时间和心力远超写脚本的那点投入。另外一点很重要的是,脚本跑批量操作时一定要加日志,把每台设备的执行结果记下来,出了问题能知道是哪台、哪一步、什么返回。

最后再分享一个小技巧:交换机配好之后,把display current-configuration的输出直接存成文本文件,和设备名一起归档,同时存一份到版本管理工具里。以后再有人问“上个月的核心交换机配置是什么样的”,你直接翻记录就行,比登录设备去看方便太多。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/18 15:42:17

直线拟合三大算法:最小二乘法、RANSAC与Hough变换实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/18 15:40:15

喷墨墨水选型与排错指南:从染料/颜料到黏度参数一次讲清

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/18 15:40:15

【ComfyUI】SDXL + Refiner 精炼文生图

今天展示的案例是一个基于 SDXL Base 与 Refiner 双模型链路 的 ComfyUI 工作流。整个流程以空白潜空间为起点,通过文本提示词编码与采样步骤逐层迭代生成图像,再借助 Refiner 模型完成精修,最终由 VAE 解码器将潜空间数据还原为可见图像并保存。 该设计能够在保持生成自由度…

作者头像 李华
网站建设 2026/9/18 15:40:09

通达信抄底高手指标:多条件筛选极值位置,低频高胜率实战解析

简介&#xff1a;这是一份面向通达信软件用户的抄底选股指标公式源码&#xff0c;适合有一定技术分析基础、希望减少无效信号并把握底部机会的投资者。文档提供了完整的指标公式&#xff0c;核心逻辑结合股价与中长期均线的偏离度、量能变化及近期K线形态&#xff0c;信号数量少…

作者头像 李华
网站建设 2026/9/18 15:37:27

多厂商 LLM 接口对不上?TaoToken 这样收敛 Codex 的上游模型通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/18 15:35:38

Java课程设计学生成绩管理系统:5张表设计与JDBC实现要点

简介&#xff1a;这是一份面向高校计算机专业学生的《Java学生成绩管理系统》课程设计报告&#xff0c;适用于软件工程、计算机科学等专业的课程设计参考。报告以学生成绩管理为业务场景&#xff0c;完整覆盖学生信息管理、课程成绩维护、按学号/姓名查询、分数段统计、报表输出…

作者头像 李华