Changement d'image IOS sur un équipement Cisco en utilisant xModem
Comment remettre une image d’IOS Cisco sur un switch ou un routeur Cisco en utilisant xModem en mode ROMmon, lorsque celle qui est actuellement sur l’équipement n'est plus valide : qu'elle soit corrompue ou nécessite une mise à jour ?
ROMmon ou ROM Monitor est un mini système d’exploitation, présent dans tous les équipements Cisco, qui a très peu de commandes disponibles. Il est cependant très utile lorsque l’image d’IOS Cisco doit être changée. xModem est un protocole de transfert de fichiers initialement créé pour la communication entre modems. Il permet de copier une image d’IOS Cisco en utilisant une connexion console.
Avant de commencer, vous devez vous connecter en console à l'équipement Cisco avec le logiciel ExtraPuTTy (sous Windows). En effet, en passant en mode ROMmon, toute connexion réseau est perdue. Il n'est donc pas possible de se connecter à l'équipement en Telnet ou SSH par exemple. La seule solution est de se connecter directement à l'équipement via son port console. ExtraPutty est un logiciel permettant de se connecter en telnet, ssh et console sur vos équipements. Il est basé sur le projet Putty, qu'il complète notamment avec les fonctionnalités de transferts xModem.
1. Passer en mode ROMmon sur l'équipement Cisco
Pour passer en mode ROMmon sur un switch ou un routeur Cisco, il existe plusieurs méthodes, à adapter selon l'équipement concerné. Vous devez avoir un accès physique à l'équipement afin de vous connecter directement sur son port console.
Démarrer un switch Cisco en ROMmon
Voici les méthodes pour démarrer votre équipement en mode ROMmon, selon les modèles.
La première méthode s'utilise, par exemple, sur le switch Cisco série 3560. Si le switch est sous tension, débranchez-le. Appuyez sur le bouton “Mode”, et maintenez cet appui tout en mettant sous tension l’équipement, pendant environs 15 secondes, jusqu'à ce que la LED "SYST" s'allume en vert. La LED “SYST” doit alors clignoter en vert lorsque vous relâchez l’appui.
La deuxième méthode s'utilise, par exemple, sur le switch série 2960. Si le switch est sous tension, débranchez-le. Appuyez sur le bouton “Mode”, et maintenez cet appui tout en mettant sous tension l’équipement jusqu'à ce que la LED "SYST" clignote en orange puis se fixe sur la couleur vert. La LED “SYST” doit alors clignoter en vert lorsque vous relâchez l’appui.
La troisième méthode s'utilise, par exemple, sur le switch série 2940. Si le switch est sous tension, débranchez-le. Appuyez sur le bouton “Mode”, et maintenez cet appui tout en mettant sous tension l’équipement, pendant environs 5 secondes, jusqu'à ce que la LED "STAT" s'éteigne. La LED “SYST” doit alors clignoter en orange lorsque vous relâchez l’appui.
Démarrer un routeur Cisco en ROMmon
Pour les tous routeurs Cisco, il faut d’abord éteindre votre routeur. Mettez-le sous tension puis, depuis votre PC, entrez au clavier CTRL+PAUSE. Maintenez l’appui sur ces touches jusqu’à ce que le terminal affiche les mêmes données que ci-dessous.
System Bootstrap, Version 12.2(8r) [cmong 8r], RELEASE SOFTWARE (fc1)
Copyright (c) 2003 by cisco Systems, Inc.
PC = 0xfff0ac3c, Vector = 0x500, SF = 0x650127c0
C2600 platform with 262144 Kbytes of main memory
PC = 0xfff0ac3c, Vector = 0x500, SF = 0x800046ac
monitor: command "boot" aborted due to user interrupt
rommon 1 >
2. Confirmation de la corruption de l’image d’IOS Cisco de l'équipement (dans le cas d'une corruption d'image)
Lorsque vous accédez à la console de l’équipement, la mémoire flash s’initialise puis, en temps normal, l’image d’IOS Cisco est chargée. Cependant, si l’image est corrompue, un message d’erreur de ce type va s'afficher :
Boot Sector Filesystem (bs) installed, faid: 2
Base ethernet MAC Address: 00:1c:f9:a5:5b:50
Xmodem file system is available.
The password-recovery mecanism is enabled.
Initializing Flash...
flashfs[0]: sector 118, block 63 chexksum (0xc8eb != 0xe2f0)
flashfs[0]: inconsistent sector list, failed 4, parent_fileid 0
flashfs[0]: 6 files, 2 directories
flashfs[0]: 0 orphaned files, 0 orphaned directories
flashfs[0]: Total bytes: 15998976
flashfs[0]: Bytes used: 335872
flashfs[0]: Bytes available: 15663104
flashfs[0]: flashfs fsck took 22 seconds.
...done Initializing Flash.
done.
Loading ""... : no such device<
Error loading ""
Interrupt within 5 seconds to abort boot process.
Boot process failed...
The system is unable to boot automatically. The BOOT
environment variable needs to be set to a bootable image.
Si ce n’est pas le cas, le problème ne vient pas de l’image. Vous devez alors rechercher la source du problème pour pouvoir dépanner le switch.
Si c’est le cas, il va falloir lancer une procédure de récupération de l’image d’IOS Cisco sur votre équipement selon les étapes suivantes.
3. Télécharger l’image d’IOS Cisco correspondante sur cisco.com
Pour pouvoir télécharger l’image d’IOS Cisco, il faut disposer d’un compte Cisco et se connecter. Si vous n’en disposez pas, vous ne pourrez pas le faire.
Si vous en avez un, il vous suffit de retrouver le modèle de votre switch dans la liste et de cliquer dessus.
Cliquez maintenant sur “IOS Software” puis choisissez l’image qui correspond au mieux à vos attentes et cliquez sur “Download”.
Si le fichier a un nom long, il est préférable de le renommer avec un nom plus simple. Cela permet d’éviter les erreurs d’écriture du nom de fichier en ligne de commande lors de l’étape suivante.
4. Copier l’image d’IOS Cisco dans la mémoire flash de l'équipement
La première étape est de changer la vitesse en bits/seconde pour que la copie se fasse plus rapidement. Pour ce faire, entrez la commande suivante :
set BAUD 115200
En faisant cela, des caractères s’affichent sur la console. Cela est dû au fait que, lorsque vous avez configuré le terminal avec ExtraPuTTy, la vitesse dans le champ “Speed” était celle par défaut, c’est-à-dire 9600.
switch: set BAUD 115200
@% ' %222%X#22222 ##
X%-%###2-###2%=##22# ' ###%M#%
Vous devez donc fermer le terminal puis le rouvrir en entrant dans le champ “Speed” la valeur “115200”.
En cliquant sur “Open”, la console du switch s’ouvre et vous pouvez constater que vous pouvez de nouveau entrer des commandes.
switch:
Vous pouvez maintenant lancer le processus de copie du fichier contenant l’image d‘IOS Cisco dans la mémoire flash de votre switch. Pour cela, entrez la commande suivante :
copy xmodem: flash:<nom_fichier_image>
switch: copy xmodem: flash:switch_c3560_v12_2_55.bin
Begin the Xmodem or Xmodem-1K transfer now...
CCCCCCCCCCCCC
Dans la barre de tâche, cliquez successivement sur
Files Transfer > Xmodem > Send
puis sélectionnez le fichier contenant l’image d’IOS Cisco de votre switch.
La fenêtre suivante s’ouvre. Il ne vous reste plus qu’à attendre que la copie se fasse.
Lorsque la copie est terminée et réalisée avec succès, il doit être écrit en console les informations suivantes :
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . .
File "xmodem:" successfully copied to "flash:switch_c3560_v12_2_55.bin"
switch:
5. Redémarrer la mémoire flash de l'équipement Cisco
Pour terminer la récupération, il faut entrer la commande suivante pour démarrer la mémoire flash de votre équipement :
boot flash:<nom_fichier_image>
switch : boot flash:switch_c3560_v12_2_55.bin
Loading "flash:switch_c3560_v12_2_55.bin"...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Si ce démarrage est réalisé avec succès, vous devez pouvoir passer en mode normal. Passez alors en mode configuration en entrant en commande :
enable
configure terminal
La configuration du switch, pour qu’il fonctionne avec le nouvel IOS, se fait au moyen de la commande suivante :
boot system flash:<nom_fichier_image>
Enregistrez alors les modifications apportées en retournant en mode privilégié en tapant “exit” puis en entrant la commande :
copy running-config startup-config
En résumé, voici toutes les commandes à utiliser pour changer d’image IOS sur un switch Cisco en utilisant xModem
- Dans le mode ROMmon
switch: set BAUD 115200
switch: copy xmodem: flash:<nom_fichier_image>
switch: boot flash:<nom_fichier_image>
- Dans le mode normal
>en
#conf t
(config)#boot system flash:<nom_fichier_image>
(config)#exit
#copy running-config startup-config
Dans la même catégorie
- Configuration de la redondance de routeurs Cisco avec VRRP ou HSRP
- Configuration réseau d’un switch Cisco : mettre une adresse IP et une default gateway
- Synchronisation d'un équipement Cisco avec un serveur NTP
- Copie de l'image IOS d'un équipement Cisco vers un serveur TFTP
- Modification de l'image IOS d'un équipement Cisco avec un serveur TFTP
Sur les même mots clés
- Configuration de la redondance de routeurs Cisco avec VRRP ou HSRP
- Réparation d’une image flash défectueuse sur un switch HP ProCurve en mode ROMmon
- Configuration réseau d’un switch Cisco : mettre une adresse IP et une default gateway
- Modification de l'image d'une borne WiFi Cisco en mode ROMmon avec un serveur TFTP
- Synchronisation d'un équipement Cisco avec un serveur NTP
Lorsque que vous utilisez Linux, seule la partie "4. Copier l'image d'IOS Cisco dans la mémoire flash de l'équipement" change.
Lorsque vous changez la vitesse en bits/seconde, vous devez, comme sous Windows, rouvrir le logiciel utilisé pour accéder à l'équipement Cisco en console. Dans votre cas, vous utilisez probablement le logiciel Picocom.
La première chose à faire est de fermer Piccom. Pour ce faire, entrez au clavier successivement les commandes suivantes :
CTRL+A
CTRL+Z
Q
Ouvrez alors de nouveau le logiciel avec la bonne vitesse en bits/seconde grâce à la commande :
picocom -b 115200
Par exemple, la commande suivante peut être entrée :
picocom dev/ttyUSB0 -b 115200
Une fois l'accès au terminal de l'équipement Cisco retrouvé, entrez la même commande que sous Windows, c'est-à-dire :
copy xmodem: flash:
Entrez alors au clavier successivement les commandes suivantes :
CTRL+A
CTRL+Z
S
Il faut maintenant sélectionner xModem, puis l'image IOS que vous souhaitez télécharger au moyen de la barre Espace de votre clavier. Le transfert démarre au moment où vous appuyez sur Entrée.
NB N'oubliez pas de remettre la vitesse en bits/seconde a 9600 à la fin de la manipulation.