☰
思科交换机命令实战指南:从基础配置到排障恢复
2026/10/1 1:40:13 网站建设 项目流程

干网络这行,思科交换机几乎是我每天都要打交道的设备。前阵子几个刚入行的兄弟私信问我,说网上那些“命令大全”抄来抄去,背下来一堆但真到现场还是不知道用哪条,配置完了也不知道怎么看效果。这问题问到根子上了:命令从来不是背出来的,是拿真实场景喂出来的。所以我干脆把这些年做项目中真正高频用到的思科交换机命令,按“什么时候用、为什么这么写、输出了怎么读”的方式整理一遍,从刚拿到设备时的连接配置,到 VLAN、Trunk、三层路由、生成树、链路聚合、安全加固,再到密码恢复和应急引导,一条条过,不整虚的。

1. 连接设备与CLI模式:一切命令的地基

1.1 控制台连接与模式切换的完整逻辑

拿到一台新交换机,第一步永远是接控制线。Console口在设备面板上一般标着CONSOLE或RJ-45字样,需要用专用的Console线连接电脑串口或USB转串口。连接工具我用过SecureCRT、Xshell和PuTTY,参数设置是固定的:波特率9600、数据位8、停止位1、无校验、无流控。现在很多笔记本没有串口,记得提前装好USB转串口驱动,否则设备管理器里根本看不到端口,这一步就能卡住不少人。

连接上之后,会进入上帝视角之外的第一个状态:用户执行模式,提示符长这样:

Switch>

这个模式下几乎什么都干不了,只允许查看极少信息,比如ping一下对端。真正开始工作,先敲enable进入特权执行模式:

Switch> enable Switch#

从特权模式再往下,是全局配置模式,所有全局参数的修改都发生在这里:

Switch# configure terminal Switch(config)#

从全局配置模式再往下,常见的有接口配置模式、线路(Line)配置模式和VLAN配置模式,分别用于配置具体端口、Console/VTY远程登录线和交换机VLAN数据库:

Switch(config)# interface GigabitEthernet0/1 Switch(config-if)# Switch(config)# line vty 0 15 Switch(config-line)# Switch(config)# vlan 10 Switch(config-vlan)#

各模式之间用exit逐级返回上一级,用end直接跳回特权模式,也可以用快捷键Ctrl+Z。如果在配置里写错了,直接在命令前加no再执行一遍就是撤销,这是思科命令体系里最反直觉但最好用的设计:所有配置都是“可逆”的。

1.2 问号、Tab补全和缩写:现场效率全在这

思科CLI有一个隐藏属性,终端里任何时候输入问号,都会列出这个位置所有可用的命令或参数。比如在全局配置模式下输入ip ?,系统会把所有ip开头的子命令全部打出来,带着中文注释我没有见过,英文说明已经足够清晰。Tab键则是自动补全,敲到一半直接补完整命令。

新手容易忽略的是命令缩写。思科CLI默认支持唯一前缀匹配,也就是说只要敲出来的前缀能唯一定位到某条命令,就可以直接执行。比如configure terminal可以缩写成conf t,show running-config可以缩写成sh run,interface GigabitEthernet0/1可以缩写成int g0/1。缩写在现场敲起来非常顺,但我个人的建议是:学的时候老老实实敲全称,把命令真正理解的每个单词是什么含义,否则你靠纯缩写记住了sh ip int br,换到别的厂商设备上就完全傻眼,因为华为是display ip interface brief,锐捷是show ip interface brief,厂家一换,缩写体系的肌肉记忆就废了。

还有两个极其实用的全局小命令。第一个是no ip domain-lookup,它解决的是“手滑把命令打错,设备拿去当域名解析,干等十几秒”的痛。第二个是hostname,给设备起个有意义的名称,比如hostname Core-SW01,后续所有提示符和日志都会带上这个名字,多台设备同时开窗口管理时,救命级别的好用。

2. show命令家族:现场排障的第一手情报

2.1 高频show命令及输出怎么读

