Modification de l'image IOS d'un équipement Cisco avec un serveur TFTP

Dans : Réseau Cisco

Que ce soit pour des questions de fonctionnalités ou de sécurité, il est souvent utile de mettre à jour l'image système IOS d'un équipement Cisco. Le moyen le plus répandu est d'utiliser le protocole tftp, implémenté sur tous les équipements Cisco. Ce guide a pour but d’indiquer comment changer une image IOS d’un équipement Cisco au moyen d’un serveur TFTP (Trivial File Transport Protocol).

TFTP est un protocole qui fonctionne en UDP sur le port 69. Il permet de transférer des fichiers, comme une image IOS, de manière simple en utilisant une connexion réseau. Il est utile, dans notre cas, pour la copie d'une nouvelle image IOS sur un équipement.

Avant de commencer, il faut mettre en place un serveur TFTP sur votre PC.

1. Vérification de la version actuelle de l’image IOS de l’équipement Cisco

Tout d'abord, il faut vous connecter en console, réaliser une connexion Telnet ou une connexion SSH à votre équipement Cisco.

Pour vérifier la version de l’équipement Cisco, entrez en mode privilégié grâce à la commande :

enable

puis entrez la commande suivante :

show version

Vous pouvez alors connaître la version actuelle d’IOS qu’utilise votre équipement.

Switch>enable
Password:
Switch#show version
Cisco Internetwork Operating System Software
IOS (tm) C2950 Software (C2950-I6K2L2Q4-M), Version 12.1(22)EA11, RELEASE SOFTWARE (fc2)
Copyright (c) 1986-2008 by cisco Systems, Inc.
Compiled Tue 08-Jan-08 11:12 by amvarma
Image text-base: 0x80010000, data-base: 0x80680000

ROM: Bootstrap program is C2950 boot loader

Dans notre exemple, nous utilisons un switch série 2950 qui utilise la version 12.1(22)EA11.

Si l’image est bien configurée sur l’équipement, vous pouvez voir si la version correspond en regardant son image IOS, en entrant la commande suivante :

dir flash:

On voit ici que le fichier contenant l’image a pour nom c2950-i6k2l2q4-mz.121-22.EA11.bin, ce qui correspond bien à la version vue à l'aide de la commande précédente.

Switch#dir flash:
Directory of flash:/

2

-rwx

109

Mar 01 1993 00:01:40

+00:00

info
3-rwx317Oct 04 1993 20:25:07+00:00env_vars
4-rwx3721126Oct 04 1993 20:24:29+00:00c2950-16k2l2q4-mz.121-22.EA11.bin
5-rwx616Mar 01 1993 00:02:11+00:00vlan.dat.renamed
6-rwx44Mar 01 1993 00:34:57+00:00private-config.text.renamed
7-rwx3Mar 01 1993 00:44:40+00:00blop.txt
8-rwx1328Mar 01 1993 01:53:30+00:00config.text
362-rwx109Mar 01 1993 00:04:11+00:00info.ver
9-rwx976Mar 01 1993 00:01:07+00:00vlan.dat
364-rwx4434Mar 01 1993 00:34:57+00:00config.text.renamed
10-rwx24Mar 01 1993 01:53:30+00:00private-config.text

7741440 bytes total (4007424 bytes free)
Switch#

2. Téléchargement de la nouvelle image IOS Cisco

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.

Liste des modèles d'équipement Cisco

Cliquez maintenant sur “IOS Software” puis choisissez l’image qui correspond au mieux à vos attentes et cliquez sur “Download”.

Téléchargement de l'image IOS de l'équipement Cisco

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 d'une prochaine étape.

Vous devez maintenant placer le fichier contenant l’image dans le dossier choisi précédemment pour contenir tous les fichiers sur serveur TFTP, pour qu’il puisse être copié ensuite sur votre équipement Cisco.

Copie de l'image IOS dans le dossier du serveur TFTP

3. Vérification de l'espace disponible sur l'équipement Cisco

Avant de faire quoi que ce soit, il est préférable de vérifier l'espace disponible dans la mémoire flash de votre équipement Cisco. En effet, si celle-ci est suffisante, il n'est pas nécessaire de supprimer l'ancienne image IOS avant de copier la nouvelle.

