Aller au contenu principal

Guides / Corriger : guides pour les erreurs que l'on rencontre vraiment

Erreur DNS : comment trouver la vraie cause

« Erreur DNS » n’est pas un problème précis ; c’est l’étiquette qu’un navigateur, un routeur, ou un collègue frustré utilise pour n’importe quel échec de l’étape de résolution de nom, et la correction dépend entièrement de laquelle vous avez. Cette page est un point de départ, pas un diagnostic : lisez les étapes de tri ci-dessous, lancez les deux ou trois vérifications qui s’appliquent, et elles vous mèneront au guide qui couvre exactement votre symptôme.

Ce que recouvre « erreur DNS »

Sous cette seule expression se cachent plusieurs échecs distincts qui n’ont rien en commun sauf l’endroit où ils se produisent. Un navigateur peut dire que le nom n’existe pas du tout. Il peut dire que le résolveur n’a jamais répondu. Il peut finir par charger la page, mais lentement, après un blocage visible. Tout un bureau peut perdre la capacité de résoudre n’importe quel nom pendant que la connexion internet elle-même reste active. Ou les enregistrements de votre propre site peuvent cesser de fonctionner pour des visiteurs d’une région tout en paraissant complètement normaux pour vous. Chacun de ces cas a une cause et une correction différentes, et aucun ne se résout avec le conseil générique de « redémarrez votre routeur et réessayez », qui corrige exactement l’un des cinq.

Le reste de cette page est un court ensemble de questions. Répondez-y dans l’ordre et vous arriverez au guide précis qui correspond à ce qui se passe, au lieu de parcourir cinq listes de correction sans rapport en espérant que l’une d’elles aide.

Est-ce seulement cet appareil, ou tous les appareils ?

Essayez la même résolution depuis un téléphone sur les données mobiles, pas votre Wi-Fi. Si le nom se résout là-bas et échoue sur votre portable, le problème est local : un mauvais réglage DNS sur cette seule machine, un cache bloqué, un VPN accroché à des résolveurs qui ne sont plus joignables, ou un logiciel de sécurité qui intercepte le DNS de son propre chef. Si cela échoue aussi sur le téléphone, sur un réseau complètement différent, passez à la question suivante, parce que la faute n’est ni sur votre appareil ni même sur votre réseau local.

Est-ce seulement un site, ou est-ce que tout est cassé ?

Essayez de résoudre un nom connu dont vous êtes sûr qu’il fonctionne, comme un grand moteur de recherche. Si cela échoue aussi, votre propre résolveur est injoignable ou ne répond pas, ce qui est un problème de routeur ou de réseau, pas quelque chose de cassé sur le seul site que vous essayiez de joindre. Si le nom connu se résout bien et que seul le site que vous vouliez échoue, le problème se situe sur ce domaine précis : ses enregistrements, ses serveurs de noms, ou un changement encore en train de se propager vers certains résolveurs et pas d’autres.

Une résolution contre un résolveur public fonctionne-t-elle ?

Ce test unique fait plus de travail de tri que tout le reste ici, parce qu’il sépare « mon réseau » du « domaine lui-même » en une seule commande :

nslookup example.com 8.8.8.8
dig example.com @1.1.1.1

Remplacez example.com par le nom réel qui échoue. Trois résultats sont possibles, et chacun pointe vers un endroit différent :

  • Vous obtenez une réponse normale. Le domaine se résout bien depuis l’extérieur. Votre résolveur par défaut, quel que soit celui que votre appareil ou routeur est configuré pour utiliser, est la pièce cassée. C’est DNS server not responding s’il échoue en silence, ou un problème de cache si une résolution qui fonctionnait a cessé de fonctionner.
  • Vous obtenez une réponse explicite « ce nom n’existe pas » (NXDOMAIN). Un résolveur public, qui n’a aucune raison d’avoir quoi que ce soit en cache, vous dit que l’enregistrement n’existe vraiment pas en ce moment, ou qu’une réponse négative obsolète est mise en cache quelque part dans la chaîne. Ce message précis et ce qu’il faut vérifier ensuite, c’est DNS_PROBE_FINISHED_NXDOMAIN.
  • Vous obtenez une réponse, mais elle prend un temps sensiblement long ou le délai est incohérent d’une exécution à l’autre. Le résolveur fonctionne, juste lentement. Ajoutez +stats à une requête dig ou observez le délai à l’œil nu. C’est comment corriger une résolution DNS lente, une cause et une correction différentes des deux précédentes.

Ce que resolvectl status vous dit sous Linux

Sur une machine Linux utilisant systemd-resolved, une commande montre ce que votre système est réellement configuré pour demander, et c’est là qu’un nombre surprenant de signalements « le DNS est cassé » se révèlent faux dès le départ :

resolvectl status

