Les DNS (Domain Name System) est un protocole de la couche 7 du modèle OSI et une infrastructure importante d’internet.
Le fonctionnement générale n’est pas très compliqué, une fois compris.
Dans cet article, vous trouverez la description générale du fonctionnement des serveurs DNS sur internet.
Qu’est-ce que les DNS ? A quoi servent-ils ? comment changer les serveurs DNS ?
Table des matières
- 1 Qu’est-ce que les DNS ou serveurs de noms
- 2 Comment fonctionne la résolution DNS
- 2.1 Etape 1 – Envoyer une demande pour résoudre un nom de domaine
- 2.2 Etape 2 – Recherchez un IP localement (cache DNS)
- 2.3 Etape 3 – Contact les serveurs DNS du FAI récursif pour résoudre un nom de domaine
- 2.4 Etape 3 – Demande aux serveurs DNS en dehors de fournir une adresse IP
- 2.5 Etape 4 – Récupération de l’adresse IP
- 3 Quels sont les ports du protocole DNS ?
- 4 Sécurité des DNS (DoH, DNSSec) et attaques
- 5 DNS Menteur et Trojan DNS
- 6 Comment changer la configuration des serveurs DNS
- 7 Liens
Qu’est-ce que les DNS ou serveurs de noms
Le DNS est un protocole qui se charge d’effectuer la correspondance entre les adresses littérales et adresses IP.
Plus précisément, il assoie un nom d’hôte à une adresse IP (et inversement).
Cela permet donc de connaître l’adresse IP d’une adresse en lettre et inversement.
Par exemple, pour connaître l’adresse IP de www.malekal.com, on procède à une résolution.
D’où le nom Domain Name Service puisque c’est un service qui retourne les noms de domaines et adresse IP.
La plupart des applications, que ce soit votre navigateur internet ou jeux en ligne possèdent des adresses enregistrées.
Des interrogations ont donc lieu constamment pour récupérer l’adresse IP et permettre la connexion aux serveurs DNS.
Si la résolution n’est pas possible sur un ordinateur, vous rencontrez énormément de problème de connexion.
Sur Google Chrome, cela peut se traduire par l’erreur DNS_PROBE_FINISHED_NXDOMAIN
Exemple ci-dessous d’une résolution où on récupère l’adresse IP de l’adresse www.malekal.com :
Comment fonctionne la résolution DNS
Plusieurs étapes se succèdent lors d’une résolution DNS reposant sur la hiérarchie DNS.
Etape 1 – Envoyer une demande pour résoudre un nom de domaine
Lorsque vous tapez www.malekal.com dans un navigateur internet, afin de charger la page Web, votre ordinateur demande l’adresse IP. Les ordinateurs ne savent pas à l’avance où ils peuvent trouver les informations nécessaires, ils essaient donc de rechercher dans le cache DNS et toute source externe disponible.
Etape 2 – Recherchez un IP localement (cache DNS)
Pour maximiser les réponses, il existe beaucoup de cache afin de ne pas répéter les interrogations DNS.
En effet cela pourrait aussi encombrer internet ou les serveurs.
Avant d’aller en externe, votre ordinateur charge la base de données de cache DNS locale pour voir si vous avez déjà demandé l’IP pour ce nom de domaine. Chaque ordinateur a un cache temporaire avec les demandes DNS les plus récentes et tente de se connecter à des sources en ligne.
Lorsque le cache DNS dispose des données IP pour le site Web auquel vous essayez de vous connecter, la page se charge immédiatement. DNS Cache accélère ce processus de recherche car l’ordinateur contient les informations dont elle a besoin et n’a pas à transmettre la demande à votre FAI.
Sur Windows, on peut afficher le cache DNS avec la commande ipconfig depuis l’invite de commandes :
ipconfig /displaydns
Etape 3 – Contact les serveurs DNS du FAI récursif pour résoudre un nom de domaine
La base de données de cache DNS locale d’un ordinateur ne contient pas toujours les données nécessaires pour résoudre un nom de domaine internet. Dans ce cas, la demande va plus loin à votre fournisseur de services Internet (FAI) et à son serveur DNS.
Une fois qu’il obtient une demande, le résolveur cherche dans ses enregistrements pour fournir l’adresse IP correcte. Lorsque les informations nécessaires sont présentes dans les enregistrements mis en cache du serveur DNS du FAI, l’ordinateur récupère l’IP et se connecte au site Web.
Si le serveur DNS récursif du FAI ne peut pas résoudre le nom de domaine, il contacte d’autres serveurs DNS pour vous fournir les informations. C’est pourquoi nous les appelons des serveurs DNS récursifs.
Chaque fournisseur de services Internet a au moins une configuration de serveur DNS secondaire pour garantir une grande disponibilité maximale du service.
Etape 3 – Demande aux serveurs DNS en dehors de fournir une adresse IP
Les résolveurs DNS du FAI sont configurés pour demander à d’autres serveurs DNS l’adresse IP jusqu’à ce qu’ils puissent fournir des données au demandeur. Ce sont des requêtes DNS itératives.
Lorsqu’un client DNS envoie une telle demande, le premier serveur répondant ne fournit pas l’adresse IP nécessaire. Au lieu de cela, il dirige la demande vers un autre serveur plus bas dans la hiérarchie DNS, et celui-ci à l’autre jusqu’à ce que l’adresse IP soit complètement résolue. Il y a quelques arrêts dans ce processus.
- Les serveurs DNS racines (Root Domain Nameserver). Les serveurs racines eux-mêmes ne mappent pas les adresses IP vers les noms de domaine. Au lieu de cela, ils détiennent les informations sur tous les serveurs de noms de domaine de niveau supérieur (TLD) et pointent vers leur emplacement. TLD est la section la plus à droite d’un nom de domaine, par exemple, .com dans phoenixnap.com ou .org sur www.technology.org. Les serveurs racine sont essentiels car ils sont le premier arrêt pour toutes les demandes de recherche DNS.
- Serveur DNS de domaine (TLD Nameserver). Ces serveurs contiennent les données pour les domaines de deuxième niveau, tels que malekal.com. Auparavant, le serveur racine montrait l’emplacement du serveur TLD. Ensuite, le serveur TLD doit diriger la demande vers le serveur qui contient les données nécessaires pour le site Web que nous essayons d’atteindre.
- Serveur DNS d’autorité. Les serveurs faisant autorité sont la destination finale des demandes de recherche DNS. Ils remettent l’adresse IP du site Web aux serveurs DNS récursifs. Si le site a des sous-domaines, le serveur DNS local continuera d’envoyer des demandes au serveur faisant autorité jusqu’à ce qu’il résout finalement l’adresse IP.
Etape 4 – Récupération de l’adresse IP
Une fois que le serveur DNS récursif du FAI obtient l’adresse IP en envoyant plusieurs requêtes DNS itératives, elle la renvoie enfin à votre ordinateur. L’enregistrement de cette demande reste maintenant mis en cache sur votre ordinateur. Le navigateur internet peut ensuite récupérer cette IP à partir du cache et la connecter au serveur du site Web.
Lorsque nous le décomposons comme ça, le processus de recherche DNS semble prendre beaucoup de temps. En fait, il faut des millisecondes, avec peut-être quelques millisecondes de plus si le dossier DNS n’est pas dans le cache local. Dans les deux cas, les utilisateurs ne peuvent pas faire la différence. Il s’agit d’une description de base du fonctionnement du DNS, et cela devrait vous donner une idée de ce qui se passe sous le capot lorsque vous parcourez ou envoyez un e-mail.
Quels sont les ports du protocole DNS ?
D’un point de vue réseau, les requêtes DNS se font sur le port 53 en UDP.
Ce protocole n’est pas chiffré et les requêtes se font en clair sur le réseau.
Il est donc tout à fait possible de voler des données à travers des attaques Attaque Man in the Middle (MITM).
Les clients DNS sur Windows et Linux
Les deux OS proposent des outils en ligne de commandes pour effectuer des résolutions : nslookup et dig.
L’article suivant présente ces deux outils avec les commandes les plus utiles.
Problèmes et erreurs DNS
Parfois on peut rencontrer des problèmes de résolutions DNS.
En général, des erreurs DNS s’affichent.
Pour diagnostiquer et résoudre, un article complet existe sur le site :
Sécurité des DNS (DoH, DNSSec) et attaques
Par défaut, les requêtes ne sont pas chiffrées, ni authentifiée.
Cela implique deux choses :
- Un attaquant peut les voir et donc savoir ce que vous faites
- Il peut aussi les manipuler
Cela à travers des attaques man in the middle.
Ainsi il existe des protocoles qui permettent de sécuriser les requêtes DNS.
- DNS-over-TLS ou DNS-over-HTTPS — Apporte le support qui permet le chiffrement des requêtes, toutefois, celle-ci peut révéler le site que vous visitez.
- DNSCrypt : un autre protocole qui permet de chiffrer les connexions DNS.
- DNSSEC — Permet d’authentifier les requêtes afin de les sécuriser.
- DNS Over HTTPS (DoH) : Il s’agit d’utiliser le protocole HTTPS pour effectuer des requêtes . On bénéficie alors des avantages de ce dernier. Mozilla Firefox le support par défaut.
Pour plus d’informations :
Mais ils ne sont encore que très peu utilisés.
Pour plus d’informations sur les aspects de sécurité, lire notre article :
- Sécuriser les connexions DNS avec Firefox ou Chrome
- Comment activer DNS over HTTPS (DoH) dans Windows 10
DNS Menteur et Trojan DNS
Ce procédé consiste à retourner une adresse IP erronée afin de falsifier le résultat.
Cela peut permettre des redirections lors de la consultation d’un site internet par exemple.
Ces méthodes sont en général utilisées pour filtrer l’accès à des sites internet.
Plusieurs cas :
- On l’utilise pour filtrer les publicités ou contrôle parental. Par exemple, OpenDNS l’utilise pour filtrer l’accès à un site connu pour être malveillant ou pour du filtrage de contrôle parental.
- Un gouvernement pour filtrer l’accès à un site internet
Mais on parle souvent de menteurs pour les gouvernements.
Ces derniers forcent les fournisseurs d’accès à bloquer l’accès au site en modifiant les résultats sur les serveurs.
En France, on utilise ce procédé pour bloquer les sites terroristes.
Voici un article plus complet :
Enfin ils sont aussi une cible des logiciels malveillants qui peut permettre des redirections vers des sites publicitaires ou phishing : Trojan.DNSChanger
Comment changer la configuration des serveurs DNS
Suivez ces tutoriels pour modifier les serveurs DNS :
- Comment changer les DNS de Windows
- Comment changer les DNS de Windows 10
- Comment changer les DNS de Windows 11
- Comment changer la configuration des serveurs DNS sur Linux
Liens
- DNS et serveurs de noms : comment ça marche
- La hiérarchie DNS : serveurs DNS racines, d’autorité et DNS récursifs et itératives
- Choisir le meilleur DNS rapide : le comparatif
- Quel est le meilleur DNS pour les jeux et gaming ?
- Les meilleurs DNS : la liste COMPLÈTE
- DNS Benchmark : trouver le meilleur DNS et le plus rapide
- 7 logiciels pour changer les DNS sur Windows
- Liste des serveurs DNS des principaux FAI
- Comment changer les DNS de Windows 10
- Comment changer les DNS de Windows 11
- DNS Jumper : gérer les DNS de Windows facilement
- Comment changer les serveurs DNS d’Ubuntu
- Comment changer la configuration des serveurs DNS sur Linux
- Comment activer DNS over HTTPS (DoH) dans Windows 10
- Comment activer DNS sur HTTPS (DoH) dans Windows 11
- Comment connaître ses DNS (Windows, Linux et Android)
- Comment connaître le DNS d’une adresse IP (DNS inversé)
- Comment tester les DNS (fuites DNS, Sécurité DNS)
- DNS Google : accélérer votre connexion internet
- Chiffrement DNS : DNS over HTTPS et over TLS
- Comment activer les DNS Over HTTPS (DoH) sur Firefox, Chrome, Edge, Brave ou Opera
- Comment changer les DNS de Windows vers 1.1.1.1 CloudFlare
- RethinkDNS : Bloqueur de publicité, Firewall, DoH, DNSCrypt pour Android
- NextDNS : Bloquer les publicités et les traqueurs
- YogaDNS : Client DNS avancé
- DNS public européen : Utiliser dns0.eu (Zero, Kids)
- DNS FDN : changer de serveurs DNS
- Comment installer DNSCrypt sur Linux pour sécuriser les DNS
- Comment anonymiser ses DNS (Anonymous DNS)
- Le serveur DNS ne répond pas
- Configurer les paramètres de partages avancés de Windows 10
- Résoudre les erreurs (ERR_) sur Google Chrome ou Edge