Installation de GNS3 à partir des sources sous Linux
GNS3 est un simulateur graphique de réseaux capable de charger des vraies images de l'IOS de Cisco permettant ainsi d'émuler entièrement des routeurs ou firewalls Cisco. Pour cela GNS3, s'appuie principalement sur deux autres programmes: Dynamips (l'émulateur d'IOS) et Dynagen (interface texte pour Dynamips). A noter que les images IOS ne sont pas fournies, il faut donc se les procurer sur le site cisco.com si vous avez un compte client ou ailleurs sinon.
Il est possible d'installer GNS3 à partir du gestionnaire de paquets, mais je préfère l'installer à partir de ses sources, et c'est très facile puisque c'est un programme en Python qui n'a pas besoin d'être compilé.
Installation
D'abord, il faut installer les dépendences de GNS3 qui sont officiellement:
- Qt 4.3 ou supérieur
- Python 2.4 ou supérieur
- Sip 4.5 ou supérieur
- PyQt 4.1 ou supérieur
Sous Debian Lenny ou Ubuntu Jaunty, la commande suivante installera tout ce qu'il faut:
# sudo aptitude install python-qt4
Ensuite, On télécharge la dernière version de GNS3 (actuellement 0.6) à partir de ce lien:
http://sourceforge.net/project/showfiles.php?group_id=198152
Ou bien le lien direct pour la version actuelle (0.6):
http://dfn.dl.sourceforge.net/sourceforge/gns-3/GNS3-0.6-src.tar.gz
Puis on le décompresse dans le dossier où l'on choisit d'installer GNS3, personnellement je préfère le mettre dans /opt/, donc:
# cd /opt # tar zxvf /chemin/vers/GNS3-0.6-src.tar.gz
Le dossier qui en résulte s'appelle GNS3-0.6-src. Pour faciliter on peut créer un lien symbolique avec un nom plus court (gns3):
# ln -sf /opt/GNS3-0.6-src/ gns3
On se place dans le nouveau dossier et on crée les dossiers de travail nécessaires qu'on va choisir de nommer 'dynamips', 'ios', et 'project':
# cd gns3 # mkdir dynamips # mkdir ios # mkdir project
Ensuite, il faut télécharger l'exécutable Dynamips à partir de l'adresse suivante:
http://sourceforge.net/project/showfiles.php?group_id=198152&package_id=299655&release_id=641509
Ou cliquez sur ce lien direct pour plateforme i386:
http://surfnet.dl.sourceforge.net/sourceforge/gns-3/dynamips-0.2.8-RC2-x86.bin
Il faut mettrele fichier .BIN qu'on a téléchargé dans le répertoire 'dynamips' créé précédemment, ensuite on lui donne le droit d'exécution:
# chmod +x dynamips/dynamips-0.2.8-RC2-x86.bin
Et voilà, l'installation est maintenant terminée, vous pouvez tester l'exécution du logiciel en tapant la commande suivante en tant que root (ou en ajoutant sudo avant):
# /opt/gns3/gns3.sh
Il ne reste plus qu'à configurer le logiciel.
Configuration
A la première exécution de GNS3, il faut faire quelques réglages à partir du menu 'Edit > Preferences':
Partie 'General':
Changez la valeur de 'Project directory' et mettre le chemin du dossier 'project' créé lors de l'installation (/opt/gns3/project).
Changez la valeur de 'IOS/PIX directory' et mettre le chemin du dossier 'ios' (/opt/gns3/ios).
Partie 'Dynamips':
Assurez-vous que le champ 'Executable path' pointe vers l'exécutable Dynamips qu'on a téléchargé lors de l'installation (/opt/gns3/dynamips/dynamips-0.2.8-RC2-x86.bin).
Ensuite, cliquez sur 'Test' pour tester l'exécutable. En cas d'échec assurez-vous d'avoir lancé gns3 avec le compte super-utilisateur.
Voilà pour ce qui est de la configuration de GNS3. Vous devriez pouvoir faire tourner le logiciel mais vous ne pourrez pas encore émuler de routeurs. Tout ce qu'il reste à faire c'est se procurer les images IOS et les ajouter à partir du menu 'Edit > IOS images and hypervisors'.
A noter qu'il faut exécuter GNS3 en tant que 'root'.
Optimisations (Important)
Une fois que vous aurez chargé un IOS et commencé l'émulation d'un routeur, vous risquez très fort de faire crasher votre ordinateur si vous n'effectuez pas certains réglages supplémentaires, car l'émulateur consomme tous les cycles disponibles de votre processeur ce qui le fait chauffer et pousse votre ordinateur à s'éteindre brusquement après peu de temps. Vous pouvez vérifier la consommation grâce à la commande top, le processus à surveiller est 'dynamips-0.2.8'.
Idle PC
La première optimisation à faire est quasi obligatoire, et c'est de trouver la valeur 'Idle PC' optimale pour votre image IOS. Faites-le suivant ces étapes:
1- Ajouter un routeur à votre topologie et cliquez sur démarrer pour commencer l'émulation.
2- Une fois le routeur démarré, exécutez la commande top pour surveiller la consommation cpu du processus dynamips.
3- Faites un clic droit sur le routeur puis cliquez sur 'Idle PC' afin de calculer une nouvelle valeur.
4- Une fois les valeurs possibles calculées, choisissez en une, appliquez là et notez là en même temps quelque part (afin d'avoir toutes les valeurs déjà appliquées).
5- Vérifiez la consommation de dynamips sur la sortie de la commande top.
6- Répétez ces étapes jusqu'à trouver la valeur Idle PC optimale pour votre routeur.
Logiciel cpulimit
Cette étape n'est pas obligatoire mais je la recommande fortement.
L'utilitaire cpulimit permet de contrôler le pourcentage de cycles cpu consommés par un processus. Pour l'installer sous Debian/Ubuntu:
# sudo aptitude install cpulimit
Avant de lancer cpulimit, il faut récupérer le numéro du processus (PID) de dynamips à partir de la première colonne de la commande top.
Ensuite lancez la commande cpulimit avec la syntaxe suivante:
cpulimit -p PID -l limite
Exemple: pour limiter le processus 2442 à 20%, tapez:
# cpulimit -p 2442 -l 20

Poster un nouveau commentaire