Routage et DHCP sous Linux ( à télécharger sur vore clé USB )
| Site: | Le labo numérique de M. MIGNOTTE – Cours, projets et ressources pour les élèves de seconde SNT et STI2D |
| Course: | Réseaux informatique (niveau 2) |
| Book: | Routage et DHCP sous Linux ( à télécharger sur vore clé USB ) |
| Printed by: | Guest user |
| Date: | Thursday, 30 October 2025, 9:39 AM |
Introduction
Au début, nous avons simulé à l'aide de Packet Tracer plusieurs réseaux avec des situations de routage et des services serveurs (dhcp, messagerie, http). Nous allons essayer de mettre en œuvre ces services dans un environnement virtuel sous Linux.
Dans ce TP en deux parties, nous simulerons un réseau routé, puis nous y ajouterons un serveur dhcp.
Nous allons donc avoir besoin de la machine virtuelle créée précédemment.
Attention :
Afin que tout le monde travaille avec un master propre, je vous propose d'importer le master que j'ai créé et stocké dans :
Reprenez le fichier que vous avez créer la dernière fois. N'oubliez pas de le nommer avec votre nom et prénom.
Ce master permet d'avoir un pavé numérique toujours activé et contient une version adaptée et commentée du fichier /etc/network/interfaces.
Réseau routé
Réseau d'étude complet
Voici le réseau final que nous devons obtenir à l'issue de ce TP. Ce réseau sera construit morceau par morceau lors des différentes étapes du TP.