我把平时用的最多的show命令整理成一个固定动作,叫“上车四连”。接到任何网络故障工单,先做的永远是这几条,不是急着改配置。

show running-config show ip interface brief show interfaces status show cdp neighbors

show running-config是设备的当前运行配置,一切故障分析都要以它为基准。show ip interface brief是接口IP和协议状态的速览表,输出形如:

Interface IP-Address OK? Method Status Protocol GigabitEthernet0/1 192.168.10.2 YES manual up up GigabitEthernet0/2 192.168.20.2 YES manual up up

Status是链路层的物理状态,Protocol是数据链路层协议状态,这一行信息量极大。状态组合有几种老网络人都懂的规律:up/up是最健康的;down/down在非管理接口上多半是物理链路断了,线没插好、对端关机、光纤收发器没在发光;admin down/down说明接口被手工shutdown了;up/down则意味着物理层正常但协议层起不来,在没有启用路由协议的三层接口上,这个组合基本等于接口被no shut之后还没配上IP地址或者对端IP段不匹配。

show interfaces status看的是端口管理状态和access/trunk模式:

Port Name Status Vlan Duplex Speed Type Gi0/1 PC-UPLINK connected 10 a-full a-1000 10/100/1000BaseTX

这里的Vlan列,在Access模式下表示这个端口归哪个VLAN,在Trunk模式下会显示为trunk。connected代表物理链路正常,端口在正常转发;notconnect代表没有对端设备接入;disabled是端口被shutdown;err-disabled则代表端口触发了某种错误策略,比如端口安全违规或BPDU Guard触发,设备把端口锁了。

show cdp neighbors是思科专有的邻居发现协议,专门用来发现直连的思科设备。输出里能看到对端设备名、平台型号、本端端口、对端端口。注意CDP默认是开启的,如果这台设备旁边连的不是思科设备,或者被安全策略禁用了CDP,这条命令就看不到东西,这时可以用show lldp neighbors,LLDP是IEEE标准协议,跨厂商也能通。

2.2 用show命令还原一次真实故障

有一次客户那边整层楼断网,我到现场先登录核心交换机,一路show下来。show ip interface brief一看,某个上行口Status是down,但备用的链路是up。再show interfaces status,发现那个down掉的端口连的是主上行电路,对端设备没有回包。最后show cdp neighbors确认主上行端口对端设备已经消失了,基本可以断定是主链路对端设备宕机或光路故障,直接切换业务到备用链路。全程没有改任何配置,纯靠show输出定位问题。

所以在思科交换机上,show命令不是“看个状态”,而是你判断问题在物理层、链路层还是配置层的依据。每次改完配置,我也会习惯性地用show命令核对一遍,确认改的内容真的生效了,而不是“我以为生效了”。

3. VLAN与Trunk配置:真实故障高发区,必须精雕细琢

3.1 创建VLAN与端口划入的正确姿势

VLAN是交换机最基本最核心的抽象。默认情况下所有端口都在VLAN 1里,实际项目中一定要为不同业务划分VLAN。创建VLAN用vlan命令:

Switch(config)# vlan 10 Switch(config-vlan)# name Office Switch(config-vlan)# exit

命名不是可选项,强烈建议写上。过几个月回来翻配置,vlan 10是什么业务可能早就忘了,但name Office一眼就明白。

把物理端口划入VLAN,先进入接口或接口组:

Switch(config)# interface range GigabitEthernet0/1-24 Switch(config-if-range)# switchport mode access Switch(config-if-range)# switchport access vlan 10

interface range一次配多个接口,效率极高。但要注意范围写法中间是连字符,不能有空格;不同接口类型不能写在同一个range里,比如FastEthernet和GigabitEthernet混在一起就不识别。

switchport mode access指定端口工作在Access模式,VLAN里是正常的Access端口,对接终端设备和服务器。switchport access vlan 10才真正把端口放进VLAN 10。两条都要写,顺序无所谓,但缺了switchport mode access,在部分型号默认dynamic desirable的端口上,可能出现Access VLAN配置不变但端口角色没有切到access的情况。

