Objectifs de certification

ICND1 100-105

  • 5.5 Réaliser la maintenance du périphérique Mise à jour et récupération Cisco IOS SCP, FTP, TFTP et vérification MD5, Password recovery et registre de configuration, Gestion du système de fichiers
  • 5.2 Configurer et vérifier la gestion du périphérique Backup et restore de la configuration du périphérique, Utilisation de Cisco Discovery Protocol ou LLDP pour la découverte des périphériques, Licensing, Logging, Timezone, Loopback
  • 5.3 Configurer et vérifier la configuration initiale d'un périphérique

CCNA R&S 200-125

  • 7.5 Réaliser la maintenance du périphérique (Mise à jour et récupération Cisco IOS SCP, FTP, TFTP et vérification MD5, Password recovery et registre de configuration, Gestion du système de fichiers)
  • 7.3 Configurer et vérifier la gestion du périphérique (Backup et restore de la configuration du périphérique, Utilisation de Cisco Discovery Protocol ou LLDP pour la découverte des périphériques, Licensing, Logging, Timezone, Loopback)
  • 7.4 Configurer et vérifier la configuration initiale d'un périphérique

Installer et configurer GNS3

Pour se rapprocher d’une expérience moderne des interfaces de configuration des produits Cisco Systems, on conseillera volontiers le projet Open Source GNS3 comme meilleur rapport qualité/prix pour se préparer aux examens de certification et à la pratique des systèmes Cisco. Voici une guide d’installation et de configuration.

1. Introduction à GNS3

GNS3 est une interface graphique frontale écrite en Python pour simuler des topologies réseau. Les technologies de virtualisation utilisées par GNS3 sont Dynamips, VPCS, VMWare Workstation/ESXi, VirtualBox, QEMU/KVM, Docker, …

Le logiciel émule aussi des technologies LAN/WAN comme Ethernet, Frame-Relay, ATM, HDLC, PPP, …

Il permet de construire des topologies complexes. On peut capturer en temps réel le trafic qui passe par les interfaces des périphériques. Les topologies créées sont importables/exportables.

Le projet GNS3 trouve son origine dans le logiciel Open Source Dynamips. Dynamips est un émulateur de routeurs Cisco écrit par Christophe Fillot. Il émule les plateformes matérielles 2691, 3620, 3640, 3660, 3725, 3745 et 7206 en faisant fonctionner de véritables images Cisco IOS ce qui est assez révolutionnaire au début des années 2000. Dynagen et Dynagui sont deux autres projets qui sont venus s’ajouter par la suite et qui s’interfacent avec Dynamips. GNS3 est en quelque sorte le successeur de ces deux logiciels d’interface de Dynamips. GNS3 s’est étendu en supportant d’autres hyperviseurs / émulateurs matériels, et puis aujourd’hui il est commandé via une API HTTP Rest.

Le logiciel GNS3 peut s’installer en “stand-alone” avec une interface graphique et un serveur en local. Mais la méthode actuellement préconisée est d’utiliser un serveur GNS3 installé dans le nuage chez un prestataire comme OVH ou Scaleway. Le serveur est alors commandé à travers un tunnel VPN avec une installation locale du GUI GNS3.

On utilisera aujourd’hui au minimum la version de GNS3 2.0, mais la dernière version recommandée est la version 2.1 pour GNS3-SERVER et GNS3-GUI.

2. GNS3 Server

GNS3 fonctionne selon un modèle client / serveur. Les deux logiciels doivent fonctionner dans une version identique. GNS3 évolue rapidement en plusieurs branches.

S’il est évident que le client doit être installé sur l’ordinateur de travail de l’utilisateur (Windows, Mac OS X, Linux), le serveur peut être exécuté :

  • sur le client directement (peu recommandé)
  • ou dans une machine virtuelle locale (de moins en moins recommandé)
  • sur un serveur “bare-metal” dédié (fortement recommandé)

2.1. Choix et recommandations pour GNS3 Server

Pour une meilleure expérience, il sera donc nécessaire de commander une instance de type Bare-Metal avec un accès natif aux instructions de virtualisation du processeur.

Aussi les performances du serveur GNS3 peuvent se mesurer en fonction du nombre de CPU, de la vitesse des disques (SATA, SSD direct ou non), de l’accès au réseau, de la quantité de mémoire RAM.

Un sous-dimensionnement du rapport machine à démarrer / vcpu disponibles peut ralentir le lancement d’une topologie. De même que les ressources en RAM pourrait être réservées et s’agréger. Dans cette perspective l’usage des IOSv et des images Docker s’avère être un choix judicieux.

Le dimensionnement nécessaire dépendra des topologies à déployer et des machines utilisées. Pour commencer en CCNA Routing et Switching (200-125), on recommandera au minimum 16Go RAM, 8 vcpu disponibles et 50Go de stockage SSD et plus.

Aussi, le fournisseur doit offrir une image Ubuntu 16.04 LTS prête à l’emploi.

En lab Cisco, on recommandera les images IOSv (L3, 1 vCPU, 512 Mo RAM) et IOSv-L2 (L2, 1 vCPU, 768 Mo RAM) et des machines Docker pour simuler des serveurs et des services ou des stations de travail. Mais à condition de disposer de ressources suffisantes (2 vCPU et 4G RAM par machine), il est possible de virtualiser IOS-XE et IOS-XR mais aussi ASAv. Le marketplace de GNS3 offre beaucoup d’autres “aplliances” qui sont d’ailleurs intégrées immédiatement sur le logiciel client dans un format JSON. Toute image disque d’une plateforme supportée par l’hyperviseur du serveur peut être fonctionnelle.