Remarques :
- Toutes les interfaces sont en adressage statique à l'exception de la carte coté "Réseau IUT" du routeur servant de box.
- Les trois pc ont une passerelle par défaut (voir l'adresse après le P dans chaque réseau)
- Vous devez entrer manuellement des routes statiques dans les trois routeurs afin que tous les postes puissent communiquer (ping).
Gestion des cartes réseaux sous Linux
La configuration se fait en deux temps :
- Sous virtualBox, nous pouvons définir entre 0 et 4 cartes réseaux avec un mode d'accès réseau adapté à la situation (pont pour se connecter à la carte physique du poste de TP - cas d'une des interfaces de la box - ou interne dans le cas d'interfaces reliées à d'autres interfaces dans le réseau virtuel - cas de toutes les autres cartes ici ).
- Sous linux, la gestion des adresses statiques ou dynamiques se fait dans le fichier /etc/network/interfaces.
Travail préliminaire
Après avoir importé le master Ubuntu stocké sur le partage réseau (voir l'introduction), nous allons réaliser quelques vérifications avant de le cloner.
- Vérifier que la quantité de RAM allouée au master est de 256 Mio (important car nous allons utiliser 6 machines virtuelles sans cela les PC de l'IUT n'auraient pas assez de mémoire).
- Vérifier que la quantité de RAM allouée à la carte vidéo du master est de 9 Mio (pas d'interface graphique, donc pas besoin de beaucoup de RAM vidéo, on pourrait même descendre à 4 Mo mais VirtualBox râle en dessous de 9Mio).
Premier démarrage :
- Démarrer le master et se connecter en tant que root (nous le ferons tout au long de ce TP, je ne le préciserai plus par la suite).
- Éditer le fichier de configuration réseau à l'aide de vi : vi /etc/network/interfaces (remarque voir glossaire pour vi).
Voici le contenu initial du fichier de configuration des cartes réseau (j'ai modifié ce fichier dans le master dont vous disposez) :
Seules les deux dernières lignes nous intéressent ici.
La carte réseau se nomme enp0s3 (Enable Network Peripherical 0 Serial 3). C'est toujours le nom de la première carte réseau avec Ubuntu (depuis la version 16.04).
auto signifie que cette carte sera activée automatiquement à chaque démarrage du PC..
iface enp0s3 inet dhcp signifie que l'interface (iface) enp0s3 de la famille TCP/IPv4 (inet comme internet) est configurée en DHCP.
Si on laisse cette configuration avec une carte configurée en interne dans virtualBox, la machine virtuelle va mettre très longtemps (environ 6 mn) à démarrer car elle essaiera d'obtenir une adresse d'un serveur qui n'existe pas dans notre réseau local. Il faut donc passer cette adresse en statique pour converser un démarrage rapide.
Fichier à obtenir après modification (suivre les consignes indiquées dans les commentaires) :
Ici la carte est en adressage statique (static) et l'adresse et le masque sont précisés (le masque n'est pas déduit de l'adresse comme dans Paquet Tracer).
Attention à la syntaxe, la moindre erreur est fatale. En anglais address prend 2 'd' et 2 's' et pas de 'e'.
Redémarrer le master (commande reboot tout simplement) et vérifier la prise en compte de la nouvelle configuration (ifconfig).
Le master est prêt à être cloné.
Commandes Vi
Passage mode commande au mode insertion : 'i'
Passage mode insertion au mode commande : 'Echap'
Écriture des commandes : ':'
Quelques commandes :
- annuler la dernière commande : 'u'
- enregistrer : 'w'
- quitter : 'q'
- quitter sans enregistrer : 'q!'
- enregistrer et quitter : 'x'
Supprimer n lignes : 'nDD'
Copier/coller :
- copier n lignes : nyy
- coller : p
- Exemple copier 8 lignes à partir du curseur : '8yy'
Rechercher/remplacer : ':%s/ancien/nouveau/g'
- exemple : remplacer toto par titi : ':%s/toto/titi/g'
- Ajouter 'c' après le 'g' pour demander confirmation avant chaque remplacement
Memento vi

Première partie
Deux postes en réseau
Réseau Linux à obtenir avec VirtualBox
Remarque : nous transformerons le poste rtrGauche en routeur dans la seconde partie.
Travail à réaliser
- Cloner le master pour créer pcGauche et rtrGauche.
- Changer les adresses IP (vous savez faire).
- Changer les noms d'hôte (voir plus bas comment faire).
- Vérifier que les deux postes peuvent communiquer (ping).
Remarques :
- Le commutateur virtuel s'obtient dans la configuration de VirtualBox en donnant un nom au réseau interne comme montré ci-dessous.

Les deux cartes doivent être en mode d'accès interne avec le même nom de switch. Si vous laissez le nom par défaut (intnet) à l'un des postes, un second commutateur virtuel sera créé.
- le nom d'hôte est stocké dans le fichier /etc/hostname. Il faut le modifier et redémarrer le poste pour prendre en compte le changement.
Au final voici ce que vous devez obtenir sur chaque poste. Ne pas continuer le TP tant que cette partie ne fonctionne pas comme sur les captures.


Deuxième partie
Routage simple
Réseau Linux à obtenir avec VirtualBox

Étape 1 : réseau centre
- Ajouter une seconde carte réseau à rtrGauche.
Après avoir éteint la machine virtuelle, il suffit d'ajouter une seconde carte réseau dans VirtualBox et de créer un second commutateur virtuel appelé swCentre avant de redémarrer.

Vous obtenez un poste avec deux cartes réseaux qui n'est pas encore un routeur.
La seconde carte réseau s'appelle enp0s8 (étrange non ?). Il ne reste plus qu'à la configurer dans /etc/network/interfaces.
Attention : penser à faire démarrer automatiquement la seconde carte réseau. Pour cela, il faut faire précéder la ligne de configuration de cette seconde carte par "auto enp0s8" (cette instruction indique qu'il faut l'activer à chaque démarrage). Sans cette ligne, il faut démarrer manuellement la carte par la commande "ifup enp0s8".
- Créer et configurer pcCentre. Vérifier la connectivité avec la patte de droite du routeur.
- Voici ce que vous devez obtenir :


Étape 2 : passerelle
Résumé de la situation :
- pcGauche peut joindre la patte de gauche de rtrGauche
- pcCentre peut joindre la patte de droite de rtrGauche
Questions :
- Est-ce que pcGauche peut joindre la patte de droite de rtrGauche ?
- Est-ce que pcCentre peut joindre la patte de gauche de rtrGauche ?
- Est-ce que pcGauche peut joindre pcCentre ?
La réponse à toutes ces questions est toujours négative. Pourquoi ?
Car à chaque fois l'adresse de destination du ping est située dans un autre réseau. Et que faut-il pour pouvoir sortir de son réseau ? Une passerelle par defaut.
Pour affecter une passerelle par défaut à un poste linux, il suffit de rajouter une ligne dans le fichier /etc/network/interfaces (sous la ligne netmask).
gateway w.x.y.z
Remarques :
- Pour éviter de redémarrer le poste après la modification du fichier /etc/network/interfaces, il suffit d'éteindre puis de rallumer les cartes réseau à l'aide des commandes ifdown -a et ifup -a.
- Pour vérifier la prise en compte de la passerelle vous pouvez utiliser la commande ip route show.
Faire les modifications nécessaires sur pcGauche et pcCentre.
Voici ce que vous devez obtenir :


Attention il n'y a pas encore eu de routage. Le poste rtrGauche possède deux adresses et sait les utiliser.
Il y a aura routage que si le poste pcGauche peut joindre le poste pcCentre, ce qui ... n'est pas encore le cas.
Étape 3 : activer le routage
L'activation du routage sur rtrGauche se fait via la modification du fichier /etc/sysctl.conf Il suffit de décommenter la ligne net.ipv4.ip_forward=1 comme sur la capture suivante

Il faut redémarrer le routeur pour prendre en compte la modification. Il ne reste plus qu'à tester un ping entre pcGauche et pcCentre.

Troisième partie
Deux routeurs
Objectif
Complétez le réseau précédent pour obtenir :

Consignes
- Créer pcDroit en prenant soin de le connecter à un nouveau commutateur virtuel appelé swDroit.
- Créer rtrDroit directement avec deux interfaces réseau (la première connectée à swCentre et la seconde connectée à swDroit). Ne pas oublier d'activer le routage !
- Vérifier que pcDroit peut joindre les deux pattes de rtrDroit.
- Vérifier que pcCentre peut joindre la patte de gauche de rtrDroit.
Captures


Difficultés
- Faire communiquer pcCentre avec pcDroit.
- Faire communiquer pcGauche avec pcDroit.
Rappels
- Il n'est pas possible d'affecter plusieurs passerelles par défaut à pcCentre.
Il est possible d'ajouter des routes statiques dans un routeur.
Voici la commande à utiliser à la fin du fichier /etc/network/interfaces :
up route add -net <IPd>/<mask> gw <IPnext>
Remarques :
- <IPd> est à remplacer par l'adresse du réseau de destination c'est donc une adresse de reseau pas d'un poste elle se termine par 0 dans notre cas;
- <mask> est à remplacer par le masque du réseau au format CIDR i.e. /X avec X entier.
- <ipnext> est à remplacer par l'adresse d'une interface de routeur (next hope)
Pour vérifier la prise en compte des routes :
ip route show
Capture finale

Quatrième partie
Routeur d'accès distant (box)
Objectif
Ajouter un autre routeur qui fera office de box comme dans la simulation Packet Tracer.

Consignes
- Créer la MV box avec deux cartes réseau. La première en interne connectée à swCentre et la seconde en mode pont sur la carte physique de votre poste de travail. Au niveau IP, la première carte sera en adressage statique et la seconde en adressage dynamique. Ne pas oublier d'activer le routage !
- Changer la passerelle par défaut de pcCentre comme indiqué sur le schéma.
Objectif
- pcCentre doit pouvoir joindre pcGauche et pcDroit via sa nouvelle passerelle.
Attention la box obtient une passerelle par défaut du serveur DHCP de l'IUT. Donc toute demande d'accès à un réseau inconnu de la box sera renvoyée à un poste de l'IUT, y compris les réseaux 192.168.10.0 et 192.168.12.0.
Il faut trouver une solution pour renvoyer les demandes à rtrGauche ou rtrDroit. A vous de trouver.
Cinquième partie
Serveur DHCP
Objectif
Installer et configurer un serveur DHCP sur la box afin de distribuer des adresses aux postes du réseau local (réseau 192.168.11.0 dans un premier temps).
Schéma simplifié du réseau

Etapes
- Vérifier la connexion à internet de la box.
- Mettre à jour la liste des paquets.
- Installer le paquet isc-dhcp-server qui permet d'ajouter la fonctionnalité de serveur DHCP à la box.
- Configurer le serveur et le démarrer.
- Passer pcCentre en client DHCP et vérifier l'obtention d'une adresse.
Difficultés
L'étape 4 est la plus délicate.
Remarque préliminaire : notre box possède deux cartes réseau, il faut indiquer au serveur DHCP quelle carte est en écoute pour distribuer des adresses. Il n'est pas question de mettre en écoute la carte pontée sur le réseau de l'IUT, il faut donc indiquer l'autre carte, soit enp0s3. Pour cela, il faut modifier le fichier /etc/default/isc-dhcp-server. Il n'y a qu'une seule ligne non commentée. Il faut la modifier pour obtenir :
INTERFACES="enp0s3"
Après sauvegarde, il faut redémarrer la machine virtuelle.
La configuration du serveur est contenue dans le fichier /etc/dhcp/dhcpd.conf . Faire une sauvegarde de ce fichier (appelée dhcpd.conf.sav) avant de l'éditer.
Pour attribuer des adresses, un masque et une passerelle par défaut, il faut décommenter et adapter les lignes suivantes :

Retirer les # et adapter les adresses à notre situation. Vous pouvez remplacer le nom du routeur de l'exemple par une adresse (une seule adresse suffit).
Il faut ensuite redémarrer le service dhcp par la commande :
service isc-dhcp-server restart
Et vérifier qu'il n'y a pas d'erreurs par la commande :
service isc-dhcp-server status
Pour l'étape 5, après avoir passé la carte en dhcp, il suffit de désactiver puis réactiver la carte. Vérifier ensuite l'obtention d'une adresse et d'une passerelle.
Compléments
SNAT
Pour activer le SNAT sur la box, il faut ajouter à la fin du fichier /etc/network/interfaces :
post-up iptables -t nat -A POSTROUTING -o enp0s8 -j MASQUERADE
Ne pas oublier de relancer les cartes réseau.
Pour tester son fonctionnement essayer de joindre le serveur moodle depuis pcCentre (puis les autres postes)
ping 94.23.11.49
Le résultat doit être positif.
Mise à jour de la liste des paquets depuis le réseau interne
La dernière étape consiste à vérifier l'accès au serveur de mise à jour.
Un apt-get update depuis pcCentre ne fonctionnera pas. Pourquoi ? Lisez-bien les messages d'erreur.
La solution consiste à modifier une option dans la configuration du serveur DHCP.
Indication : 172.23.1.15 et 192.168.1.7 (fournis par l'IUT). Piste de recherche : 8.8.8.8 8.8.4.4.
A vous de trouver et tester votre solution.
Sixième partie
Objectif
Passer tous les postes client en DHCP.
Le client pcCentre a été passé en DHCP dans la cinquième partie. Le passage des deux autres pc en DHCP sera plus complexe. En effet, il ne suffit pas de modifier la configuration des deux clients.
Rappels requêtes DHCP
Lorsqu'un client est configuré en DHCP, il envoie une requête DHCPDISCOVER en diffusion (broadcast). Cette requête se propage à travers les commutateurs comme nous l'avons vu en TD sur Packet Tracer. Que se passe-t-il lorsque cette requête atteint un routeur ? Le rôle du routeur est de stopper les diffusions afin de réduire le trafic inter-réseau (imaginez ce qu'il se passerait sur Internet si vos box transmettaient les diffusions émisent de votre réseau local sur Internet !).
Relais DHCP
Ce premier problème peut être résolu en installant un relais DHCP sur le routeur. Ce relais est un logiciel qui capture les trames de diffusion DHCPDISCOVER et qui les transmet au serveur DHCP qui est situé de l'autre côté du client.
Nous allons expérimenter cette solution sur rtrGauche afin de permettre à pcGauche d'obtenir une adresse depuis le serveur DHCP de la box.
Le paquet à installer sur rtrGauche s'appelle isc-dhcp-relay. Pour installer ce paquet sur le routeur, il faut que le routeur puisse accéder à Internet, ce qui n'est pas le cas.
Question 1 : Que faut-il faire sur le routeur pour qu'il accède à Internet (sachant qu'il doit absolument rester en adressage statique ?
L'installation du paquet isc-dhcp-relay se termine par un assistant demandant l'adresse IP du serveur DHCP à qui relayer les demandes d'adresses, indiquer 192.168.11.254 et ne rien indiquer pour les deux demandes suivantes.
Autre difficulté
Le routeur est maintenant programmé pour transmettre les demandes au serveur DHCP de la box.
Ce serveur est lui-même programmé pour distribuer des adresses appartenant au réseau 192168.11.0, que se passerait-il si ce serveur distribuait une telle adresse à pc Gauche ?
Question 2 : Que faut-il faire pour que le serveur DHCP distribuent des adresses appartenant au réseau 192.168.10.0 ? (la solution est finalement assez simple et logique)
Tester cette solution sur la box et pcCentre.
Pour finir
Il ne reste plus qu'à adapter cette solution au réseau 192.168.12.0. Attention, il faut installer un second relais sur rtrDroit.