Niveau 🟡 intermédiaire
Durée estimée : 20 min · Prérequis : DHCP et IP fixe
Le DNS, c'est l'annuaire tĂ©lĂ©phonique d'Internet. Personne ne mĂ©morise un numĂ©ro de tĂ©lĂ©phone Ă
dix chiffres pour chaque contact — on retient un nom, et l'annuaire fait la conversion. Pareil
pour le réseau : personne ne tape 192.0.2.10 dans un navigateur, on tape un nom, et le DNS le
convertit en adresse IP en coulisses.
Le DNS (Domain Name System) est le système qui traduit un nom de domaine
(exemple.com) en adresse IP. C'est ce qui permet de retenir des noms plutĂ´t que des suites de
chiffres, et de changer l'adresse IP d'un service sans que personne n'ait Ă mettre Ă jour un
favori ou un signet.
La résolution DNS, le processus de traduction, suit une hiérarchie de serveurs interrogés
en cascade (simplifié) : le navigateur demande d'abord à un résolveur (souvent celui du
fournisseur d'accès, ou un résolveur public comme celui de Cloudflare ou Google) qui, s'il ne
connaît pas déjà la réponse, la recherche en remontant la hiérarchie des serveurs DNS
compétents pour ce domaine, avant de renvoyer l'adresse IP trouvée.
Les types d'enregistrements les plus courants dans un contexte homelab :
| Type | RĂ´le |
|---|---|
A |
Fait correspondre un nom Ă une adresse IPv4 |
AAAA |
Fait correspondre un nom Ă une adresse IPv6 |
CNAME |
Fait pointer un nom vers un autre nom (un alias), résolu ensuite à son tour |
Le DNS local (ou split-horizon DNS) est une résolution DNS qui ne répond que sur le réseau
local, pour des noms qui n'existent nulle part sur Internet public. C'est le mécanisme qui
permet, dans un homelab, d'accéder à un service par un nom mémorable (plutôt que par son
adresse IP privée) sans avoir besoin d'un nom de domaine public ni de l'exposer sur Internet.
« Split-horizon » vient de la possibilité, sur certaines configurations avancées, de faire
répondre le même nom différemment selon qu'on interroge depuis l'intérieur ou l'extérieur du
réseau — un homelab de départ n'a généralement besoin que du volet « intérieur ».
🧪 Concrètement, sur notre exemple, et honnêtement : les services du serveur de ce wiki
sont accessibles par des noms en.internal(par exemplemonservice.internal) — mais pas
via un vrai serveur DNS local. La résolution se fait par une entrée statique dans le fichier
/etc/hostsde chaque machine cliente qui doit y accéder. C'est plus simple à mettre en place
qu'un serveur DNS local dédié, avec une vraie limite : chaque nouvelle machine cliente doit
ĂŞtre configurĂ©e individuellement, alors qu'un DNS local n'aurait qu'un seul endroit Ă mettre Ă
jour. Un DNS local complet (ex. Pi-hole,dnsmasq) reste une amélioration possible, non testée
ici Ă ce jour.
/etc/hosts : la version manuelle du DNS localAvant mĂŞme de parler de serveur DNS, une machine consulte toujours d'abord son fichier
/etc/hosts local, qui associe directement des noms Ă des adresses IP, sans interroger aucun
serveur :
# /etc/hosts -- une ligne par service, sur chaque machine cliente
192.0.2.10 monservice.internal
192.0.2.10 autreservice.internal
C'est un DNS « statique et local à la machine » : il ne se synchronise pas tout seul, ne
répond qu'à cette machine précise, et doit être recopié partout où l'accès est nécessaire. Pour
un homelab avec peu de machines clientes, c'est un compromis honnête ; pour un réseau avec
beaucoup de clients, un vrai serveur DNS local devient vite plus pratique Ă maintenir.
Une fois l'adresse IP obtenue, le navigateur ne repasse plus par le DNS pour cet échange — la
résolution DNS n'intervient qu'au tout début, avant l'ouverture de la connexion elle-même.
dig monservice.internal
# Interroge le DNS pour "monservice.internal" et affiche l'enregistrement
# trouvé (type A, adresse IP, etc.) -- outil de diagnostic DNS de référence
resolvectl query monservice.internal
# Équivalent moderne sous systemd-resolved (résolveur DNS par défaut de
# nombreuses distributions Ubuntu récentes), affiche aussi la source
# (quel serveur DNS a répondu)
cat /etc/hosts
# Fichier de résolution locale manuelle -- une ligne "IP nom" ici prime
# sur toute requête DNS pour ce nom précis
dig est l'outil de diagnostic DNS historique, universellement disponible ; resolvectl
apporte en plus des informations sur le résolveur utilisé, utile pour diagnostiquer un DNS
local qui ne répond pas comme prévu.
dig +short exemple.com
Doit renvoyer une adresse IP (ou une ligne vide suivie d'une erreur si le domaine n'existe pas).
+short réduit la sortie à l'essentiel — juste le résultat de la résolution.
| SymptĂ´me | Cause probable | Solution |
|---|---|---|
Un nom .internal ne se résout pas depuis une machine du réseau |
Le résolveur DNS local n'est pas configuré sur cette machine, ou le service DNS local est arrêté | Vérifier avec resolvectl status quel serveur DNS est réellement interrogé par la machine |
| Changement DNS qui semble ne jamais prendre effet | Mise en cache de l'ancienne résolution (TTL) | Attendre l'expiration du TTL indiqué dans l'enregistrement, ou vider le cache local (resolvectl flush-caches) |
/etc/hosts et DNS donnent des réponses différentes pour le même nom |
/etc/hosts est prioritaire et n'est pas synchronisé avec le DNS |
Vérifier /etc/hosts en premier en cas de résolution inattendue — il prime toujours |
A pointe vers une IPv4, AAAA vers une IPv6, CNAME vers un autre nom.dig et resolvectl query sont les deux outils de diagnostic DNS de référence.Un A pointe directement vers une adresse IPv4. Un CNAME pointe vers un autre nom de domaine,
qui sera résolu à son tour — un alias plutôt qu'une adresse directe.
Pour accéder aux services par des noms mémorables plutôt que par leur adresse IP privée, sans
avoir besoin d'un nom de domaine public ni d'exposer quoi que ce soit sur Internet.
/etc/hosts — une ligne qui y associe un nom à une adresse prime toujours sur une requête DNS
pour ce mĂŞme nom.
Exécute dig +short sur un nom de domaine connu (par exemple celui d'un site que tu visites
souvent) et note l'adresse IP obtenue. Répète la commande une seconde fois : le résultat est-il
identique ? (Il devrait l'être, tant que le TTL de l'enregistrement n'a pas expiré.)
DNS ·
résolution DNS ·
enregistrement A ·
CNAME ·
split-horizon
Cette formation est proposée par Deladev, studio web de Loïc D. — création de sites et d'applications, accompagnement et formation sur mesure.
Les projets réalisés · Prestations et tarifs · Le blog tech · Me contacter
Écrite par Loïc D. avec l'assistance de Claude (Anthropic) — un travail à deux.
© 2026 Deladev — publiée sous licence CC BY-NC-ND 4.0. Vous pouvez la lire, y renvoyer par un lien, la partager et la citer en créditant la source. La revendre, l'utiliser dans une prestation ou une formation payante, la republier même partiellement ailleurs, en diffuser une version modifiée ou l'exploiter pour entraîner un modèle d'IA nécessitent une autorisation écrite — pour un usage interne en entreprise, c'est souvent oui, il suffit de demander.