
🎯 Dans ce guide, vous découvrirez comment fonctionne le reverse DNS et comment vérifier l’association entre une adresse IP et un nom de domaine. Vous trouverez également les principaux outils permettant de diagnostiquer une résolution DNS, ainsi que la méthode pour modifier localement le fichier hosts sur Windows, Linux et macOS.
Lorsque vous saisissez une adresse comme www.exemple.fr dans votre navigateur, vous utilisez un nom facile à mémoriser.
Pourtant, les équipements réseau communiquent entre eux à l’aide d’adresses IP.
Le rôle du DNS (Domain Name System) est précisément de faire le lien entre ces deux mondes : il permet d’associer un nom de domaine à une ou plusieurs adresses IP.
Par exemple, il est plus simple de retenir :
www.exemple.fr
plutôt qu’une adresse telle que :
192.0.2.10
Le DNS permet donc de retrouver l’adresse IP correspondant au nom demandé, afin que la connexion puisse ensuite être établie vers le serveur concerné.
Comment fonctionne une résolution DNS ? #
Lorsque vous demandez l’accès à un site web, votre ordinateur doit d’abord connaître l’adresse IP associée au nom de domaine.
La recherche commence généralement par le résolveur DNS configuré sur votre poste ou votre réseau. Celui-ci peut déjà connaître la réponse grâce à son cache. Dans ce cas, l’adresse IP est retournée immédiatement.
Si l’information n’est pas disponible, le résolveur effectue une recherche dans la hiérarchie DNS afin de déterminer quel serveur est autoritaire pour le domaine demandé.
Prenons l’exemple d’une demande vers :
www.exemple.com
La résolution s’effectue progressivement dans la hiérarchie DNS :
- la zone racine
. - la zone
.com - la zone
exemple.com - puis l’enregistrement correspondant à
www.exemple.com
Le serveur DNS faisant autorité pour exemple.com peut alors fournir l’adresse IP associée à www.
Une fois la réponse obtenue, elle est retournée au poste à l’origine de la demande. Le navigateur peut alors utiliser cette adresse IP pour établir la connexion avec le serveur.
À retenir : le DNS ne transporte pas votre trafic web. Il permet d’abord de déterminer vers quelle adresse IP le trafic doit être envoyé.
Le cache DNS #
Une résolution DNS peut nécessiter plusieurs échanges. Pour éviter de refaire systématiquement ces recherches, les réponses DNS sont temporairement conservées en cache.
Plusieurs niveaux de cache peuvent intervenir dans une résolution, notamment sur le résolveur DNS et sur le poste client ou le navigateur.
Lorsqu’une information est présente dans le cache, elle peut être réutilisée directement jusqu’à l’expiration de sa durée de validité.
Cela permet d’améliorer les temps de réponse et de limiter le nombre de requêtes DNS nécessaires.
Pourquoi le cache peut-il poser problème ?
Imaginons que vous changiez l’adresse IP associée à votre site à la suite d’un changement d’hébergement.
Pendant un certain temps, certains utilisateurs peuvent encore obtenir l’ancienne adresse IP. Leur résolveur DNS dispose en effet peut-être encore de l’ancienne information dans son cache.
Ce comportement est normal : il dépend notamment du TTL associé à l’enregistrement DNS.
Comprendre le TTL #
Le TTL (Time To Live) définit la durée pendant laquelle une réponse DNS peut être conservée en cache avant de devoir être renouvelée.
Par exemple, avec un TTL de 86400 secondes, une réponse peut être conservée pendant 24 heures.
Le TTL est donc un paramètre important lorsqu’une modification DNS est planifiée.
Un TTL relativement long permet de limiter les requêtes DNS et d’améliorer l’efficacité du système. À l’inverse, un TTL plus court permet de faire prendre en compte plus rapidement une modification, au prix d’un renouvellement plus fréquent des informations DNS.
Attention : modifier un enregistrement DNS ne signifie donc pas nécessairement que tous les utilisateurs verront immédiatement la nouvelle adresse. Des réponses précédemment mises en cache peuvent encore être utilisées pendant la durée du TTL.
Propagation DNS : #
On parle souvent de « propagation DNS » pour désigner le délai nécessaire avant qu’une modification DNS soit prise en compte partout.
En réalité, il ne s’agit pas d’une information qui serait progressivement « poussée » vers tous les serveurs DNS.
Les différents résolveurs mettent en cache les réponses DNS et les conservent pendant la durée autorisée par le TTL. Après expiration, ils effectuent une nouvelle résolution et récupèrent la valeur actualisée.
C’est pourquoi une modification peut être visible depuis certains réseaux alors qu’elle ne l’est pas encore depuis d’autres.
Il n’existe donc pas un délai universel de propagation de 24 ou 48 heures : le délai dépend notamment des caches et des TTL en vigueur.
Les principaux types d’enregistrements DNS #
Une zone DNS peut contenir différents types d’enregistrements, chacun ayant un rôle précis.
A
L’enregistrement A associe un nom d’hôte à une adresse IPv4.
Exemple :
www.exemple.com → 192.0.2.10
AAAA
L’enregistrement AAAA remplit le même rôle pour une adresse IPv6.
CNAME
Le CNAME permet de créer un alias vers un autre nom DNS.
Par exemple :
www.exemple.com → serveur.exemple.com
Le client doit alors résoudre le nom cible pour obtenir l’adresse IP correspondante.
MX
L’enregistrement MX (Mail Exchange) indique les serveurs chargés de recevoir les courriers électroniques pour un domaine.
NS
Les enregistrements NS (Name Server) indiquent quels serveurs DNS sont autoritaires pour une zone.
Ils permettent notamment de déterminer qui gère la zone DNS du domaine.
SOA
L’enregistrement SOA (Start Of Authority) contient les informations principales relatives à une zone DNS : serveur faisant autorité, contact administratif, numéro de série et différents paramètres de fonctionnement.
PTR
L’enregistrement PTR permet d’associer une adresse IP à un nom DNS.
Il est utilisé dans les résolutions inverses, contrairement à un enregistrement A qui permet de retrouver une adresse IP à partir d’un nom. Nous détaillerons ce point dans le prochain chapitre de ec guide.
TXT
L’enregistrement TXT permet de publier du texte associé à un domaine.
Il est notamment utilisé par différents mécanismes de validation et de sécurité, par exemple pour publier des informations relatives à l’authentification des courriels.
SRV
L’enregistrement SRV permet d’indiquer où trouver un service donné : serveur, port et éventuellement différents paramètres de priorité ou de répartition.
Il est notamment utilisé par certaines applications et protocoles nécessitant une découverte de service.
DNS : reverse DNS, outils de test et fichier hosts #
Le DNS permet généralement de retrouver une adresse IP à partir d’un nom de domaine. Il est également possible de faire l’opération inverse : partir d’une adresse IP pour retrouver le nom qui lui est associé.
C’est notamment le rôle du reverse DNS.
Qu’est-ce qu’un reverse DNS ?
Le reverse DNS permet d’associer une adresse IP à un nom de domaine.
Le mécanisme repose sur un enregistrement DNS de type PTR (Pointer Record). Il fonctionne donc dans le sens inverse d’un enregistrement A, qui permet de retrouver une adresse IPv4 à partir d’un nom de domaine.
Par exemple :
www.exemple.com → 85.31.196.218
est une résolution DNS classique avec un enregistrement A.
Dans l’autre sens :
85.31.196.218 → www.exemple.com
correspond à une résolution reverse DNS avec un enregistrement PTR.
Les reverse DNS sont notamment utilisés dans le cadre des échanges de messagerie, en particulier pour les serveurs SMTP. Ils permettent aux serveurs distants de vérifier la cohérence entre une adresse IP et le nom qui lui est associé.
Comment vérifier le reverse DNS d’une adresse IP ? #
Sous Linux, macOS ou Unix, la commande host permet d’interroger simplement le reverse DNS d’une adresse IP.
Par exemple :
host 85.31.196.218
Le résultat peut être :
218.196.31.85.in-addr.arpa domain name pointer www.exemple.com.
La présence de domain name pointer indique que l’adresse IP possède un enregistrement PTR.
Pour une adresse IPv4, le mécanisme reverse utilise le domaine in-addr.arpa et l’adresse IP est présentée dans l’ordre inverse.
Comment demander la création d’un reverse DNS ? #
Si vous souhaitez associer un nom de domaine à une adresse IP dont vous avez la gestion, une demande de reverse DNS doit être effectuée auprès de de notre support.
La demande doit généralement préciser :
- l’adresse IP concernée ;
- le nom de domaine à associer ;
- éventuellement les informations nécessaires à la validation de la demande.
Pour les adresses IP gérées par votre opérateur, utilisez le canal de support habituel pour effectuer cette demande.
Les outils pour tester les DNS #
Lorsqu’un problème de résolution DNS doit être diagnostiqué, plusieurs outils permettent de vérifier ce que renvoient les serveurs DNS.
Les deux commandes les plus courantes sont nslookup et dig.
Nslookup
nslookup permet d’interroger un serveur DNS et d’obtenir les informations associées à un nom de domaine ou à une adresse IP.
Par exemple :
nslookup www.exemple.com
La commande permet notamment de vérifier quelle adresse IP est retournée pour un nom de domaine.
Elle est particulièrement pratique sous Windows, où elle est disponible nativement.
Sous Linux et macOS, dig ou host sont également très utilisés pour les diagnostics DNS.
Dig
dig (Domain Information Groper) est un outil particulièrement adapté au diagnostic des résolutions DNS.
Il permet d’interroger directement un serveur DNS et d’afficher de manière détaillée la réponse obtenue.
Par exemple :
dig www.exemple.com
La réponse fournit notamment :
- le statut de la requête ;
- les enregistrements retournés ;
- le serveur DNS interrogé ;
- les informations d’autorité ;
- les éventuels enregistrements complémentaires.
dig est donc particulièrement utile lorsqu’une résolution ne produit pas le résultat attendu et qu’il faut déterminer où se situe le problème : sur le poste, sur le résolveur DNS ou dans la zone DNS elle-même.
Comment modifier son fichier hosts ? #
Le fichier hosts permet de définir localement une correspondance entre un nom de machine et une adresse IP.
Il peut être utilisé pour forcer temporairement une résolution DNS sans modifier la zone DNS publique.
Par exemple :
192.0.2.10 www.exemple.com
Avec cette entrée, le poste peut associer localement www.exemple.com à l’adresse 192.0.2.10.
Le fichier hosts est particulièrement utile lors de tests ou de migrations. Il permet par exemple de vérifier qu’un nouveau serveur fonctionne avant de modifier la résolution DNS utilisée par l’ensemble des utilisateurs.
Pourquoi modifier le fichier hosts ? #
Le fichier hosts peut être utilisé dans plusieurs situations :
- tester un nouveau serveur avant une modification DNS ;
- vérifier le comportement d’un site sur une nouvelle adresse IP ;
- forcer temporairement une résolution particulière ;
- bloquer localement l’accès à un domaine en le faisant pointer vers une adresse comme
127.0.0.1.
Il faut toutefois garder à l’esprit qu’une modification du fichier hosts est locale au poste. Elle ne modifie pas le DNS utilisé par les autres utilisateurs.
Modifier le fichier hosts sous Windows
Sous Windows, le fichier se trouve ici :
C:\Windows\System32\drivers\etc\hosts
Ouvrez le fichier avec un éditeur de texte disposant des droits administrateur, ajoutez ou modifiez l’entrée souhaitée, puis enregistrez le fichier.
Par exemple :
192.0.2.10 www.exemple.com
Une fois la modification effectuée, le poste pourra utiliser cette correspondance locale lors de la résolution du nom.
Modifier le fichier hosts sous Linux et macOS
Sous Linux et macOS, le fichier se trouve généralement ici :
/etc/hosts
L’édition du fichier nécessite des droits administrateur.
Par exemple :
sudo nano /etc/hosts
Ajoutez ensuite la correspondance souhaitée :
192.0.2.10 www.exemple.com
Enregistrez le fichier puis quittez l’éditeur.
Note 💡
Le fichier
hostsest utile pour les tests, mais il ne doit pas être utilisé comme solution permanente pour gérer une infrastructure DNS. Une modification locale peut également être source de confusion : le poste peut continuer à utiliser une ancienne adresse alors que la zone DNS a été correctement modifiée.
Et si un site reste inaccessible après une modification DNS ? #
La première étape consiste à vérifier quelle adresse IP est réellement retournée depuis le réseau concerné.
Si l’ancienne adresse est encore retournée, plusieurs causes sont possibles : cache DNS local, cache du résolveur utilisé par le réseau ou TTL encore valide.
Dans ce cas, vider le cache DNS local peut permettre de forcer une nouvelle résolution depuis le poste.
Sous Windows, la commande suivante permet de vider le cache DNS du système :
ipconfig /flushdns
Sous macOS, la commande varie selon la version du système. Sur les versions récentes de macOS, utilisez :
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
Aucun message n’est généralement affiché lorsque l’opération s’est correctement déroulée.
Sous Linux, la commande dépend du service utilisé pour gérer le cache DNS. Sur une distribution utilisant systemd-resolved, utilisez :
sudo resolvectl flush-caches
Sur certaines installations utilisant nscd, le cache peut être vidé en redémarrant le service :
sudo systemctl restart nscd
Note 💡
Vider le cache DNS du poste ne supprime pas les informations éventuellement conservées par les résolveurs DNS situés en amont. Une ancienne adresse peut donc continuer à être retournée jusqu’à l’expiration du TTL.
Ceci conclut notre guide. Le Centre d’Expertise Client XPR reste à votre disposition.