Plus facile à lire avec un fond crème, une teinte, plus de contraste ou un texte plus grand ? Choisissez vos couleurs et votre texte, une fois pour toutes les pages.

Leçon gratuite

Obtenir une adresse, trouver un nom (DHCP, DNS)

Après cette leçon: Je peux expliquer comment un appareil reçoit une adresse et trouve un nom.

Leçon de 45 min6 commandesLab DHCP et DNS : configurer dnsmasq pour un petit réseau dans le navigateur

Le Wi-Fi de la médiathèque

Tu arrives à la médiathèque et tu choisis son Wi-Fi. En une seconde, ton téléphone a une adresse. Tu tapes le nom d’un site, et la page s’ouvre.

Tu n’as tapé aucun chiffre. Deux petits services ont tout fait pour toi.

Le premier prête une adresse à ton téléphone. Le second transforme un nom en adresse.

À la fin de cette leçon

Remarque

Je peux expliquer comment un appareil reçoit une adresse et trouve un nom.

Mots clés

MotCe que ça veut direExemple
DHCPle service qui prête des adresses aux appareils qui en demandent
Bailune adresse prêtée pour une durée fixée
Diffusionun message envoyé à tous les appareils du réseau
Adresse matériellele numéro fixe d’une carte réseau, aussi appelé adresse MAC02:00:00:00:00:01
DNSle service qui transforme un nom en adresse
Enregistrementune information qu’un serveur DNS garde sur un nom

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Un nouvel appareil doit demander

Un appareil qui vient d’arriver n’a pas d’adresse. Il ne sait pas non plus où se trouve le serveur DHCP.

Alors il envoie une diffusion, un message pour tout le monde. Le serveur DHCP l’entend et propose une adresse.

Il faut quatre messages, qu’on résume souvent par DORA : Discover, Offer, Request, Acknowledge.

Exemple travaillé : les quatre messages

MessageEnvoyé parCe qu’il veut dire
DiscoverLe téléphoneY a-t-il un serveur DHCP ici ?
OfferLe serveurTu peux prendre 192.168.5.101
RequestLe téléphoneD’accord, je la prends
AcknowledgeLe serveurElle est à toi pour 8 heures

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Découvre le serveur et les deux clients

Commande
dnslab status

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Fais demander une adresse par pc1

Commande
sudo dnslab renew pc1

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Personne n’a répondu à pc1

L’état montre server avec 10.0.10.1/24. Sous pc1 et pc2, aucune adresse.

La demande attend environ trois secondes. Puis elle dit pc1 was given nothing: no DHCPOFFER came back. Le Discover est parti, mais aucun Offer n’est revenu.

Lis l’adresse matérielle de pc1

Commande
sudo ip netns exec pc1 ip -o link show eth0

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Lis l’adresse matérielle de pc2

Commande
sudo ip netns exec pc2 ip -o link show eth0

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Lis le fichier de réglages du serveur

Commande
cat /etc/dnsmasq.d/lab.conf

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Deux cartes, un fichier vide

pc1 affiche link/ether 02:00:00:00:00:01 et pc2 link/ether 02:00:00:00:00:02. C’est ainsi qu’un serveur distingue deux clients sans adresse IP.

Le fichier de réglages ne contient que trois lignes de commentaire, en anglais. Le serveur n’a donc aucune adresse à prêter.

Le DNS transforme un nom en adresse

Les gens retiennent des noms. Les routeurs ont besoin de nombres. Un serveur DNS garde des enregistrements qui relient les deux.

Ton téléphone demande à son serveur DNS : « quelle est l’adresse de ce nom ? ». Le serveur répond avec ses enregistrements, ou demande à un autre serveur.

C’est le DHCP qui dit à ton téléphone quel serveur DNS interroger.

Exemple travaillé : les enregistrements d’une boutique

TypeIl répond àExemple
AQuelle adresse porte ce nom ?caisse.boutique est 192.168.5.10
AAAAQuelle adresse IPv6 porte ce nom ?Un long nombre avec des deux-points
CNAMECe nom est-il un autre nom ?promo.boutique renvoie vers site.boutique
MXQuel serveur reçoit le courrier ?courrier.boutique

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Demande un nom au serveur

Commande
sudo ip netns exec server dig +noall +comments @10.0.10.1 files.lab

Affichée ici, non exécutée. Créez un compte gratuit pour appuyer sur Exécuter et la saisir dans le terminal de votre propre labo.

Le serveur a refusé

La réponse contient status: REFUSED et ANSWER: 0. Le serveur n’a aucun enregistrement pour ce nom, et il ne peut pas joindre un autre serveur pour demander.

Écrire les enregistrements fait partie du lab. Après, la même question aura une réponse.

Une erreur fréquente

Attention

Beaucoup pensent que DHCP et DNS sont un seul service. Ce sont deux métiers. Le DHCP prête des adresses. Le DNS répond aux questions sur les noms. Un seul programme peut faire les deux, comme dnsmasq dans ce lab : ce sont quand même deux métiers.

Pour aller plus loin : un vrai bail

Quand ton lab marche, lis le vrai fichier des baux du serveur : sudo cat /run/dnslab/dnsmasq.leases.

Chaque ligne a plus de champs que dans ton devoir. Associe chaque champ à son sens. Lequel donne l’heure de fin du bail ?

À propos de ce labo et de sa source: Lab DHCP et DNS : configurer dnsmasq pour un petit réseau dans le navigateur

Vous enseignez à une classe ? Proposez ce module à vos étudiants avec un guide de l'enseignant, des devoirs corrigés et un laboratoire pour chaque étudiant.