从端口上移除VLAN就简单了,重新指定就行:

Switch(config-if)# no switchport access vlan 10 Switch(config-if)# no switchport mode access

需要特别提醒的是,VLAN配置分两个地方存放。运行配置和启动配置文件里记录的是接口划入VLAN的关系,但VLAN本身或者叫VLAN数据库,存在flash里的vlan.dat文件中。只执行no vlan 10删除的是运行配置里的VLAN,重启后如果启动配置还有引用,VLAN数据库里的条目不一定清干净。彻底删干净需要delete vlan.dat再重启,但绝大多数场景没这个必要,删除VLAN对现网影响很大,谨慎再谨慎。

3.2 Trunk链路与Native VLAN的实战细节

Trunk用于交换机之间的级联链路,目的是让多个VLAN的流量在同一物理链路上走。配置模板如下:

Switch(config)# interface GigabitEthernet0/24 Switch(config-if)# switchport mode trunk Switch(config-if)# switchport trunk encapsulation dot1q Switch(config-if)# switchport trunk native vlan 99 Switch(config-if)# switchport trunk allowed vlan 10,20,30,99

switchport mode trunk把端口改为Trunk模式。switchport trunk encapsulation dot1q是封装协议,老型号如3550上需要手工指定,新款2960以上基本都是自动的或没有这条命令。native vlan指定Native VLAN,Trunk链路上不打标签的VLAN就是它。两台交换机级联时,Native VLAN必须一致,否则直接报Native VLAN mismatch,而且这个报错会在日志里反复刷。

switchport trunk allowed vlan用来限制Trunk上允许哪些VLAN的流量通过,重点来了:这条命令默认的版本是允许所有VLAN,你一旦执行allowed vlan 10,20,就变成了只允许两个VLAN,其他全部被过滤。我见过好几次现场事故,就是因为有人想在Trunk上加一个新VLAN,执行了:

Switch(config-if)# switchport trunk allowed vlan add 40

没问题,add关键字是在原有基础上追加。但如果写成:

Switch(config-if)# switchport trunk allowed vlan 40

就直接把原来的允许列表覆盖成只有VLAN 40了,其他VLAN流量瞬间全断。这是Trunk配置里最经典的“手滑现场”,每次写这条命令我都会在脑子里过一遍是要add还是no还是直接覆盖。

验证VLAN配置用show vlan brief:

Switch# show vlan brief VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active Gi0/1, Gi0/2, Gi0/3 10 Office active Gi0/4, Gi0/5 20 Server active Gi0/6 99 Management active Gi0/1

Ports列列出了哪些端口划入了这个VLAN。如果端口不在任何一个VLAN里显示,多半是端口模式没切干净或者接口还是shutdown状态。查看Trunk链路状态,用show interfaces trunk,能看到该Trunk的工作模式、Native VLAN和允许通过的VLAN列表,这是第二常看的验证命令。

4. 三层交换与VLAN间路由:从接入层走向核心

4.1 启用路由与SVI配置

二层交换机负责转发同一个VLAN里的帧,不同VLAN之间要通信,必须经过三层路由。思科三层交换机上,最常用的做法是SVI(Switch Virtual Interface),也叫VLAN接口,它相当于交换机为某个VLAN派生出一个虚接口,用来做网关和路由。

第一步,先确认这台交换机开了三层路由能力:

Switch(config)# ip routing

这一步很关键但容易被忽略。某些三层交换机默认不开启全局路由,只走二层转发,ip routing要手动敲。它一敲,这台设备才真正作为三层设备开始查路由表转发流量。

然后为每个需要通信的VLAN创建SVI:

Switch(config)# interface vlan 10 Switch(config-if)# ip address 192.168.10.254 255.255.255.0 Switch(config-if)# no shutdown Switch(config)# interface vlan 20 Switch(config-if)# ip address 192.168.20.254 255.255.255.0 Switch(config-if)# no shutdown