Pour connaître l'espace mémoire encore disponible, vous devez entrer la commande suivante :

dir flash:

Vous pouvez alors observer le nombre d'octets encore "libres" sur votre équipement. Il faut alors diviser par 1 024 pour obtenir un nombre en Ko, et par 1 048 576 pour obtenir un nombre en Mo. Pour savoir s'il reste assez d'espace disponible pour copier la nouvelle image IOS, il suffit de comparer cette valeur avec la taille de la nouvelle image que vous souhaitez copier.

Switch#dir flash:
Directory of flash:/

2

-rwx

109

Mar 01 1993 00:01:40

+00:00

info
3-rwx317Oct 04 1993 20:25:07+00:00env_vars
4-rwx3721126Oct 04 1993 20:24:29+00:00c2950-16k2l2q4-mz.121-22.EA11.bin
5-rwx616Mar 01 1993 00:02:11+00:00vlan.dat.renamed
6-rwx44Mar 01 1993 00:34:57+00:00private-config.text.renamed
7-rwx3Mar 01 1993 00:44:40+00:00blop.txt
8-rwx1328Mar 01 1993 01:53:30+00:00config.text
362-rwx109Mar 01 1993 00:04:11+00:00info.ver
9-rwx976Mar 01 1993 00:01:07+00:00vlan.dat
364-rwx4434Mar 01 1993 00:34:57+00:00config.text.renamed
10-rwx24Mar 01 1993 01:53:30+00:00private-config.text

7741440 bytes total (4007424 bytes free)
Switch#

Dans notre exemple, il y a 4 007 424 octets de libre sur la mémoire flash de l'équipement Cisco. Cela équivaut à 3912.5 Ko ou 3.8218 Mo.

Or l'image IOS que l'on souhaite copier a une taille de 3634 Ko. On constate donc qu'il reste suffisamment de mémoire disponible pour copier la nouvelle image IOS sans supprimer l'ancienne.

Si l'équipement Cisco que vous avez ne dispose pas d'assez de mémoire pour copier la nouvelle image, vous allez devoir supprimer l'ancienne.

4. Suppression de l'ancienne image IOS de votre équipement Cisco

Attention, supprimer l'image IOS sans avoir une deuxième image copiée sur l'équipement est risqué. Si la copie ne se fait pas bien, vous risquez de ne plus pouvoir démarrer votre équipement Cisco qu'en mode ROMmon car il n'aura plus d'image. Ne réalisez cette étape que si l'espace disponible de l'équipement est insuffisant.

Pour supprimer l'image IOS actuellement présente sur l'équipement Cisco, entrez simplement la commande suivante :

delete /f /r flash:<nom_fichier_image>

Les commandes :

/f
/r

servent respectivement à forcer la suppression de l’image et à le faire d’une manière récursive.

Switch#delete /f /r flash:c2950-16k2l2q4-mz.121-22.EA11.bin

Delete filename [c2950-16k2l2q4-mz.121-22.EA11.bin]?

Switch#

5. Copie de la nouvelle image IOS sur l'équipement Cisco

Vous pouvez à présent copier la nouvelle image IOS de votre équipement Cisco depuis le serveur TFTP configuré précédemment grâce à la commande suivante :

copy tftp://<adresse_ip_serveur>/<nom_fichier> flash:

Il vous suffit alors d’appuyer sur Entrée deux fois pour que la copie commence.

Switch#copy tftp://192.168.246.151/c2950-16k2l2q4-mz.121-22.EA11.bin flash:
Destination filename [c2950-16k2l2q4-mz.121-22.EA11.bin]?
Accessing tftp://192.168.246.151/c2950-16k2l2q4-mz.121-22.EA11.bin. . .
Loading c2950-16k2l2q4-mz.121-22.EA11.bin from 192.168.246.151 (via Vlan1) : !!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!

Vous pouvez également constater depuis le serveur TFTP que la copie est en cours.

Copie de la nouvelle image IOS depuis le serveur TFTPD32

Lorsque le téléchargement de la nouvelle image est terminé et réalisé avec succès, vous devez voir apparaître un message comme ci-dessous.

