简介
某些思科接入点(AP)可能会通过CAPWAP(无线接入点的控制和调配)从9800系列控制器下载损坏的映像。 根据AP的软件版本,AP可能会尝试引导损坏的映像,从而导致引导循环。 本文解释如何恢复陷入启动循环的接入点。要了解有关哪些产品和部署容易出现此问题的详细信息,以及如何在不出现引导环路问题的情况下安全地升级,请参阅文章安全升级接入点,避免导致引导环路的图像损坏。
此问题记录为Field Notice:FN74109 - CAPWAP升级期间的接入点映像损坏可能会导致引导失败…….
问题条件
不受影响的产品
- 无线局域网控制器(WLC): 从AireOS无线局域网控制器下载的AP不受影响
- Mobility Express、嵌入式无线控制器
- AP - Aironet 1800/1540/1100AC系列Wave 2 11ac AP和Wave 1 11ac接入点(1700/2700/3700/1570/IW3700)不受影响(即使这些AP注册到9800 WLC,也不会受影响)
- 自2023年推出的Wi-Fi 6E AP:IW9167、IW9165、C9163
受影响的产品
- WLC:从Cisco Catalyst 9800系列无线局域网控制器下载的AP可能会受到影响
- 无线接入点:注册到Cisco Catalyst 9800系列无线局域网控制器的以下AP型号受到影响:
- Aironet Wave2 11ac无线接入点(2800/3800/4800/1560/IW6330/ESW6300)
- Catalyst 9100系列Wi-Fi6接入点(9105/9115/9117/9120/9124/9130/WP-WIFI6/ISR-AP1101AX)
- Catalyst 9100系列Wi-FI6E接入点(9136/9162/9164/9166)
受影响的版本:启动不良映像综合症
AP尝试引导其知道已损坏的镜像时,此问题可通过以下Cisco Bug ID解决:CSCvx32806
、CSCwc72021
、CSCwd90081
,已在以下版本中修复:
- 8.10.185.0及更高版本
- 17.3.7及更高版本
- 17.6.6及以上
- 17.9.3及以上
- 17.11.1及以上
AP升级到具有上述修复程序的软件后,仍可能下载损坏的映像;但是,它不会尝试启动该映像,而是会继续重新尝试下载,直到成功为止。
症状
AP控制台:
已下载损坏映像的AP现在处于引导环路中,将会显示类似以下内容的控制台消息:
验证/bootpart/part1/ramfs_data_cisco.cpio.lzma的签名失败
或
验证/bootpart/part2/ramfs_data_cisco.squashfs的签名失败
记录消息中是否显示“part1”或“part2” — 这将指示哪个引导分区已损坏。
Syslog或Show logging:
如果接入点配置为在尝试下载映像之前记录到外部系统日志服务器,它将记录以下错误:
映像签名验证失败:-3
在AP CLI(控制台或SSH)的“show logging”输出中也可以看到此错误消息。 如果自映像更新尝试后日志记录缓冲区已被覆盖,则可能会在AP闪存中存储的系统日志文件中看到错误消息。 如果您在show logging中既没有看到成功消息,也没有看到失败消息,则在AP上使用一种恢复方法通过TFTP或SFTP重新安装所需的映像。
思科交换机端口:
处于启动环路状态的AP将显示IEEE PD,如下面的AP的上行链路交换机端口的Show输出所示。 (如果使用CDP或LLDP,运行正常的AP将在“设备”列中显示其型号):
switch#show power inline
Available:195.0(w) Used:159.9(w) Remaining:35.1(w)
Interface Admin Oper Power Device Class Max
(Watts)
--------- ------ ---------- ------- ------------------- ----- ----
Gi0/1 auto on 15.4 Ieee PD 4 30.0
Gi0/2 auto on 24.1 C9115AXI-B 4 30.0
如何恢复引导环路中的AP
确定AP是否具有备用引导增强功能
如果AP已下载损坏的映像,并且正在尝试启动该映像,则根据其u-boot(AP bootloader)是否具有Alt-boot(Alternate bootloader)增强功能,它将显示以下两种行为之一
- 不使用Alt-boot:ap将无限期尝试启动损坏的映像,并且需要通过控制台端口进行恢复
- 使用Alt-boot:ap将尝试引导损坏的映像五次,然后从备份分区引导映像。 在这种情况下,无需控制台访问即可恢复AP,使用下面记录的Alt-boot恢复方法之一。
Alt-boot u-boot增强功能捆绑在以下软件版本中:
- 9117/9130/9124 :8.10.190.0、17.3.8+、17.6.6+、17.9.1+
- 9136:17.9.1+
- 916x:所有设备均具有Alt-boot增强功能
- 9105/9115/9120/2800/3800/4800/1560/6300 :8.10.190.0、17.3.8+、17.6.6+、17.9.4
请注意,如果AP下载了具有Alt-boot增强功能的映像,则其u-boot将升级,即使运行时映像已损坏。 例如,请考虑以下场景:
- 9130 AP已安装17.3.4c(没有Alt-boot增强功能)。
- 然后下载17.9.5映像,但此映像在下载期间已损坏。
- 由于17.3.4c没有启动不良映像综合征的修复程序,因此AP继续尝试启动损坏的映像。
- 引导新的映像分区将导致AP在尝试引导错误的运行时映像之前升级到17.9.5 u-boot。
- 然后,AP将尝试五次引导损坏的17.9.5运行时映像。
- 然后,由于AP现在运行17.9.5 u-boot,Alt-boot逻辑将切换AP以引导其备份分区中的运行时映像。
- 现在,无需控制台访问即可恢复AP。
恢复处于引导环路的AP — 使用Alt-boot增强功能
如果您的AP处于引导环路中,并且他们的U-boot具有Alt-boot增强功能,则使用以下过程之一来恢复它们:
如果AP上启用了SSH
- 将所需的AP映像暂存到受影响AP可访问的TFTP或SFTP服务器上。 有关映射到所需Cisco IOS® XE版本的15.3(3)J* AP版本,请参阅兼容性表中的表4,然后从software.cisco.com下载适用于受影响的AP型号的轻量AP软件映像。
- 例如,CW9162的17.9.5 AP映像是ap1g6b-k9w8-tar.153-3.JPN4.tar。
- 防止受影响的AP加入运行与其损坏分区中相同软件版本的控制器。 因此,请在AP交换机端口上添加CAPWAP ACL,以防止AP再次加入控制器。 例如,AP子网的默认网关接口上可以应用类似于以下内容的ACL:
Router#show running-config | section access-list 133
access-list 133 deny ip host <wlc_ip> any log
access-list 133 deny ip any host <wlc_ip> log
access-list 133 permit ip any any
Router#show running-config interface Vlan6
[ ... ]
interface Vlan6
ip address 192.168.6.1 255.255.255.0
ip access-group 133 in
- 让AP用损坏的映像重新启动五次,之后应切换到备份分区中的工作映像。
- 您可以在AP的交换机上使用命令show cdp neighbor <interface> detail查看AP的备份分区中的代码版本。 (如果AP正在引导损坏的映像,则CDP不会在其端口上启动。)
- 一旦AP获得工作备份映像,它将尝试加入控制器,但由于步骤2中添加了ACL,将无法加入。
- 通过SSH连接到每个受影响的AP(如果大量的AP受到影响,可以通过WLAN轮询器自动执行此步骤。)
- 现在使用archive download命令将所需的映像下载到AP的备份分区:
archive download-sw /no-reload tftp://<ip-address>/<apimage>
或
archive download-sw /no-reload sftp://<ip-address>/<apimage>
这将用有效映像覆盖损坏的映像。 映像下载完成后,请发出:
test capwap restart
这将重新启动CAPWAP进程,以便AP能够识别新安装的映像。
- 现在删除ACL,并让AP加入控制器。它不会再次下载映像。
如果AP上未启用SSH,但AP具有备用引导增强功能
- 确保AP不会尝试加入运行与其损坏分区中相同软件版本的控制器。 因此,请在AP交换机端口上添加CAPWAP ACL,以防止AP再次加入控制器。
- 启动运行不同于AP损坏版本的软件版本的控制器。
- 您可以在AP的交换机上使用命令show cdp neighbor <interface> detail查看AP的备份分区中的代码版本。 (当AP启动损坏的映像时,CDP不会在其端口上启动。)
- 如果暂存运行AP备份版本的控制器不可行,那么(如果9800),至少暂存一个版本并修复Boot a Bad Image Syndrome和Alt-boot。
- 另一种选择是让运行8.10.190.0或更高版本的AireOS控制器,因为从AireOS下载CAPWAP不会损坏映像。
- 设置设置,以便AP可以发现备用控制器 — 例如,通过DHCP选项43、IP帮助地址或DNS。
- 请注意,如果备用控制器运行的Cisco IOS XE版本与AP的备份版本不同,则AP可能会下载损坏的映像,因此请对可能新损坏的任何AP重复此过程。
- AP加入备用控制器后,将所需映像下载到AP:
- 将所需的AP映像暂存到受影响AP可访问的TFTP或SFTP服务器上。 有关映射到所需Cisco IOS XE版本的15.3(3)J* AP版本,请参阅兼容性表中的表4,然后从software.cisco.com下载适用于受影响的AP型号的轻量AP软件映像。
- 例如,CW9162的17.9.5 AP映像是ap1g6b-k9w8-tar.153-3.JPN4.tar。
- 在受影响的AP上启用ssh,并使用ssh连接到每个受影响的AP(如果大量的AP受到影响,可以通过WLAN轮询器自动执行此步骤。)
- 现在使用archive download命令将所需的映像下载到AP的备份分区:
archive download-sw /no-reload tftp://<ip-address>/<apimage>
或
archive download-sw /no-reload sftp://<ip-address>/<apimage>
这将用有效映像覆盖损坏的映像。
- 映像下载完成后,请发出:
test capwap restart
这将重新启动CAPWAP进程,以便AP能够识别新安装的映像。
- 作为在AP上执行archive download-sw的替代方案,您可以使用以下控制器命令获取AP,以从TFTP服务器下载所需的映像:
- 在Cisco IOS XE中:ap name APNAME tftp-downgrade ip.addr.of.server imagename.tar
- 在AireOS中:config ap tftp-downgrade ip.addr.of.server imagename.tar APNAME
- 监控TFTP服务器日志,验证每个AP是否已成功下载映像。 下载完成后,每个AP将重新加载,运行新下载的映像。
- 删除步骤1中安装的ACL,并让AP加入所需的控制器。
通过控制台恢复
如果AP处于引导环路中,并且AP没有Alt-boot增强功能,则必须通过控制台恢复AP。
对于所有AP型号:确定哪个引导分区已损坏
首先,确定哪个引导分区已损坏。
- 连接到AP控制台。
- 观察AP尝试启动,直到您看到消息
验证/bootpart/part1/ramfs_data_cisco.cpio.lzma的签名失败
或
验证/bootpart/part2/ramfs_data_cisco.cpio.lzma的签名失败
(消息可能会显示“ramfs_data_cisco.squashfs”,而不是“ramfs_data_cisco.cpio.lzma”
- 记下哪个分区(part1或part2)已损坏
对于AP型号 9117、9124、9130、9136
- 连接到控制台时,重新通电AP。
-
在启动期间,当您看到按ESC键停止自动启动时, 按Escape键
-
您应该看到以下提示之一:
(BTLDR)编号
或
(u-boot)>
- 运行以下命令
(u-boot)> or (BTLDR)# setenv mtdids nand0=nand0 && setenv mtdparts mtdparts=nand0:0x40000000@0x0(fs) && ubi part fs
(u-boot)> or (BTLDR)# ubi remove part1 (or part2 if corrupted image is in part2)
(u-boot)> or (BTLDR)# ubi create part1 (or part2 if corrupted image is in part2)
(u-boot)> or (BTLDR)# reset
对于AP型号2802、3802、4800、9105、9115、9120
- 连接到控制台时,重新通电AP。
-
在启动期间,当您看到按Esc键停止自动启动时,按Escape键
-
这会使您进入(u-boot)>提示符。
-
运行以下命令
(u-boot)> ubi part fs
(u-boot)> ubi remove part1 (or part2 if corrupted image is in part2)
(u-boot)> ubi create part1 (or part2 if corrupted image is in part2)
(u-boot)> boot
常见问题解答
问题1:我的AP都通过高速、低延迟、低丢失的LAN连接连接到其9800。 我是否仍需要执行上述操作?
仅当通过WAN连接升级AP时才会报告此问题。
问题2:我有新的开箱即用的AP。如何在不遇到此问题的情况下部署它们?
如果新的AP是在2023年12月之前生产的,则通过有损耗的广域网链路下载代码的新开箱即用型接入点也容易出现问题。 建议先将这些AP与本地WLC进行分级。
问题3:关于此问题,我有更多问题。 我可以把他们引向谁?
A:发送电邮至fn74109-questions@cisco.com。