Ce document aide à dépanner un système qui ne répond pas. Le document discute également de la cause, et comment vous pouvez éliminer le problème.
Un routeur semble cesser de fonctionner lorsque le système ne répond pas à la console ou aux requêtes envoyées à partir du réseau (par exemple, Telnet, SNMP (Simple Network Management Protocol), etc.). Ces problèmes peuvent être classés en deux grandes catégories :
Lorsque la console ne répond pas.
Lorsque le trafic ne passe pas.
Aucune exigence spécifique n'est associée à ce document.
Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :
Toutes les versions du logiciel Cisco IOS®
Tous les routeurs Cisco
Ce document ne s'applique pas aux commutateurs Cisco Catalyst ni aux plates-formes MGX.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Pour plus d'informations sur les conventions utilisées dans ce document, reportez-vous à Conventions relatives aux conseils techniques Cisco.
Les problèmes de console se produisent lorsque le routeur ne répond plus aux entrées sur le port de console. Si la console ne répond pas, cela signifie qu'un processus de priorité élevée empêche le pilote de la console de répondre à l'entrée.
Vérifiez la connectivité des câbles.
Vérifiez que l'alimentation est sous tension.
Vérifiez l'état des DEL du routeur. Si tous les voyants sont éteints, il s'agit très probablement d'un problème d'alimentation du routeur.
Si le trafic circule toujours via le routeur :
Déconnectez les interfaces réseau et vérifiez si le routeur répond. Souvent, le routeur suppose qu'il fait quelque chose de trop important pour les sessions d'exécution de service.
Vous pouvez également tenter de reproduire le problème après avoir émis ces commandes :
Sur les routeurs Cisco 7200 et 7500 :
configure terminal scheduler allocate 3000 1000 ^Z
La commande scheduler allocate garantit le temps CPU pour les processus de faible priorité. Il met un temps maximal alloué à la commutation rapide (3 000 microsecondes - usec) et à la commutation de processus (1 000 usec) par contexte d'interruption de réseau.
Sur toutes les autres plates-formes, utilisez :
configure terminal scheduler interval 500 ^Z
La commande scheduler interval permet aux processus de faible priorité d'être planifiés tous les 500 utilisateurs, et permet ainsi à certaines commandes d'être tapées même si l'utilisation du CPU est à 100%.
Pour plus d'informations sur ces commandes, consultez Basic System Management Commands dans le document Cisco IOS Software Command Reference.
Si la console ne répond pas parce que l'utilisation CPU du routeur est élevée, il est important de trouver et de corriger la cause de l'utilisation CPU élevée. Par exemple, si le trafic IP commuté par processus cause des problèmes, alors ceci est reflété dans le processus "IP Input" dans le résultat de la commande show processes cpu. Dans cette situation, il est important de collecter le résultat de show interfaces, show interfaces stat, et éventuellement de show processes pour diagnostiquer plus en détail le problème. Pour résoudre le problème, vous devez réduire la quantité de trafic IP qui est commuté par processus. Consultez Dépannage de l'utilisation élevée du CPU sur les routeurs Cisco pour plus d'informations.
Une autre cause possible d'un blocage apparent est l'échec de l'allocation de mémoire, c'est-à-dire que soit le routeur a utilisé toute la mémoire disponible, soit la mémoire a été fragmentée en si petits morceaux que le routeur ne peut pas trouver un bloc disponible utilisable. Pour plus d'informations, consultez Dépannage des problèmes de mémoire.
Le routeur peut cesser de répondre en raison d'un problème lié à la sécurité, tel qu'un ver ou un virus. Cela est particulièrement susceptible d’être la cause si aucune modification récente n’a été apportée au réseau, telle qu’une mise à niveau de l’IOS du routeur. Habituellement, une modification de la configuration, comme l'ajout de lignes supplémentaires à vos listes d'accès peut atténuer les effets de ce problème. La page web Cisco Security Advisories and Notices contient des renseignements concernant le diagnostic des causes les plus probables et les solutions de rechange applicables.
Pour des informations supplémentaires, référez-vous à :
Si le routeur semble se figer pendant le processus de démarrage, cela peut être dû à une fonction mal configurée ou à un défaut logiciel d’une fonction configurée. Cela est souvent évident lorsqu'un message d'avertissement ou d'erreur apparaît sur la console immédiatement avant que le routeur ne se bloque.
Pour contourner ce problème, démarrez le routeur en mode ROMMON, contournez la configuration stockée, puis reconfigurez-la. Procédez comme suit :
Connectez un terminal ou un PC avec émulation de terminal au port pour console du routeur.
Utilisez les paramètres de terminal suivants :
Débit de 9 600 bauds
Aucune parité
8 bits de données
1 bit d'arrêt
Aucun contrôle de flux
Redémarrez le routeur et accédez à ROMMON en appuyant sur break sur le clavier du terminal dans les 60 secondes suivant la mise sous tension. Si la séquence d'interruption ne fonctionne pas, consultez Combinaisons de séquences de touches d'interruption standard pendant la récupération de mot de passe pour d'autres combinaisons de touches.
Remplacez le registre de configuration par 0x2142, puis réinitialisez le routeur. Pour cela, exécutez la commande confreg 0x2142 à l'invite rommon 1>. Tapez ensuite reset à l'invite rommon 2>. Le routeur démarre alors à partir de la mémoire Flash sans charger la configuration.
Tapez no après chaque question de configuration ou appuyez sur Ctrl-C pour ignorer la procédure de configuration initiale.
Tapez enable à l'invite Router>.
Vous êtes en mode enable et voyez l'invite Router#.
Vous pouvez maintenant enregistrer une configuration vide (toutes les commandes supprimées). Émettez la commande copy running-config startup-config. Vous pouvez également modifier la configuration si vous pensez qu'une commande donnée est à l'origine du problème. Pour ce faire, émettez la commande copy startup-config running-config. Tapez ensuite configure terminal, et apportez les modifications.
Lorsque vous avez terminé, redéfinissez le registre de configuration sur 0x2102. Pour cela, tapez config-register 0x2102. Émettez la commande copy running-config startup-config pour valider les modifications.
Si le trafic ne traverse pas le routeur :
Si le trafic ne traverse plus le routeur et que la console ne répond plus, le système rencontre probablement un problème. Généralement, cela signifie que le routeur est pris dans une boucle continue ou coincé à une fonction. Ceci est presque toujours causé par un bogue dans le logiciel. Installez la dernière version de maintenance de la formation logicielle Cisco IOS que vous exécutez actuellement.
Avant de créer une demande de service avec le centre d'assistance technique Cisco, obtenez une trace de pile à partir du moniteur ROM. L'obtention de traces de pile lors d'un problème permet de déterminer où dans le code le routeur est en boucle ou bloqué.
Des problèmes de trafic se produisent lorsque la console reste réactive mais que le trafic ne passe pas par le routeur. Dans ce cas, une partie du trafic ou des interfaces ne répondent pas. Ce comportement peut être causé par une variété de causes différentes. Lorsque ce problème se produit, des informations peuvent être collectées à partir du routeur via le port de console. Les causes de ces problèmes de trafic peuvent aller d’erreurs sur les interfaces à des problèmes logiciels et matériels.
Problème de routage - Des modifications apportées à la topologie du réseau ou à la configuration de certains routeurs peuvent avoir affecté les tables de routage.
High CPU Utilization : exécutez la commande show process cpu. Si le processeur est supérieur à 95 %, les performances du routeur peuvent être affectées et les paquets peuvent être retardés ou abandonnés. Référez-vous à Dépannage de l'utilisation élevée du CPU sur les routeurs pour plus d'informations.
Interface désactivée : l'une des interfaces du routeur peut être désactivée. Plusieurs événements peuvent en être la cause, qui peuvent aller d’une commande de configuration incorrecte à une défaillance matérielle de l’interface ou du câble. Si certaines interfaces apparaissent désactivées lorsque vous émettez une commande show interfaces, essayez d'en trouver la cause.
Interfaces bloquées - Il s'agit d'un cas particulier de fuites de mémoire tampon qui provoque le remplissage de la file d'attente d'entrée d'une interface jusqu'au point où elle ne peut plus accepter de paquets. Rechargez le routeur. Cela libère cette file d'attente d'entrée et restaure le trafic jusqu'à ce que la file d'attente soit à nouveau pleine. Cette opération peut prendre de quelques secondes à quelques semaines, en fonction de la gravité de la fuite.
La façon la plus simple d'identifier une interface coincée est d'émettre une commande show interfaces, et de rechercher quelque chose de similaire à ceci :
Output queue 0/40, 0 drops; input queue 76/75, 27 drops
Voir Dépannage des fuites de mémoire tampon pour des directives détaillées et des exemples.
K-trace fait référence à la procédure utilisée pour obtenir une trace de pile du routeur à partir du moniteur ROM. Sur les routeurs avec un code de moniteur ROM plus ancien, une trace de pile est obtenue avec la commande k. Sur les routeurs qui exécutent du code moniteur ROM plus récent, la commande stack peut également être utilisée.
Effectuez ces étapes pour obtenir des traces de pile d'un routeur qui ne répond pas :
Activez la séquence d'interruption. Pour cela, modifiez la valeur du registre de configuration. La valeur du huitième bit doit être définie sur zéro pour que le saut ne soit pas ignoré. Une valeur de 0x2002 fonctionne.
Router#configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)#config-register 0x2002
Rechargez le routeur de sorte que la nouvelle valeur du registre de configuration soit utilisée.
Envoyez la séquence d'interruption lorsque le problème se produit. L'invite du moniteur ROM ">" ou "rommon 1 >" doit s'afficher.
Capturez une trace de pile. Pour cela, collectez le résultat des commandes k 50 ou stack 50. Ajoutez 50 à la commande pour imprimer une trace de pile plus longue.
Émettez la commande c ou cont pour continuer.
Répétez les trois dernières étapes plusieurs fois pour vous assurer que plusieurs points d'une boucle continue ont été capturés.
Après avoir obtenu plusieurs traces de pile, redémarrez le routeur pour récupérer de l'état bloqué.
Voici un exemple de cette procédure :
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
Répétez cette procédure plusieurs fois en cas de problème système pour collecter plusieurs instances de la trace de pile.
Lorsqu’un routeur ne répond pas, il s’agit presque toujours d’un problème logiciel. Dans ce cas, collectez autant d'informations que possible, y compris la trace de la pile, avant d'ouvrir une demande de service TAC. Il est également important d'inclure le résultat des commandes show version, show run et show interfaces.
Si vous ouvrez une demande de service TAC, veuillez joindre les informations suivantes à votre demande de dépannage des blocages de routeur : |
Remarque : si la console répond, ne rechargez pas manuellement le routeur ou ne le mettez pas hors tension puis sous tension avant de collecter les informations ci-dessus, sauf si cela est nécessaire pour dépanner les blocages du routeur, car cela peut entraîner la perte d'informations importantes nécessaires pour déterminer la cause première du problème. |
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
02-Aug-2006 |
Première publication |