no shutdown是第三个常见的坑。源于SVI接口默认状态是up还是down取决于VLAN内是否有活跃端口,但很多情况下你配置完SVI后,VLAN里确实没有接口工作,SVI就会保持down。所以no shutdown后,还要确认VLAN里至少有一个active接口,SVI才真正起来。

另一种三层配置是把物理端口直接改成路由口,作用于下联防火墙上行口或服务器口:

Switch(config)# interface GigabitEthernet0/24 Switch(config-if)# no switchport Switch(config-if)# ip address 10.0.1.2 255.255.255.252 Switch(config-if)# no shutdown

no switchport把二层端口硬生生改成三层路由口。这个操作在部分型号上会使接口短暂中断,现网割接时要安排在窗口期。判断设备支持不支持,最简单的方法就是敲完看是否报错,不支持就直接提示无法识别。

4.2 静态路由与OSPF的最小配置

三层交换机之间或交换机到防火墙上,路由要么是静态的,要么是动态路由协议。小型网络静态路由足够了:

Switch(config)# ip route 0.0.0.0 0.0.0.0 10.0.1.1 Switch(config)# ip route 192.168.30.0 255.255.255.0 10.0.1.1

第一条是默认路由,下一跳指向防火墙或核心出口;第二条是明细路由,告诉交换机去192.168.30.0网段怎么走。静态路由优先级是1,比任何动态路由都优先,做路由切换的时候要清楚这一点。

中大型网络就会用到OSPF。思科交换机上OSPF的起配非常简单:

Switch(config)# router ospf 1 Switch(config-router)# router-id 1.1.1.1 Switch(config-router)# network 192.168.10.0 0.0.0.255 area 0 Switch(config-router)# network 192.168.20.0 0.0.0.255 area 0 Switch(config-router)# network 10.0.1.0 0.0.0.3 area 0

network语句后面的不是子网掩码,是反掩码。子网掩码255.255.255.0取反就是0.0.0.255,255.255.255.252取反就是0.0.0.3。反掩码里0表示精确匹配,1表示忽略。这个细节坑过很多人,第一反应都是“为什么这里写0.0.0.255”,原因就在反掩码的定义里。

OSPF配好后,验证命令就三条:

show ip route ospf show ip ospf neighbor show ip ospf interface brief

show ip ospf neighbor看到的状态是Full,才说明邻居关系建立成功。如果一直卡在Init或Exstart/Exchange,重点检查两端router-id是否冲突、区域号、hello/dead时间是否一致、反掩码宣告的网段是否覆盖了互联地址。

5. 生成树命令实操:PVST、RSTP与根桥控制的完整姿势

5.1 手工指定根桥与端口加速收敛

如果网络里有环路,却不开生成树,广播风暴能直接把整台交换机CPU打满,那是我绝不想再经历的现场。思科交换机默认就启用了生成树,但默认的PVST收敛太慢,所以只要设备支持,我第一件事就是把生成树模式切到Rapid PVST:

Switch(config)# spanning-tree mode rapid-pvst

Rapid PVST是思科基于802.1w RSTP的快速生成树实现,针对每个VLAN单独跑一棵生成树,收敛速度从秒级降到毫秒到秒级,是目前思科纯二三层交换机场景里的稳妥选择。如果你的热搜词里反复看到PVST,多数就是指这个东西。

根桥选举是生成树里最核心的概念。整个二层网络里必须找一个最可靠的交换机当根桥,别的交换机上哪个端口要阻塞、哪个端口要转发,全看它离根桥的距离。手工指定根桥是绝对必要的,原因很简单:如果放任设备自己选举,谁MAC地址小谁当根,往往是最不该当核心的那台接入交换机成了根,流量绕远路,收敛还慢。

Switch(config)# spanning-tree vlan 10 root primary Switch(config)# spanning-tree vlan 20 root primary

spanning-tree vlan 10 root primary是在当前设备上把VLAN 10的优先级改成低值,强制它当根桥,无需自己心算优先级数值。这是给核心交换机准备的核心命令。同时还要在备用核心上指定次优根桥:

Switch(config)# spanning-tree vlan 10 root secondary