FournisseurOffrePrixAppréciation
Scaleway C2M (16Go RAM, 8 vcpu, 50Go SSD)20 EUR/mois ou 0,036 EUR/heure+++ Choix minimal, mais très bon rapport qualité/prix
Scaleway C2L (32Go RAM, 8 vcpu, 250Go direct SSD)25 EUR/mois ou 0,048 EUR/heure+++ Confortable, bon rapport qualité/prix
OVH HOST-32L (32Go RAM, 8 vcpu, 2To SATA)20 EUR/semaine++ Très bon service, mais demande un investissement mensuel après une semaine
Packet.net Type 1 (32Go RAM, 8 vcpu, 50Go SSD)25 EUR/mois ou 0,40 EUR/heure+ Rolls du Bare-Metal-As-a-Service

2.2. Installation locale de GNS3 Server

Installation locale de GNS3 Server

2.3. Installation de GNS3 Server chez Packet.net

Installation de GNS3 Server chez Packet.net

3. Installation de GNS3 Server chez Scaleway

3.1. Inscription chez Scaleway

Inscription chez Scaleway : https://cloud.scaleway.com/#/signup

3.2. Prendre une instance

Prendre une instance C2M (16Go RAM, 8 cores, 50Go SSD) Ubuntu16.04

3.3. Lancer le script d’installation

Suivre la procédure décrite dans http://docs.gns3.com/1c2Iyiczy6efnv-TS_4Hc7p11gn03-ytz9ukgwFfckDk/ (le script d’installation est situé sur https://github.com/GNS3/gns3-server/blob/master/scripts/remote-install.sh)

3.4. Obtenir des images IOS

Télécharger les images à partir de son compte Cisco VIRL (200 EUR/an).

3.5. Placer les images sur le serveur

Placer les images IOSv et Intel dans /opt/gns3/images/QEMU

4. Comment trouver des images IOS ?

Le seul moyen d’obtenir des images IOSv légalement est de prendre un abonnement VIRL.

Un abonnement VIRL vous permet d’obtenir des images à exécuter dans GNS3 (https://learningnetworkstore.cisco.com/virlfaq/features) :

  • IOSv,
  • IOSvL2,
  • IOS-XRv,
  • CSR1000v,
  • NX-OSv,
  • ASAv,
  • NX-OS 9000v,
  • IOS XRv 9000.

Les images utilisées dans ce support sont les suivantes.

PériphériquesImagesCommentaire
Routeur Cisco IOSv vios-adventerprisek9-m.vmdk.SPA.156-2.T avec IOSv_startup_config.imgVIRL
Commutateur Cisco IOSv L2/L3vios_l2-adventerprisek9-m.03.2017.qcow2VIRL
Poste de travail L2 à L7container Docker gns3/ubuntu:xenialUbuntu GNS3 Docker Hub
Pare-feu ASAvasav971.qcow2VIRL

5. Installation de GNS3 GUI et connexion au serveur

La procédure consiste à suivre quatre étapes :

  1. Télécharger et installer le logiciel OpenVPN.
  2. Etablir la connexion OpenVPN avec votre serveur GNS3
  3. Installer la version GUI de GNS3
  4. Importer des “appliances” (les modèles de machines virtuelles)

5.1. Téléchargement et installation d’OpenVPN

5.2. Connexion OpenVPN

Fourniture d’un fichier ovpn : http://$MY_IP_ADDR:8003/$UUID/$HOSTNAME.ovpn

5.3. Téléchargement et installation de GNS3-GUI

Le logiciel se télécharge à partir de cette adresse : https://github.com/GNS3/gns3-gui/releases/

L’installation est très intuitive car elle consiste uniquement à choisir “Next”. Excepté qu’il n’est pas nécessaire d’installer les produits commerciaux quand bien même ils sont très intéressants (SolarWinds Response Time Viewer). On trouvera une aide dans le document Téléchargement et installation de GNS3-GUI.

Choisir une configuration “Run everything on a remote server (advanced usage)”.

Choisir une configuration Run everything on a remote server (advanced usage)

Ce serveur distant est à l’autre bout du tunnel VPN. Les paramètres à indiquer sont :

  • Adresse : 172.16.253.1
  • Port : 3080
Paramètres du serveur GNS3 distant à vérifier

L’adresse 172.16.253.1 est celle du serveur à l’autre bout du tunnel VPN. Le port TCP 3080 est à l’écoute pour un service HTTP afin de contrôler le serveur du côté client. Si on veut se passer du locigiel client, on peut toujours contrôler le serveur directement. La documentation de l’API de GNS3 est bien fournie.

5.4. Installation des “appliances”

Un template (un modèle) d’appliance est un fichier de définition d’une machine virtuelle qui référence les paramètres d’interfaces, la RAM, les CPUs, la console et des images disque.

Depuis la version 2.1., les modèles des “appliances” sont directement disponibles dans l’interface GNS3 GUI ce qui facilite le déploiement en classe de formation. Il est conseillé d’utiliser l’appliance Ubuntu comme station de travail en attendant la disponibilité d’un Windows Core en image Docker par exemple.

Les images à utiliser devraient déjà être placées sur le serveur GNS3. Les images IOSv s’acquièrent en prenant un abonnement Cisco VIRL.

6. Création d’une topologie de Base

De nouveau l’usage de GNS3 est très intuitif.

Page d’aide : Création d’une topologie de Base

Laisser un commentaire