Accessing tftp://192.168.246.151/c2950-16k2l2q4-mz.121-22.EA11.bin...
Loading c2950-16k2l2q4-mz.121-22.EA11.bin from 192.168.246.151 (via Vlan1) : !!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK – 3721126 bytes]

3721126 bytes copied in 82.468 secs (45122 bytes/sec)
Switch#

6. Changement de fichier de démarrage de l'équipement Cisco

Pour que l’équipement Cisco s’initialise avec la nouvelle image IOS au prochain démarrage, vous devez changer la configuration du système de démarrage. Pour ce faire, il faut utiliser la commande suivante :

boot system flash:<nom_fichier_image>

Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#boot system flash:c2950-16k2l2q4-mz.121-22.EA11.bin
Switch(config)#exit
Switch#

Si deux images IOS sont présentes sur votre équipement Cisco, vous pouvez choisir avec quelle image vous souhaitez le faire fonctionner avec cette même commande.

7. Finalisation de la mise à jour

Pour finaliser la mise à jour de l’image IOS de votre équipement Cisco, vous devez d’abord vérifier que la configuration du système de démarrage a bien été prise en compte par votre équipement. Pour ce faire, il vous suffit d’entrer la commande :

show boot

Switch#show boot
BOOT path-list:flash:c2950-16k2l2q4-mz.121-22.EA11.bin
Config file:flash:/config.text
Private Config file:flash:/private-config.text
Enable Break:no
Manual Boot:no
HELPER path-list:
NVRAM/Config file
buffer size:32768
Timeout for Config
Download:0 seconds
Config Download
via DHCP:disabled (next boot: disabled)
Switch#

Dans notre exemple, on peut voir que l’image qui sera chargée au démarrage du switch est bien celle qui vient d’être téléchargée.

Vous pouvez maintenant enregistrer les modifications apportées à votre équipement Cisco en entrant la commande :

copy running-config startup-config

puis en appuyant deux fois sur Entrée.

Il faut, pour pour que l’équipement fonctionne réellement avec la nouvelle image, le redémarrer grâce à la commande :

reload

Switch#copy running-config startup-config
Destination filename [startup-config] ?
Building configuration...
[OK]

Switch#reload
Proceed with reload? [confirm]

02:28:07: %SYS-5-RELOAD: Reload requested

Vous pouvez maintenant vérifier que votre équipement utilise la bonne image en entrant la commande suivante :

dir flash:

Switch#dir flash:
Directory of flash:/

2

-rwx

109

Mar 01 1993 00:01:40

+00:00

info
3-rwx317Oct 04 1993 20:25:07+00:00env_vars
4-rwx3721126Mar 01 1993 02:21:11+00:00c2950-16k2l2q4-mz.121-22.EA11.bin
5-rwx616Mar 01 1993 00:02:11+00:00vlan.dat.renamed
6-rwx44Mar 01 1993 00:34:57+00:00private-config.text.renamed
7-rwx3Mar 01 1993 00:44:40+00:00blop.txt
8-rwx1328Mar 01 1993 01:53:30+00:00config.text
362-rwx109Mar 01 1993 00:04:11+00:00info.ver
9-rwx976Mar 01 1993 00:01:07+00:00vlan.dat
364-rwx4434Mar 01 1993 00:34:57+00:00config.text.renamed
10-rwx24Mar 01 1993 01:53:30+00:00private-config.text

7741440 bytes total (4007424 bytes free)
Switch#

Si c’est la bonne image qui est utilisée, vous avez mis à jour l’image IOS de votre équipement Cisco.

En résumé, voici toutes les commandes à utiliser pour changer l'image IOS d'un équipement Cisco avec un serveur TFTP

Switch>enable
Switch#show version
Switch#dir flash:
Switch#delete /f /r flash:<nom_fichier_image>
Switch#copy tftp://<adresse_ip_serveur>/<nom_fichier> flash:
Switch#boot system flash:<nom_fichier_image>
Switch#show boot
Switch#copy running-config startup-config
Switch#reload
Switch#dir flash:

Commentaires

Commenter cet article