双核心加双上行,是园区网最典型的架构。主根桥掉电,备用根桥自动接管,业务中断时间在RSTP下极大缩短。

接入层交换机连接终端设备的端口,全部建议开启两个参数:

Switch(config)# interface range GigabitEthernet0/1-24 Switch(config-if-range)# spanning-tree portfast Switch(config-if-range)# spanning-tree bpduguard enable

spanning-tree portfast让端口在接入终端设备时跳过监听和学习状态,直接进入转发,解决“插网线等30秒才能上网”的体验问题。spanning-tree bpduguard enable则是保护端口不出环的核心:如果这个端口意外接了一台交换机进来,收到了BPDU,直接进入err-disabled状态,端口被自动关闭,而不是参与生成树计算把环路兜进来。

验证命令是:

show spanning-tree show spanning-tree vlan 10 show spanning-tree summary

show spanning-tree vlan 10重点看Root ID的本机标识,如果Root ID和Bridge ID一样,说明这台交换机就是根桥;再看端口角色,正常稳定状态下,根端口和指定端口是FWD转发,非指定端口是BLK阻塞。只要有端口状态反复在FWD和BLK之间跳,说明网络里可能存在环路或参数不一致。

5.2 生成树的真实排障流程

遇到生成树把端口阻塞导致业务断连,先别慌,按下面的顺序查。第一步show spanning-tree看根桥是谁,确认是不是自己心里想的那台。如果不是,大概率是新增设备在抢根桥,这时看它的Bridge ID和优先级,再用spanning-tree vlan x root primary把它压下去。第二步show spanning-tree vlan x看指定端口状态,如果某个上行口一直BLK,可能是对端交换机的优先级比你低,它成了更优的根路径,你这边对应端口自然阻塞。第三步用show interfaces status | include err看有没有err-disabled端口,如果BPDU Guard触发了,日志里会有bpduguard error detected,端口会进入err-disable。恢复方式是在端口上先shutdown再no shutdown,或者全局配置errdisable recovery cause bpduguard让设备自动恢复。

还有一种很隐蔽的情况:Trunk链路的Native VLAN不一致,生成树BPDU在native VLAN里发送,两端标记不一致时会导致生成树计算混乱,表现出来就是网络时通时断,交换机日志疯狂刷%CDP-4-NATIVE_VLAN_MISMATCH。解决办法就是强制统一两端的Native VLAN,我一般用保留VLAN 99或VLAN 1,并在两端确认show interfaces trunk看到一样的Native VLAN值。

6. EtherChannel链路聚合:把多条物理链路拧成一根逻辑链路

6.1 EtherChannel配置与模式选择

两台核心交换机之间有两条或多条物理链路,如果不做链路聚合,生成树会阻塞其中一条来防环,等于白白浪费掉一半带宽。EtherChannel解决的就是这个问题,它把多条物理链路捆成一根逻辑链路,既增加了带宽,又天然去环。二层Trunk链路和三层路由口都可以做EtherChannel。

配置核心是channel-group命令,推荐用LACP标准模式:

Switch(config)# interface range GigabitEthernet0/23-24 Switch(config-if-range)# channel-group 1 mode active

mode active表示主动启用LACP协商,和它对端的模式必须是active或passive。对应思科私有PAgP协议的mode desirable/auto,现在做跨厂商互通或和服务器网卡绑定建议直接用LACP,别纠结PAgP。

在聚合口上继续做VLAN或者路由配置,不是在物理口上,而是在逻辑口Port-channel 1上:

Switch(config)# interface Port-channel 1 Switch(config-if)# switchport mode trunk Switch(config-if)# switchport trunk allowed vlan 10,20,30

很多人容易忘记一点:EtherChannel里所有成员口的物理参数必须一致。速率、双工、VLAN划入或Trunk配置、Native VLAN,全部要一样,否则LACP协商不成功,物理端口还是up但聚合口起不来。

验证命令是EtherChannel调试的灵魂:

show etherchannel summary show etherchannel port-channel show etherchannel load-balance

