Dieses Dokument unterstützt Sie bei der Fehlerbehebung in einem System, das nicht reagiert. In diesem Dokument wird auch die Ursache und wie Sie das Problem beheben können beschrieben.
Ein Router funktioniert anscheinend nicht mehr, wenn das System nicht auf die Konsole oder vom Netzwerk gesendete Anfragen reagiert (z. B. Telnet, Simple Network Management Protocol (SNMP) usw.). Diese Probleme lassen sich grob in zwei Kategorien einteilen:
Wenn die Konsole nicht reagiert.
Wenn kein Datenverkehr durchgeleitet wird.
Es gibt keine spezifischen Anforderungen für dieses Dokument.
Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:
Alle Cisco IOS®-Softwareversionen
Alle Cisco Router
Dieses Dokument gilt nicht für Cisco Catalyst Switches oder MGX-Plattformen.
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netz Live ist, überprüfen Sie, ob Sie die mögliche Auswirkung jedes möglichen Befehls verstehen.
Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps von Cisco zu Konventionen).
Konsolenprobleme treten auf, wenn der Router nicht mehr auf Eingaben am Konsolenport reagiert. Wenn die Konsole nicht reagiert, bedeutet dies, dass ein Prozess mit hoher Priorität verhindert, dass der Konsolentreiber auf Eingaben reagiert.
Überprüfen Sie die Kabelverbindung.
Überprüfen Sie, ob das Netzteil eingeschaltet ist.
Überprüfen Sie den Status der Router-LED. Wenn alle LEDs ausfallen, liegt wahrscheinlich ein Problem mit der Stromversorgung des Routers vor.
Wenn der Datenverkehr weiterhin durch den Router fließt:
Trennen Sie die Netzwerkschnittstellen, und prüfen Sie, ob der Router reagiert. Oft geht der Router davon aus, dass er für Service-Executive-Sitzungen etwas zu Wichtiges tut.
Sie können das Problem auch reproduzieren, nachdem Sie die folgenden Befehle ausgegeben haben:
Für die Cisco Serien 7200 und 7500:
configure terminal scheduler allocate 3000 1000 ^Z
Der Scheduler-Befehl allokiert die CPU-Zeit für Prozesse mit niedriger Priorität. Es legt eine maximale Zeit für schnelles Switching (3000 Mikrosekunden - usec) und Prozess-Switching (1000 usec) pro Netzwerk-Interrupt-Kontext fest.
Verwenden Sie auf allen anderen Plattformen:
configure terminal scheduler interval 500 ^Z
Der Scheduler-Befehl interval ermöglicht die Planung von Prozessen mit niedriger Priorität alle 500 µs. Dadurch können einige Befehle auch dann eingegeben werden, wenn die CPU-Auslastung bei 100% liegt.
Weitere Informationen zu diesen Befehlen finden Sie unter Grundlegende Befehle zur Systemverwaltung in der Cisco IOS Software-Befehlsreferenz.
Wenn die Konsole nicht reagiert, weil die CPU-Auslastung des Routers hoch ist, muss die Ursache für die hohe CPU-Auslastung gefunden und behoben werden. Wenn beispielsweise prozessgesteuerter IP-Datenverkehr Probleme verursacht, spiegelt sich dies im Prozess "IP Input" in der Ausgabe des Befehls show processes cpu wider. In dieser Situation ist es wichtig, die Ausgabe von show interfaces zu sammeln, show interfaces stat und möglicherweise show Prozesse zur weiteren Diagnose des Problems. Um das Problem zu beheben, müssen Sie den IP-Datenverkehr, der über Prozess-Switching übertragen wird, reduzieren. Weitere Informationen finden Sie unter Troubleshooting High CPU Utilization on Cisco Routers (Fehlerbehebung bei hoher CPU-Auslastung auf Cisco Routern).
Eine weitere mögliche Ursache für einen offensichtlichen Speicherabsturz ist ein Fehler bei der Speicherzuweisung, d. h. entweder der Router hat den gesamten verfügbaren Speicher verwendet oder der Speicher wurde in so kleine Teile zerlegt, dass der Router keinen verwendbaren verfügbaren Block finden kann. Weitere Informationen finden Sie unter Fehlerbehebung bei Speicherproblemen.
Der Router reagiert möglicherweise aufgrund eines sicherheitsrelevanten Problems, z. B. eines Wurms oder eines Virus, nicht mehr. Dies ist besonders wahrscheinlich der Grund, wenn in letzter Zeit keine Änderungen am Netzwerk vorgenommen wurden, z. B. ein Router-IOS-Upgrade. In der Regel können Konfigurationsänderungen, z. B. das Hinzufügen zusätzlicher Leitungen zu Ihren Zugriffslisten, die Auswirkungen dieses Problems mildern. Die Seite Cisco Security Advisories and Notices (Cisco Sicherheitsempfehlungen und -benachrichtigungen) enthält Informationen zur Erkennung der wahrscheinlichsten Ursachen und der konkretesten Problemumgehungen.
Weitere Informationen finden Sie unter:
Wenn sich der Router während des Bootvorgangs scheinbar aufhängt, kann dies auf eine falsch konfigurierte Funktion oder einen Softwarefehler in einer konfigurierten Funktion zurückzuführen sein. Dies wird häufig durch das Auftreten einer Warnung oder Fehlermeldung auf der Konsole unmittelbar vor dem Einfrieren des Routers deutlich.
Booten Sie den Router in ROMMON, und umgehen Sie die gespeicherte Konfiguration, um dieses Problem zu umgehen. Konfigurieren Sie sie anschließend erneut. Führen Sie diese Schritte aus:
Schließen Sie ein Terminal bzw. einen PC mit Terminal-Emulation an den Konsolen-Port des Routers an.
Verwenden Sie folgende Terminaleinstellungen:
Baudrate 9600
Keine Parität
8 Daten-Bit
1 Stopp-Bit
Keine Flusskontrolle
Starten Sie den Router neu, und brechen Sie innerhalb von 60 Sekunden nach dem Einschalten in ROMMON ein, indem Sie break auf der Terminaltastatur drücken. Wenn die Unterbrechungssequenz nicht funktioniert, finden Sie weitere Tastenkombinationen unter Standardkombinationen für die Unterbrechungsschlüsselsequenz während der Kennwortwiederherstellung.
Ändern Sie das Konfigurationsregister in 0x2142, und setzen Sie dann den Router zurück. Führen Sie dazu den Befehl confreg 0x2142 an der Eingabeaufforderung rom 1> aus. Geben Sie dann reset an der Eingabeaufforderung von ROM 2> ein. Dadurch wird der Router von Flash gebootet, ohne die Konfiguration zu laden.
Geben Sie nach jeder Einrichtungsfrage no ein, oder drücken Sie Strg+C, um die Ersteinrichtung zu überspringen.
Geben Sie enable bei der Eingabeaufforderung Router> ein.
Sie befinden sich im privilegierten Modus und sehen die Eingabeaufforderung Router#.
Jetzt können Sie eine leere Konfiguration speichern (alle Befehle entfernt). Geben Sie den Befehl copy running-config startup-config ein. Wenn Sie vermuten, dass ein bestimmter Befehl das Problem verursacht, können Sie die Konfiguration auch bearbeiten. Führen Sie dazu den Befehl copy startup-config running-config aus. Geben Sie dann configure terminal ein, und nehmen Sie die Änderungen vor.
Wenn Sie fertig sind, ändern Sie das Konfigurationsregister wieder in 0x2102. Geben Sie dazu config-register 0x2102 ein. Geben Sie den Befehl copy running-config startup-config ein, um die Änderungen zu übernehmen.
Wenn der Datenverkehr nicht durch den Router fließt:
Wenn der Datenverkehr nicht mehr durch den Router geleitet wird und die Konsole nicht reagiert, liegt wahrscheinlich ein Problem mit dem System vor. Im Allgemeinen bedeutet dies, dass der Router in einer kontinuierlichen Schleife gefangen ist oder an einer Funktion feststeckt. Dies wird fast immer durch einen Fehler in der Software verursacht. Installieren Sie die neueste Wartungsversion des Cisco IOS-Software-Zugs, den Sie derzeit verwenden.
Bevor Sie eine Serviceanfrage beim Cisco TAC erstellen, holen Sie sich eine Stack-Nachverfolgung vom ROM Monitor. Durch das Abrufen von Stack-Ablaufverfolgungen während eines Problems kann festgestellt werden, wo im Code der Router in einer Schleife steckt.
Datenverkehrsprobleme treten auf, wenn die Konsole reagiert, der Datenverkehr jedoch nicht über den Router geleitet wird. In diesem Fall reagiert ein Teil des Datenverkehrs oder ein Teil der Schnittstellen nicht. Dieses Verhalten kann durch verschiedene Ursachen verursacht werden. Wenn dieses Problem auftritt, können Informationen vom Router über den Konsolen-Port gesammelt werden. Die Ursachen für diese Datenverkehrsprobleme können von Fehlern an den Schnittstellen bis hin zu Software- und Hardwareproblemen reichen.
Routing-Problem - Änderungen in der Netzwerktopologie oder in der Konfiguration einiger Router können sich auf die Routing-Tabellen ausgewirkt haben.
Hohe CPU-Auslastung - Geben Sie den Befehl show process cpu ein. Wenn die CPU zu mehr als 95 % ausgelastet ist, kann dies die Leistung des Routers beeinträchtigen, und Pakete können verzögert oder verworfen werden. Weitere Informationen finden Sie unter Troubleshooting High CPU Utilization on Routers (Fehlerbehebung bei hoher CPU-Auslastung auf Routern).
Schnittstelle ausgefallen - Eine der Router-Schnittstellen kann ausgefallen sein. Dies kann durch mehrere Ereignisse verursacht werden, die von einem falschen Konfigurationsbefehl bis zu einem Hardwarefehler der Schnittstelle oder des Kabels reichen können. Wenn bei der Ausgabe des Befehls show interfaces einige Schnittstellen ausfallen, versuchen Sie herauszufinden, was die Ursache war.
Verkeilte Schnittstellen - Dies ist ein spezieller Fall von Pufferlecks, die dazu führen, dass sich die Eingangswarteschlange einer Schnittstelle bis zu dem Punkt füllt, an dem sie keine Pakete mehr annehmen kann. Laden Sie den Router neu. Dadurch wird diese Eingabewarteschlange freigegeben und der Datenverkehr wiederhergestellt, bis die Warteschlange wieder voll ist. Dies kann je nach Schwere des Lecks zwischen ein paar Sekunden und ein paar Wochen dauern.
Der einfachste Weg, eine verkeilte Schnittstelle zu identifizieren, besteht darin, den Befehl show interfaces auszugeben und nach etwas Ähnlichem zu suchen:
Output queue 0/40, 0 drops; input queue 76/75, 27 drops
Detaillierte Richtlinien und Beispiele finden Sie unter Troubleshooting Buffer Leaks.
K-trace bezieht sich auf das Verfahren, mit dem vom ROM Monitor eine Stapelüberwachung vom Router abgerufen wird. Bei Routern mit älterem ROM-Überwachungscode wird mit dem Befehl k eine Stapelüberwachung erstellt. Auf Routern, auf denen aktuellerer ROM Monitor-Code ausgeführt wird, kann auch der Stack-Befehl verwendet werden.
Gehen Sie wie folgt vor, um Stack-Traces von einem Router zu erhalten, der nicht antwortet:
Aktivieren Sie die Unterbrechungssequenz. Ändern Sie dazu den Wert des Konfigurationsregisters. Der achte Bitwert muss auf Null gesetzt werden, damit Break nicht ignoriert wird. Ein Wert von 0x2002 funktioniert.
Router#configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)#config-register 0x2002
Laden Sie den Router neu, sodass der neue Konfigurationsregisterwert verwendet wird.
Senden Sie die Unterbrechungssequenz, wenn das Problem auftritt. Die ROM Monitor-Aufforderung ">" oder "ROM 1 >" muss angezeigt werden.
Erfassen einer Stapelüberwachung Sammeln Sie dazu die Ausgabe der Befehle k 50 oder stack 50. Fügen Sie 50 zum Befehl hinzu, um eine längere Stapelüberwachung zu drucken.
Führen Sie den Befehl c oder cont aus, um fortzufahren.
Wiederholen Sie die letzten drei Schritte mehrmals, um sicherzustellen, dass mehrere Punkte in einer Endlosschleife erfasst wurden.
Nachdem Sie mehrere Stack-Traces erhalten haben, starten Sie den Router neu, um den angehaltenen Zustand wiederherzustellen.
Dies ist ein Beispiel für dieses Verfahren:
User break detected at location 0x80af570 rommon 1 > k 50 Stack trace: PC = 0x080af570 Frame 00: FP = 0x02004750 RA = 0x0813d1b4 Frame 01: FP = 0x02004810 RA = 0x0813a8b8 Frame 02: FP = 0x0200482c RA = 0x08032000 Frame 03: FP = 0x0200483c RA = 0x040005b0 Frame 04: FP = 0x02004b34 RA = 0x0401517a Frame 05: FP = 0x02004bf0 RA = 0x04014d9c Frame 06: FP = 0x02004c00 RA = 0x040023d0 Frame 07: FP = 0x02004c68 RA = 0x04002e9e Frame 08: FP = 0x02004c78 RA = 0x040154fe Frame 09: FP = 0x02004e68 RA = 0x04001fc0 Frame 10: FP = 0x02004f90 RA = 0x0400c41e Frame 11: FP = 0x02004fa4 RA = 0x04000458 Suspect bogus FP = 0x00000000, aborting rommon 2 > cont
Wiederholen Sie diesen Vorgang mehrmals, wenn ein Systemproblem auftritt, um mehrere Instanzen der Stapelüberwachung zu sammeln.
Reagiert ein Router nicht, handelt es sich fast immer um ein Softwareproblem. Sammeln Sie in diesem Fall so viele Informationen wie möglich, einschließlich Stack-Nachverfolgung, bevor Sie eine TAC-Serviceanfrage stellen. Es ist auch wichtig, die Ausgabe der Befehle show version, show run und show interfaces einzuschließen.
Wenn Sie ein TAC Service Request erstellen, fügen Sie bitte die folgenden Informationen zu Ihrer Anfrage für die Behebung von Problemen mit Routerhängen bei: |
Hinweis: Wenn die Konsole reagiert, laden Sie den Router vor dem Erfassen der oben genannten Informationen nicht manuell neu oder schalten Sie ihn aus, es sei denn, dies ist erforderlich, um Probleme mit dem Router zu beheben, da dies dazu führen kann, dass wichtige Informationen verloren gehen, die zur Bestimmung der Ursache des Problems erforderlich sind. |
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
02-Aug-2006 |
Erstveröffentlichung |