1. 操作前的准备与风险评估:先把退路想好再动手
先说个真实场景。我接手过一台机房里跑了好几年的S5700,前任管理员离职时交接资料基本为零,Console口登进去密码全忘,Telnet更是进不了。当时唯一的思路就是恢复出厂配置,因为设备上已经存了几百条配置,业务网段划分乱七八糟,与其花大力气去猜密码、翻旧配置,不如直接推倒重来。结果我倒腾了一下午,总算把这台设备“洗白”重配,整个过程踩了不少坑。这篇就把S5700恢复出厂配置这件事从头到尾讲清楚,特别适合遇到密码丢失、配置混乱、设备交付前需要清空配置这类场景的运维朋友参考。
1.1 恢复出厂前必须确认三件事
动手之前,我建议你把下面三件事想明白,不然很容易搞出事故。
第一,这台设备在现网里承担什么角色。如果它是核心交换机,你恢复出厂意味着全网业务直接中断;如果它只是一台接入层设备,影响范围就小很多。我之前接过一台S5700-28C-HI,是整栋楼的汇聚节点,下面挂了六台接入交换机和两百多个终端,恢复前没确认清楚,结果一按重置,整层楼的办公网络全部中断。所以说,操作前先在网络拓扑图里圈出这台设备的上下游,明确哪些业务会受影响、影响窗口有多长,最好是趁着晚上业务低峰期去操作。
第二,现有配置有没有备份。这是我最想强调的一点。恢复出厂配置的本质就是删掉启动配置文件,如果之前没留备份,恢复完成后你就只能凭记忆和组网文档一点点重配。等设备真被清空了,再想去恢复业务,那叫一个焦头烂额。备份配置很便宜,但恢复配置很昂贵,这个账大家心里要有数。
第三,设备里有没有需要保留的日志、告警记录和诊断信息。华为交换机上的日志文件默认存在Flash的log文件夹里,如果你正在排查一个历史网络问题,这些日志可能就是关键证据。恢复出厂配置默认会清掉这些历史文件,所以操作前先把需要的日志和数据导出来,或者截图留存,避免后面排查问题没有依据。
1.2 推荐先做配置备份的常用方法
备份配置的方法很简单,我常用的有两种:
方法一:通过Console口或Telnet登录设备后,用display current-configuration命令临时查看运行配置,再手动复制保存。
这种办法适合配置量不大的场景。如果你的设备上配置比较多,手动复制容易漏项,而且效率很低,只适合应急用。
方法二:用FTP/SFTP把配置文件导到本地电脑。
华为交换机的启动配置文件名一般是vrpcfg.zip,存放在Flash根目录下。你可以先通过pwd和dir命令确认文件名,然后用FTP或者SFTP把它下载到本地。以FTP为例,流程是先在交换机上开启FTP服务、设置用户名密码,然后在电脑上连接并下载文件:
[HUAWEI] ftp server enable [HUAWEI] aaa [HUAWEI-aaa] local-user admin password irreversible-cipher admin@123 [HUAWEI-aaa] local-user admin service-type ftp [HUAWEI-aaa] local-user admin ftp-directory flash: [HUAWEI-aaa] quit然后在电脑命令行终端里执行:
ftp 192.168.10.1 用户名: admin 密码: admin@123 ftp> get vrpcfg.zip这个办法能把完整配置文件一秒不差地拉下来,和运行配置是同一份,后期恢复业务时直接复用,非常稳妥。
1.3 准备工具与基础环境
在进入正题之前,建议准备好了再开干:
- Console线(标配调试线):恢复出厂配置最稳的方式,因为如果密码丢了,Telnet/SSH根本进不去,只有Console口能直接交互。注意S5700的Console口大多是RJ45口,直接用串口线接到电脑的COM口,或者用USB转串口线。驱动一定要先装好,否则终端软件识别不了。
- 终端软件:常见的如SecureCRT、Xshell、PuTTY、MobaXterm都可以。连接参数方面,S5700默认波特率是9600,数据位8位,停止位1位,无校验,无流控。这个参数设置错了会出现乱码或者连不上的情况。
- 电脑的IP规划:如果你准备在恢复后用FTP上传新配置,要提前规划好电脑和交换机的管理IP,确保恢复出厂后交换机缺省的管理IP能够和电脑互通。S5700出厂状态默认管理IP是192.168.1.1/24或者VLANIF 1 口的地址,具体以设备型号和版本为准,不确定的话可以用Console口进去后敲display ip interface brief看IP配置。
注意:有些S5700的出厂缺省配置里,VLANIF 1本身就是管理地址承载口,所有物理口默认放通VLAN 1。所以电脑网线接任意一个口,手动设置一个同网段IP就能管理到设备。
2. S5700恢复出厂配置的三种实操路径
2.1 路径一:密码没丢,直接命令行恢复
这是最简单的场景。你能正常通过Console口或Telnet/SSH登录,只需两步操作:
第一步,执行reset saved-configuration命令,清除启动配置文件。
<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这里系统会有一个确认提示,输入y即可。执行完后可以用display saved-configuration查看一下,如果系统提示There is no saved configuration,说明启动配置文件已经被清掉。
第二步,重启设备,让设备以空配置启动。
<HUAWEI> reboot Info: The system is now rebooting, please wait...重启过程通常需要几分钟。设备起来之后,你就拥有了一个全新的S5700,所有业务配置都不存在了,只有系统自带的一些缺省参数。这里的“恢复出厂配置”指的就是让设备回到开箱状态,但系统软件版本(VRP版本)本身并不会回退,这一点后面我会细说。
2.2 路径二:密码丢失,Console口恢复流程
这是最常见的场景。你完全登不上去,唯一的希望就是Console口,但Console口本身也可能设置了登录密码。这时候有两个办法:
第一个办法,清零Console口密码。华为交换机的Console口密码存储在配置文件中,如果密码丢了,但你能在设备重启时看到启动过程信息(比如版本号、补丁信息),那么还有机会通过BootROM菜单进入Console口密码清除模式。具体流程是:用Console线连接电脑,终端软件上电连接,设备断电再重新上电,在启动过程中立刻按Ctrl+B进入BootROM主菜单(也有的版本是Ctrl+E)。输对进入菜单后,会看到几个选项,其中包含Console口密码清除选项。选择对应项后设备会自动清除Console口密码,然后保存退出重启,接下来就能直接进系统了。
第二个办法,重置配置文件。既然配置里的密码已经无从下手,干脆直接在BootROM菜单里选择恢复出厂配置。菜单里通常有一个恢复默认配置的选项,或者你可以通过删除配置文件来达到同样的效果。按提示操作后,设备重启就回到出厂状态了。
注意事项:不同S5700版本的BootROM菜单选项名称不一定完全相同,但绝大多数都支持密码清除、配置清除的功能。操作过程中如果提示输入BootROM密码,华为设备默认一般是空密码,直接回车即可;如果被改成非默认值,就只能联系华为技术支持或走返修了。
2.3 路径三:通过远程方式恢复
有些场景下你没法远程到设备现场,但还拥有远程登录权限(Telnet/SSH),这种情况下也可以远程恢复出厂配置。
操作步骤和路径一完全一样,直接执行reset saved-configuration和reboot即可。唯一需要注意的是,用Telnet/SSH执行重启时,设备一旦重启,远程连接会立刻断开,你要确保自己能在规定时间内重新登录,否则设备起来后如果业务配置缺失、管理地址也变了,你就彻底联系不上它了。比较稳妥的做法是,提前把电脑网线接到设备的一个端口上,并且把电脑的IP改成设备出厂缺省管理IP同网段,这样重启后还能顺利用Console以外的通道去管理它。
3. 系统文件解析:恢复出厂到底动了哪些文件
3.1 Flash目录里的几种关键文件
很多初学者以为恢复出厂配置就是把整个Flash都格式化,其实完全不是一回事。S5700有个Flash文件系统,里面存着以下几类关键文件,我用一个表格帮你梳理清楚:
| 文件类型 | 常见名称 | 作用 | 恢复出厂配置是否被清除 |
|---|---|---|---|
| VRP系统软件 | .cc文件(如s5700_28c-hi-v200r003c00spc100.cc) | 设备的操作系统内核与功能模块 | 不清除 |
| 启动配置文件 | vrpcfg.zip | 保存VLAN、路由、端口、认证等全部配置 | 清除 |
| 补丁文件 | .pat文件 | 系统补丁与缺陷修复 | 视版本而定,一般保留 |
| 日志文件 | log文件夹下多个log文件 | 运行日志、诊断日志 | 部分场景会清除 |
| 临时文件 | 其他临时存储文件 | 系统运行时产生 | 可能保留 |
3.2 恢复出厂配置的本质是删除什么
从原理层面讲,华为交换机启动时会按顺序加载系统软件和启动配置文件。配置文件里的内容决定了设备端口、VLAN、路由、认证策略等各项参数。执行reset saved-configuration后,系统会把Flash根目录下当前的启动配置文件删除(或标记为无效)。重启后,设备找不到有效的配置文件,就会以一套内置的缺省参数启动,这套缺省参数就约等于出厂状态。
有一点必须明确:恢复出厂配置并不会改变系统软件版本,也不会清除License文件。有时候有朋友问“我是不是恢复出厂后版本就变低了”,答案是版本不会变。出厂配置只影响业务配置,不影响软件本身。
3.3 如何彻底格式化Flash(谨慎使用)
某些场景下,比如设备要报废退库、转卖,或者Flash里残留了太多历史数据,你会希望把Flash整个清空。这时候可以用format flash:命令:
<HUAWEI> format flash: Warning: All files will be erased. Continue? [Y/N]: y这条命令一执行,Flash里的系统软件、配置文件、补丁、日志全部都会被清光。执行完成后设备变成“空壳”,必须重新上传系统软件才能启动。所以这个操作不像恢复出厂配置那么随意,非必要不要执行。
特别提醒:format flash操作执行前一定再三确认。这种操作没有后悔药,如果连系统软件都被清掉,你还得通过BootROM菜单的FTP方式重新上传系统软件,整个恢复流程会非常复杂,而且很容易卡在版本不兼容问题上。
4. 实操过程记录:完整走一遍恢复流程
为了让你更有体感,我用一台S5700-28C-HI,从Console口全程走一遍恢复出厂配置,把每一步的关键输出和操作细节都记录下来。
4.1 步骤一:连接Console口并确认当前状态
连接好Console线之后,用SecureCRT新建连接,协议选择Serial,端口选实际识别到的COM口。波特率9600,数据位8,停止位1,无校验。打开会话后,按一下回车,如果能弹出<HUAWEI>或者<Quidway>提示符,说明连接成功。
先查看一下当前设备名称和版本:
<HUAWEI> display version Huawei Versatile Routing Platform Software VRP (R) software, Version 5.170 Copyright (C) 1997-2016 Huawei Technologies Co., Ltd. ...再查看Flash里的文件列表,确认配置文件是否存在:
<HUAWEI> dir Directory of flash:/ ... -rw- 105233 Jun 06 2024 10:15:36 vrpcfg.zip ...看到vrpcfg.zip这个文件,说明启动配置文件就在Flash根目录下。
4.2 步骤二:备份配置到本地
在恢复之前,我先把配置文件导到本地电脑。S5700上开启FTP功能,设置好账号后,电脑端用FTP连接。如果你嫌FTP麻烦,也可以用TFTP直接把配置文件传到指定服务器,命令是:
<HUAWEI> tftp 192.168.10.2 put vrpcfg.zip其中192.168.10.2是电脑IP。执行成功后在电脑上就能看到vrpcfg.zip文件。别小看这一步,它帮我在恢复后快速还原了大部分基础配置,省了不少事。
4.3 步骤三:恢复出厂配置(两种方式记录)
方式一:如果密码没丢,直接在命令行下操作:
<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> display saved-configuration There is no saved configuration.这行提示就说明启动配置文件已经不存在了,设备重启后就是一个空配置状态。
方式二:如果密码丢了,利用BootROM菜单操作。设备断电重新上电后,终端软件里立刻出现“Press Ctrl+B to enter BootROM menu...”提示,此时马上按Ctrl+B。进入菜单后,选择清除配置或恢复默认配置的选项。不同版本选项名称有差异,常见的有:
- 清除Console口登录密码
- 恢复出厂配置
- 删除启动配置文件
选择对应项后,设备会执行相应操作,然后自动重启。此方式最省心,因为连登录都不需要。
4.4 步骤四:重启并验证恢复结果
执行reboot后,设备会重新启动。等待开机完成,使用默认用户名和密码登录。华为S5700出厂状态默认用户名是admin,密码通常是Admin@huawei,不同版本可能略有差异。另外部分老版本设备进入系统后不需要密码,直接进入<HUAWEI>视图。
进入系统后,我建议先做三个检查:
<HUAWEI> display current-configuration看看当前配置是不是变成了默认的几个基础配置(如sysname HUAWEI,VLAN 1,端口默认属于VLAN 1等)。
<HUAWEI> display ip interface brief确认管理IP是否恢复成默认地址,这样后续远程管理起来心里有底。
<HUAWEI> dir确认Flash里是否还有之前残留的日志文件或临时文件,如果是要退库的设备,这一步可以帮你发现有没有需要彻底清理的敏感数据。
5. 常见问题与排查技巧实录
5.1 问题一:执行reset saved-configuration后重启,配置居然还在
这个问题我遇到过好多次。排查思路是:确认你敲的命令是在<HUAWEI>用户视图下执行的,有些朋友在系统视图[HUAWEI]下敲reset saved-configuration,命令会报错;另外,如果设备上设置了双配置文件启动机制,那么可能还有另外一个配置文件作为备份启动。这就要去查看启动信息:
<HUAWEI> display startup这里会显示当前启动配置文件、备用启动配置文件等信息。如果发现备用启动配置文件里也有一个配置文件,需要用startup saved-configuration命令把启动文件指定为空白配置,或者也用reset清除后再重启。
5.2 问题二:恢复出厂配置后,设备无法启动或反复重启
这种情况大概率是系统软件文件受到损坏,或者是Flash文件系统出了问题。先用Console口连接,观察启动输出信息,看看是卡在哪个环节。如果提示找不到系统软件,说明Flash里的VRP文件丢失,就需要在BootROM菜单里通过FTP重新上传系统软件。如果提示文件系统错误,可能要先执行文件系统修复操作(BootROM菜单里一般有Format或Check Flash的选项)。
5.3 问题三:忘记Console口密码,又进不了BootROM菜单
BootROM菜单按Ctrl+B没反应,常见原因有三个:一是按键时机不对,必须在出现提示后的两三秒内按下,错过就得重新断电再来;二是终端软件发送延迟问题,有的终端软件默认会把Ctrl+B当作特殊控制字符处理,需要在终端设置里关闭流控或改一下按键映射;三是BootROM密码被改过,如果提示输入密码而你输入空密码不对,那就只能找设备提供商协助处理。
5.4 问题四:设备恢复后,配置能通但业务不通,怎么办
这种情况大概率是恢复出厂后,VLAN、Trunk、路由等配置全部空白,而下游交换机和终端还停留在旧配置状态。所以恢复完新设备之后,要逐项确认接口放通、VLAN规划、网关路由、DHCP服务等关键配置。我一般的做法是:先把最基础的管理IP和远程登录配置好,然后再逐块恢复业务相关的VLAN和接口配置,边配边测试,不要一次性把几百行配置一股脑灌进去,否则出了问题很难定位。
5.5 问题速查表
| 现象 | 可能原因 | 常见解决办法 |
|---|---|---|
| 配置恢复后仍在 | 启动配置未清干净或双启动文件 | 用display startup确认启动文件,reset后重启 |
| 设备反复重启 | 系统软件文件损坏或缺失 | 进BootROM重新上传系统软件 |
| 进不了BootROM | 按键时机不对或BootROM密码被改 | 断电重试,调整终端按键映射 |
| Console口乱码 | 波特率等串口参数不匹配 | 设置波特率9600,数据8停止1无校验 |
| 远程登录不上 | 管理IP被重置成默认值 | 用Console口配置新管理IP |
| Flash无法读取 | 文件系统损坏 | 尝试修复或格式化Flash后重新上传版本 |
6. 恢复完成后的基础配置与后续建议
设备恢复出厂后,接下来要做的不是急着把旧配置全量导回去,而是先搭建一套可用的基础环境。我习惯按这个顺序来配置:
第一步,配置设备名称和管理IP。
<HUAWEI> system-view [HUAWEI] sysname CORP-CORE-SW01 [CORP-CORE-SW01] interface vlanif 1 [CORP-CORE-SW01-Vlanif1] ip address 192.168.10.1 255.255.255.0 [CORP-CORE-SW01-Vlanif1] quit第二步,开启远程登录服务,并配置认证方式。
[CORP-CORE-SW01] telnet server enable [CORP-CORE-SW01] aaa [CORP-CORE-SW01-aaa] local-user admin password irreversible-cipher Admin@123 [CORP-CORE-SW01-aaa] local-user admin service-type telnet ssh [CORP-CORE-SW01-aaa] local-user admin privilege level 15 [CORP-CORE-SW01-aaa] quit [CORP-CORE-SW01] user-interface vty 0 4 [CORP-CORE-SW01-ui-vty0-4] authentication-mode aaa [CORP-CORE-SW01-ui-vty0-4] protocol inbound all [CORP-CORE-SW01-ui-vty0-4] quit第三步,检查端口状态和默认VLAN配置。
确保所有需要业务的端口都被放通在了正确的VLAN下。很多朋友习惯说“傻瓜交换机不用配”,但其实在S5700上,每个接口默认都是属于VLAN 1的,如果你把管理VLAN也放VLAN 1里,那设备的地址就暴露在所有接入端口上了,安全上是个隐患。从安全角度我建议把管理VLAN单独划分,并把非业务端口的VLAN收回,再配合ACL限制管理网段的访问来源。
第四步,保存配置。
[CORP-CORE-SW01] return <CORP-CORE-SW01> save The current configuration will be written to the device. Are you sure to continue? [Y/N]: y这一步不能忘。好多新手恢复出厂后重新配好参数,结果忘了save,下一次重启配置又没了,又要重新来一遍。这个坑值得记录。
我在实际工作中还发现,恢复出厂配置之后,最好顺便把设备的时间、时区和NTP配置也检查一下。日志的时间戳如果不准,后面无论是排障还是审计都很麻烦。S5700上配置NTP客户端的方法很简单:
[CORP-CORE-SW01] ntp-service unicast-server 192.168.10.2如果公司有内部NTP服务器就用内部地址,没有的话用公共NTP地址也行。
关于恢复后是否要重新上传配置这件事,我个人建议不要直接全量灌旧配置。你想想,设备恢复出厂配置往往就是因为旧配置太乱、密码丢失、或者历史配置中有很多冗余与冲突,如果直接把旧配置原样灌回去,等于白恢复。正确的做法是根据当前的业务需求,重新梳理网络架构,在基础配置之上逐步恢复业务配置,并且花点时间把配置注释写清楚、把冗余配置清理干净。这样恢复出厂配置这个动作才算真正有长期价值。
这篇文章基本覆盖了S5700恢复出厂配置的前前后后。我在实际项目中遇到过很多次因为操作前没备份、操作后又没保存导致反复折腾的情况,所以开头那段“先想清楚再动手”真的不是套话。如果你正打算给一台S5700做恢复,强烈建议照着我上面的流程走一遍,别嫌麻烦。