show etherchannel summary输出里一列Flags,重点看大写字母。模式是“P”表示端口已加入聚合;如果是“I”,说明端口独立,协商失败。失败原因基本逃不开前面说的参数不一致,逐项比对即可。

6.2 负载均衡算法的选择逻辑

EtherChannel的负载均衡算法用下面的命令调整:

Switch(config)# port-channel load-balance src-dst-ip

常见算法有src-ip、dst-ip、src-dst-ip、src-dst-mac。默认配置在部分型号上是src-mac,做纯二层流量问题不大,但如果是三层路由流量,按MAC哈希容易导致某个热点IP把流量全压到一条物理链路上。src-dst-ip基于源目IP做哈希,在三层网络下分布更均匀。调整完用show etherchannel load-balance和show etherchannel port-channel确认算法已生效。

7. 安全加固常用命令:端口安全、ACL与SSH管理

7.1 端口安全与MAC限制

端口安全是最直接有效的接入层防护手段。它限制了一个物理端口上允许通过多少个MAC地址,防止私接交换机、私接路由器、伪造MAC等乱象。基础版配置如下:

Switch(config)# interface GigabitEthernet0/1 Switch(config-if)# switchport port-security Switch(config-if)# switchport port-security maximum 2 Switch(config-if)# switchport port-security mac-address sticky Switch(config-if)# switchport port-security violation restrict

switchport port-security开启端口安全功能。maximum 2限制该端口最多学两个MAC地址。mac-address sticky会把学到的MAC地址写入运行配置,防止重新拔插后换地址。violation restrict设置违规后的动作:shutdown会把端口直接关闭进入err-disabled,最安全但影响面最大;restrict是丢弃违规帧并记录日志;protect是直接丢弃但连日志都不打。

我在办公网的建议是接入终端口用shutdown或restrict,服务器口别开端口安全,否则运维误操作或集群漂移MAC时,端口被锁就是事故。真遇到端口err-disabled,排查日志看到SECURITY_VIOLATION,恢复绑定的MAC后执行shutdown再加no shutdown重新激活端口即可。

7.2 ACL控制流量与SSH管理

ACL在思科交换机上分两种:标准ACL(1-99)只能匹配源地址,扩展ACL(100-199)能同时匹配源目地址、端口和协议。实际项目中扩展ACL用得多。

比如,限制某台终端只能访问10.0.0.0网段,其他全拒:

Switch(config)# access-list 100 permit ip host 192.168.10.10 10.0.0.0 0.255.255.255 Switch(config)# access-list 100 deny ip any any Switch(config)# interface vlan 10 Switch(config-if)# ip access-group 100 in

ip access-group 100 in把ACL应用到VLAN 10的入方向。ACL处理遵循“从上往下,命中即停”的规则,所以permit规则一定要放在最前面。ACL默认末尾有一条隐含的deny all,在思科设备上默认不显示,很多新手配置完发现全网不通,多半就是忘了在最后加一条permit ip any any或者把放行顺序写错了。

ACL的另一个高频用途是锁VTY远程管理访问:

Switch(config)# access-list 10 permit host 192.168.1.100 Switch(config)# line vty 0 15 Switch(config-line)# access-class 10 in

这样只有管理IP 192.168.1.100能登录这台交换机,其他地址一律拒绝,把设备管理面从公网上隔离开。这条配置在等保测评里经常是必查项。

SSH替换明文Telnet也是管理面的基本要求:

Switch(config)# ip domain-name example.local Switch(config)# crypto key generate rsa Switch(config)# ip ssh version 2 Switch(config)# username admin privilege 15 secret Admin@123456 Switch(config)# line vty 0 15 Switch(config-line)# transport input ssh Switch(config-line)# login local

先配域名才能生成RSA密钥,密钥位数默认按提示选2048。transport input ssh直接把Telnet挡在门外,login local让设备用本地用户名密码认证。这样远程管理就变成了走SSH进、本地账号认证、ACL还限制了来源IP的三重保护,基本是行业标配做法。