Lisez la ligne « Current DNS Server » pour l’interface que vous utilisez. Si elle liste une adresse qui n’est pas le résolveur attendu, par exemple le serveur interne d’un VPN qui n’est plus joignable, ou une ancienne adresse de routeur d’un réseau que vous avez quitté, ce décalage est tout le problème, et aucune quantité de vidage de cache ne corrige une mauvaise adresse. Si le serveur listé correspond à ce que vous attendez et que les résolutions échouent quand même, la configuration du résolveur n’est pas le problème et la faute est plus loin dans la chaîne, retour aux questions ci-dessus.

Un enregistrement DNS a-t-il changé récemment ?

Si vous ou quelqu’un de votre équipe avez modifié un enregistrement, déménagé l’hébergement, ou changé de fournisseur DNS ces derniers jours, et que l’erreur est incohérente, fonctionnant pour certains et pas pour d’autres, ce n’est pas un enregistrement cassé. C’est un comportement attendu pendant que d’anciennes réponses en cache expirent à leur propre rythme sur des résolveurs différents. Cette situation précise, y compris comment savoir si le changement s’est réellement bien enregistré, est couverte dans comment vérifier la propagation DNS. Ne traquez pas une « erreur DNS » comme un bug si le calendrier correspond à un changement récent ; laissez-lui d’abord la fenêtre du TTL.

Questions fréquentes

De quel guide ai-je besoin si le navigateur affiche un code d’erreur précis ?

Cherchez ce code exact. DNS_PROBE_FINISHED_NXDOMAIN signifie que le nom n’existe pas et est couvert sur sa propre page, liée plus haut. Un message générique « DNS server not responding » ou « impossible de trouver le serveur » sans code précis correspond à la deuxième question de cette page : testez directement un résolveur public et voyez lequel des trois résultats vous obtenez.

J’ai lancé les vérifications et tout se résout bien maintenant. Que s’est-il passé ?

La plupart des échecs DNS sont passagers : un résolveur a été brièvement surchargé, une entrée de cache a expiré en plein dépannage, ou un incident réseau s’est résolu de lui-même. Si tout se résout proprement maintenant et le reste, il n’y a rien de plus à corriger. Si ça revient par intermittence, ce schéma en lui-même est un indice, et il vaut la peine de vérifier s’il coïncide avec un moment précis de la journée, un réseau, ou une application.

Une erreur DNS est-elle la même chose qu’un site en panne ?

Non, et la distinction compte. Une erreur DNS signifie que le nom ne s’est jamais résolu en une adresse, donc aucune connexion n’a jamais été tentée. Un site en panne signifie généralement que le nom s’est résolu correctement mais que le serveur n’a pas répondu, a refusé la connexion, ou a renvoyé une page d’erreur. Le test du résolveur public ci-dessus vous dit dans laquelle des deux situations vous êtes : une adresse revient, ou elle ne revient pas.

Pourquoi le même domaine fonctionne-t-il pour moi mais pas pour un collègue ?

C’est presque toujours de la mise en cache, pas un enregistrement cassé. Des réseaux différents utilisent des résolveurs différents, chacun avec sa propre copie en cache d’une réponse et sa propre date d’expiration. L’un de vous voit peut-être un résultat obsolète en cache pendant que le résolveur de l’autre s’est déjà mis à jour. Confirmez l’enregistrement actuel et correct directement auprès des serveurs de noms du domaine avant de supposer que quelque chose est réellement cassé.

Dois-je simplement passer à un résolveur DNS public et arrêter le dépannage ?

Passer à 1.1.1.1 ou 8.8.8.8 est un choix permanent raisonnable et cela élimine rapidement un résolveur de FAI ou de routeur cassé. C’est une vraie correction quand votre résolveur par défaut se révèle être le problème, pas juste un contournement, mais cela n’aidera pas si le problème se trouve du côté des propres serveurs de noms du domaine plutôt que du résolveur qui vous répond.

Où puis-je vérifier si un nom se résout différemment selon les pays ?

Un résolveur sur votre propre réseau ne vous montre qu’un seul point de vue, et les réponses DNS diffèrent réellement selon la région pendant une migration ou une panne partielle. Lancez la même résolution depuis plusieurs emplacements à la fois avec l’outil de requête DNS, qui vérifie depuis plusieurs pays en une seule passe et montre où une réponse diffère ou expire.

Vérifier maintenant

Lancez la vérification gratuite sur votre propre site, sans créer de compte.

Dns query

Surveiller en permanence

Soyez alerté dès que quelque chose casse : HostTracker vérifie depuis plus de 300 emplacements et vous prévient par e-mail, SMS, Slack, Telegram et plus encore.

Fonctionnalités HostTracker

Plus dans cette section: Corriger : guides pour les erreurs que l'on rencontre vraiment