Einleitung
Einige Cisco Access Points (APs) laden möglicherweise ein beschädigtes Image über CAPWAP (Control and Provisioning of Wireless Access Points) von einem Controller der Serie 9800 herunter. Je nach Softwareversion des Access Points versucht der Access Point möglicherweise, das beschädigte Image zu booten, was zu einer Bootschleife führt. In diesem Artikel wird erläutert, wie Access Points wiederhergestellt werden, die in einer Bootschleife stecken. Um mehr darüber zu erfahren, welche Produkte und Bereitstellungen für dieses Problem anfällig sind, und um zu erfahren, wie Sie ein sicheres Upgrade durchführen können, ohne dass das Problem mit der Boot-Schleife auftritt, lesen Sie den Artikel Safely Upgrade Access Points, Avoiding Image Corruption That Causes Boot Loop.
Problembedingungen
Nicht betroffene Produkte
- Wireless LAN Controller (WLCs): APs, die von AireOS Wireless LAN Controllern heruntergeladen werden, sind nicht betroffen.
- Mobility Express, integrierter Wireless-Controller
- APs - Aironet 1800/1540/1100AC-Serie Wave 2 11ac APs und Wave1 11ac Access Points (1700/2700/3700/1570/IW3700) sind nicht betroffen (selbst wenn diese APs sich bei 9800 WLCs registrieren, sind sie davon nicht betroffen).
- Wi-Fi 6E APs, die seit 2023 eingeführt wurden: IW9167, IW9165, C9163
Betroffene Produkte
- WLC : Möglicherweise betroffen sind APs, die von Cisco Catalyst Wireless LAN-Controllern der Serie 9800 heruntergeladen werden.
- APs : Die folgenden AP-Modelle, die für Cisco Catalyst Wireless LAN-Controller der Serie 9800 registriert werden, sind betroffen:
- Aironet Wave2 11ac Access Points (2800/3800/4800/1560/IW6330/ESW6300)
- Catalyst Wi-Fi6 Access Points der Serie 9100 (9105/9115/9117/9120/9124/9130/WP-WIFI6/ISR-AP1101AX)
- Catalyst 9100 Wi-FI6E Access Points (9136/9162/9164/9166)
Betroffene Versionen: Das Boot-a-Bad-Image-Syndrom
Dieses Problem wird durch die folgenden Cisco Bug-IDs behoben: CSCvx32806 , CSCwc72021 , CSCwd90081 , in den folgenden Versionen behoben:
- 8.10.185.0 und höher
- 17.3.7 und höher
- 17.6.6 und höher
- 17.9.3 und höher
- 17.11.1 und höher
Wenn der Access Point mit den oben genannten Korrekturen auf Software aktualisiert wurde, lädt er möglicherweise immer noch ein beschädigtes Image herunter. Er versucht jedoch nicht, dieses Image zu starten, sondern wiederholt den Download-Versuch, bis er erfolgreich abgeschlossen ist.
Symptome
AP-Konsole:
Ein Access Point, der das beschädigte Image bereits heruntergeladen hat und sich nun in einer Bootschleife befindet, zeigt eine Konsolenmeldung ähnlich der folgenden an:
Überprüfen der Signatur fehlgeschlagen für /bootpart/part1/ramfs_data_cisco.cpio.lzma
Oder
Überprüfen der Signatur fehlgeschlagen für /bootpart/part2/ramfs_data_cisco.squashfs
Notieren Sie sich, ob die Meldung "part1" oder "part2" lautet - dies zeigt an, welche Bootpartition beschädigt ist.
Syslog oder Protokollierung anzeigen:
Wenn der Access Point vor dem Download-Versuch konfiguriert wurde, sich bei einem externen Syslog-Server anzumelden, wird folgender Fehler protokolliert:
Fehler bei der Überprüfung der Bildsignatur: -3
Diese Fehlermeldung wird auch in der AP-CLI (Konsole oder SSH) in der Ausgabe "show logging" (Protokollierung anzeigen) angezeigt. Wenn der Protokollierungspuffer seit der Image-Aktualisierung überschrieben wurde, wird die Fehlermeldung möglicherweise in den Syslog-Dateien angezeigt, die im AP-Flash-Speicher gespeichert sind. Wenn in der Anzeigeprotokollierung weder Erfolgs- noch Fehlermeldungen angezeigt werden, verwenden Sie eine der Wiederherstellungsmethoden am Access Point, um das gewünschte Image über TFTP oder SFTP neu zu installieren.
Cisco Switch-Port:
Die APs im Bootschleifenstatus zeigen IEEE PD (IEEE-PD) an, wie unten in der Ausgabe Show (Anzeigen) des Uplink-Switch-Ports des APs gezeigt. (Wenn APs ordnungsgemäß funktionieren, wird ihr Modell in der Spalte "Device" (Gerät) angezeigt, falls CDP oder LLDP verwendet wird.):
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
Wiederherstellen von APs in einer Bootschleife
Ermitteln Sie, ob die Access Points die Alt-Boot-Erweiterung aufweisen.
Wenn ein Access Point ein beschädigtes Image heruntergeladen hat und versucht, es zu booten, zeigt er eines von zwei Verhalten, je nachdem, ob sein u-boot (AP bootloader) die Alt-boot (Alternate boot)-Erweiterung aufweist
- Ohne Alt-Boot: Der AP versucht auf unbestimmte Zeit, das beschädigte Image zu booten und muss über seinen Konsolen-Port wiederhergestellt werden.
- Bei Alt-boot: Der Access Point versucht fünfmal, das beschädigte Image zu booten und dann das Image von seiner Backup-Partition zu booten. In diesem Fall kann der Access Point mithilfe einer der nachfolgend beschriebenen Wiederherstellungsmethoden bei Alt-Boot ohne Konsolenzugriff wiederhergestellt werden.
Die Alt-Boot-u-Boot-Erweiterung ist in den folgenden Softwareversionen enthalten:
- 9117/9130/9124: 8.10.190,0, 17.3.8+, 17.6.6+, 17.9.1+
- 9136: 17,9,1+
- 916x: alle Einheiten verfügen über die Alt-Boot-Erweiterung
- 9105/9115/9120/2800/3800/4800/1560/6300: 8.10.190,0, 17.3.8+, 17.6.6+, 17.0 9,4
Beachten Sie, dass ein Access Point, wenn er ein Image mit der Alt-Boot-Erweiterung heruntergeladen hat, sein u-boot aktualisiert wird, selbst wenn das Laufzeitimage beschädigt ist. Betrachten Sie zum Beispiel dieses Szenario:
- Auf einem 9130 AP ist 17.3.4c installiert (ohne die Alt-Boot-Erweiterung).
- Es lädt dann ein 17.9.5 Image herunter, aber dieses Image ist beim Download beschädigt.
- Da 17.3.4c nicht über die Lösung für das Boot a Bad Image Syndrom verfügt, versucht der Access Point, das beschädigte Image zu booten.
- Das Booten der neuen Image-Partition bewirkt, dass der AP auf den U-Boot-Modus 17.9.5 aktualisiert, bevor das fehlerhafte Runtime-Image gestartet wird.
- Der Access Point versucht dann fünfmal, das beschädigte 17.9.5-Laufzeitabbild zu starten.
- Da der Access Point jetzt den 17.9.5-U-Boot-Vorgang ausführt, schaltet die Alt-Boot-Logik den Access Point so um, dass das Laufzeitabbild in der Backup-Partition gestartet wird.
- Der Access Point kann nun ohne Konsolenzugriff wiederhergestellt werden.
Wiederherstellen von APs, die sich in einer Bootschleife befinden - mit Alt-Boot-Erweiterung
Wenn sich Ihre APs in einem Boot-Loop befinden und ihr U-Boot die Alt-Boot-Erweiterung aufweist, können Sie sie mithilfe eines der folgenden Verfahren wiederherstellen:
Wenn SSH auf den APs aktiviert ist
- Positionieren Sie die gewünschten AP-Images auf einem TFTP- oder SFTP-Server, auf den die betroffenen APs zugreifen können. Die Access Point-Version 15.3(3)J*, die der gewünschten IOS-XE-Version zugeordnet ist, finden Sie in Tabelle 4 in der Kompatibilitätsmatrix. Laden Sie dann die entsprechenden Lightweight AP Software-Images für die betroffenen Access Point-Modelle von software.cisco.com herunter.
- Beispiel: Das AP-Image 17.9.5 für einen CW9162 ist ap1g6b-k9w8-tar.153-3.JPN4.tar.
- Verhindern Sie, dass die betroffenen Access Points einem Controller beitreten, auf dem die gleiche Softwareversion ausgeführt wird wie in der beschädigten Partition. Fügen Sie daher eine CAPWAP-Zugriffskontrollliste auf den Switch-Port des Access Points hinzu, um zu verhindern, dass der Access Point erneut dem Controller beitritt. Eine Zugriffskontrollliste ähnlich der unten stehenden kann beispielsweise auf die Schnittstelle des Standardgateways des Access Points angewendet werden:
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
- Lassen Sie den Access Point fünf Mal mit dem beschädigten Image neu starten, und wechseln Sie anschließend zum funktionierenden Image in der Backup-Partition.
- Mit dem Befehl show cdp neighbor <interface> detail auf dem Switch des Access Points können Sie sehen, welche Codeversion sich in der Backup-Partition des Access Points befindet. (Wenn der Access Point das beschädigte Image bootet, wird CDP nicht an seinem Port angezeigt.)
- Sobald der Access Point das funktionierende Backup-Image erstellt hat, versucht er, dem Controller beizutreten, kann dies jedoch aufgrund der in Schritt 2 hinzugefügten ACL nicht mehr.
- SSH in jeden betroffenen APs (bei einer großen Anzahl von APs kann dieser Schritt über den WLAN-Poller automatisiert werden.)
- Laden Sie jetzt das gewünschte Image mit dem Befehl archive download auf die Backup-Partition des Access Points herunter:
archive download-sw /no-reload tftp://<IP-Adresse>/<apimage>
Oder
archive download-sw /no-reload sftp://<IP-Adresse>/<apimage>
Dadurch wird das beschädigte Image mit dem gültigen Image überschrieben. Wenn der Image-Download abgeschlossen ist, führen Sie Folgendes aus:
Test-Capwap-Neustart
Dadurch wird der CAPWAP-Prozess neu gestartet, sodass der Access Point das neu installierte Image erkennt.
- Entfernen Sie nun die ACL, und lassen Sie den Access Point dem Controller beitreten. Das Image wird nicht erneut heruntergeladen.
Wenn SSH auf den APs nicht aktiviert ist, die APs jedoch die Alt-Boot-Erweiterung aufweisen
- Stellen Sie sicher, dass die APs nicht versuchen, einem Controller beizutreten, auf dem die gleiche Softwareversion ausgeführt wird wie in der beschädigten Partition. Fügen Sie daher eine CAPWAP-Zugriffskontrollliste auf den Switch-Port des Access Points hinzu, um zu verhindern, dass der Access Point erneut dem Controller beitritt.
- Aktivieren Sie einen Controller, auf dem eine andere Softwareversion als die beschädigte Version des AP ausgeführt wird.
- Mit dem Befehl show cdp neighbor <interface> detail auf dem Switch des Access Points können Sie sehen, welche Codeversion sich in der Backup-Partition des Access Points befindet. (Während der AP das beschädigte Image bootet, wird CDP nicht an seinem Port angezeigt.)
- Wenn es nicht machbar ist, einen Controller mit der Backup-Version des AP zu installieren, dann (wenn 9800), stellen Sie zumindest eine Version mit Korrekturen für das Boot a Bad Image Syndrom und mit Alt-boot.
- Eine weitere Option wäre ein AireOS-Controller mit 8.10.190.0 oder höher, da CAPWAP-Downloads von AireOS nicht anfällig für Image-Beschädigungen sind.
- Richten Sie die Geräte so ein, dass die APs den alternativen Controller erkennen können, z. B. über die DHCP-Option 43, eine IP-Hilfsadresse oder DNS.
- Beachten Sie, dass der Access Point anfällig für das Herunterladen eines beschädigten Images ist, wenn auf dem alternativen Controller eine IOS-XE-Version ausgeführt wird, die sich von der Sicherung des Access Points unterscheidet. Wiederholen Sie diesen Vorgang daher für alle Access Points, die möglicherweise neu beschädigt wurden.
- Sobald die APs dem alternativen Controller beitreten, laden Sie das gewünschte Image auf die APs herunter:
- Positionieren Sie die gewünschten AP-Images auf einem TFTP- oder SFTP-Server, auf den die betroffenen APs zugreifen können. Die Access Point-Version 15.3(3)J*, die der gewünschten IOS-XE-Version zugeordnet ist, finden Sie in Tabelle 4 in der Kompatibilitätsmatrix. Laden Sie dann die entsprechenden Lightweight AP Software-Images für die betroffenen Access Point-Modelle von software.cisco.com herunter.
- Beispiel: Das AP-Image 17.9.5 für einen CW9162 ist ap1g6b-k9w8-tar.153-3.JPN4.tar.
- Aktivieren Sie ssh auf den betroffenen APs und ssh in jedem betroffenen AP (wenn eine große Anzahl von APs betroffen ist, kann dieser Schritt über den WLAN-Poller automatisiert werden.)
- Laden Sie jetzt das gewünschte Image mit dem Befehl archive download auf die Backup-Partition des Access Points herunter:
archive download-sw /no-reload tftp://<IP-Adresse>/<apimage>
Oder
archive download-sw /no-reload sftp://<IP-Adresse>/<apimage>
Dadurch wird das beschädigte Image mit dem gültigen Image überschrieben.
- Wenn der Image-Download abgeschlossen ist, führen Sie Folgendes aus:
Test-Capwap-Neustart
Dadurch wird der CAPWAP-Prozess neu gestartet, sodass der Access Point das neu installierte Image erkennt.
- Alternativ zum Ausführen von Archiv-Download-SW auf den APs können Sie die folgenden Controller-Befehle verwenden, um die APs zum Herunterladen des gewünschten Images von einem TFTP-Server zu bewegen:
- In IOS-XE: ap name APNAME tftp-downgrade ip.addr.of.server imagename.tar
- In AireOS: config ap tftp-downgrade ip.addr.of.server imagename.tar APNAME
- Überwachen Sie die TFTP-Serverprotokolle, um sicherzustellen, dass alle Access Points das Image erfolgreich heruntergeladen haben. Wenn der Download abgeschlossen ist, wird jeder Access Point neu geladen und führt das neu heruntergeladene Image aus.
- Entfernen Sie die in Schritt 1 installierte ACL, und lassen Sie die APs dem gewünschten Controller beitreten.
Wiederherstellung über Konsole
Wenn sich der Access Point in einer Boot-Schleife befindet und der Access Point nicht über die Alt-Boot-Erweiterung verfügt, muss der Access Point über die Konsole wiederhergestellt werden.
Für alle AP-Modelle: Ermitteln Sie, welche Bootpartition beschädigt ist.
Stellen Sie zunächst fest, welche Bootpartition beschädigt ist.
- Stellen Sie eine Verbindung zur AP-Konsole her.
- Achten Sie auf den Startversuch des Access Points, bis die Meldung angezeigt wird.
Überprüfen der Signatur fehlgeschlagen für /bootpart/part1/ramfs_data_cisco.cpio.lzma
Oder
Überprüfen der Signatur fehlgeschlagen für /bootpart/part2/ramfs_data_cisco.cpio.lzma
(Die Meldung kann "ramfs_data_cisco.squashfs" anstelle von "ramfs_data_cisco.cpio.lzma" lauten.)
- Notieren Sie sich, welche Partition, part1 oder part2, beschädigt ist.
Für AP-Modelle 9117, 9124, 9130, 9136
- Schalten Sie den Access Point aus und wieder ein, während er an der Konsole angeschlossen ist.
-
Wenn während des Systemstarts die ESC-Taste zum Beenden des Autostarts angezeigt wird, drücken Sie die Esc-Taste
-
Es sollte eine der folgenden Aufforderungen angezeigt werden:
(BTLDR) #
Oder
(u-boot)>
- Diese Befehle ausführen
(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
Für AP-Modelle 2802, 3802, 4800, 9105, 9115, 9120
- Schalten Sie den Access Point aus und wieder ein, während er an der Konsole angeschlossen ist.
-
Wenn während des Systemstarts die ESC-Taste zum Beenden des Autostarts angezeigt wird, drücken Sie die Esc-Taste
-
Dadurch gelangen Sie zu (u-boot)> prompt.
-
Diese Befehle ausführen
(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
Häufig gestellte Fragen
F1) Meine APs sind alle über eine schnelle, niedrige Latenz und eine verlustarme LAN-Verbindung mit dem 9800 verbunden. Muss ich den obigen Befehl weiterhin ausführen?
Dieses Problem wurde nur beim Upgrade von Access Points über eine WAN-Verbindung gemeldet.
F2) Ich habe neue einsatzbereite Access Points. Wie kann ich sie bereitstellen, ohne dass dieses Problem auftritt?
Neue Out-of-Box-APs, die Code über eine verlustbehaftete WAN-Verbindung herunterladen, sind ebenfalls anfällig für das Problem, wenn sie vor Dezember 2023 hergestellt wurden. Es wird empfohlen, diese APs zuerst mit einem lokalen WLC bereitzustellen.