8. 应急与恢复:配置备份、密码恢复与IOS引导

8.1 配置备份与定时保存的习惯

在思科设备上,敲完配置之后不等于写进永久存储,如果直接断电,运行配置全部丢失。所以配置完一项,立刻执行:

Switch# copy running-config startup-config

这条命令等价于write memory,把运行配置保存到启动配置文件。很多人刚接触时经常忘了这一步,项目做完没问题,一断电全回到解放前。养成改完必需保存的习惯,这是硬习惯,不依赖记性。

配置备份到外部更保险,常见有两种方式。TFTP备份:

Switch# copy running-config tftp://192.168.1.100/config-backup/Core-SW01.conf

USB备份(设备有USB口):

Switch# copy running-config usbflash0:/

多条配置同时备份,我习惯用archive命令定期生成带时间戳的配置快照,方便回溯:

Switch(config)# archive Switch(config-archive)# path tftp://192.168.1.100/archive Switch(config-archive)# write-memory

8.2 忘记enable密码后的恢复流程

思科设备密码忘了不用慌,也不需要换硬件。恢复过程中会暂时跳过启动配置,整个过程在物理控制台上操作,所以前提是你还能接近设备拿到Console口权限。具体流程如下:

重启设备,在前几秒内按Ctrl+Break进入ROM监控模式,提示符变成rommon 1>。然后执行:

rommon 1> confreg 0x2142 rommon 2> reset

confreg 0x2142把配置寄存器改成0x2142,含义是启动时忽略NVRAM中的启动配置,直接空配置进入系统。设备重启后会进入没有密码的默认配置状态,此时从特权模式把原始配置加载进来:

Switch> enable Switch# copy startup-config running-config

配置加载完,重新设置enable密码和本地账号:

Switch(config)# enable secret NewPass@123 Switch(config)# username admin privilege 15 secret NewPass@123

最后把配置寄存器改回正常值0x2102,保存配置,重启设备:

Switch(config)# config-register 0x2102 Switch(config)# end Switch# copy running-config startup-config Switch# reload

注意那串配置寄存器数值不要记错。0x2142是跳过NVRAM配置启动,0x2102是正常启动加载NVRAM配置。如果在恢复模式下忘了改回0x2102就保存,下次重启设备还是空配置,看起来像配置文件被清了,其实是寄存器没改回来,这个现象我帮人排查过不止一次。

8.3 IOS文件备份与升级

升级或者更换IOS版本之前,先把当前版本备份出来。查看当前IOS名和flash空间:

Switch# show version Switch# show flash:

备份IOS到TFTP,下载新版本到设备:

Switch# copy flash: tftp://192.168.1.100/C2960-LANBASEK9-M-15.2.bin Switch# copy tftp://192.168.1.100/c2960-lanbasek9-mz-150-2.SE11.bin flash:/

设置下次启动使用新版本:

Switch(config)# boot system flash:c2960-lanbasek9-mz-150-2.SE11.bin Switch(config)# end Switch# write memory Switch# reload

升级最大的风险是版本和硬件不匹配导致启动失败。确定升级之前,先查新IOS要求的最小DRAM和Flash容量,再和show version里的实际硬件对照,不要只看文件名就开刷。如果升级完设备反复重启进不了系统,多半是Flash空间不够或者引导文件名写错,可以在ROMmon模式下用dir flash:核实文件名,再重新指定引导文件。这个是最后一道保命动作,要记住。

最后再说一个操作习惯层面的体会:思科交换机命令行能力很强,但真正体现功力的地方不在于背下多少命令,而在于知道在什么场景下调用哪条命令、输出如何解读、出错后如何恢复。我见过太多人把show running-config从头背到尾,真出了故障还是抓瞎。建议想练手的同学,用思科模拟器或者CML搭一个双核心加多接入的小拓扑,把VLAN、Trunk、PVST根桥切换、EtherChannel聚合这些操作从头到尾演练几遍,再配合抓包看看BPDU和LACP报文,很多命令的记忆点自然就长在脑子里了。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询