Conçu en 1983, le DNS (Domaine Name System) a significativement contribué au développement d’Internet. Ce service distribué a en effet simplifié la résolution des noms de serveur sur le Web. Dans la pratique, le système a permis d’associer plus facilement les noms de domaines et les adresses IP. Il favorise ainsi l’intégration de nouvelles entrées et la recherche d’hôtes déjà présents sur le réseau.
Quel est le rôle d’un serveur DNS ?
Le rôle d’un serveur DNS se résume à résoudre des noms de domaine. Cependant, cette fonction est assez difficile à appréhender sans savoir au préalable qu’est-ce qu’un DNS. Pour comprendre ce système, la solution la plus simple consiste à le rapprocher d’un annuaire. Seulement, le DNS associe un nom de domaine et une adresse IP, au lieu d’une personne et d’un numéro de téléphone.
Chaque jour, vous utilisez des noms de domaine pour consulter des informations sur Internet. Ils se présentent sous la forme « site.com », « site.org », « site.fr » … Votre navigateur se réfère, en revanche, à des adresses IP pour interagir avec les serveurs du site. Elles sont formées de 4 groupes de nombres décimaux de 0 à 255 en IPv4. Les adresses passent à 8 groupes de valeurs hexadécimales avec le protocole IPv6.
Après 9, ce type de numération utilise les lettres de A à F pour compléter le système en base 16. Vous aurez donc 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F avant de revenir à 0. Ces codes sont assez compliqués pour les internautes, mais adaptés aux ordinateurs. Ils offrent en effet une myriade de combinaisons possibles et encore plus avec l’IPv6. Le serveur DNS joue donc le rôle de traducteur entre le nom et l’IP.
Quels sont les types de requêtes DNS ?
Les requêtes DNS permettent d’indiquer aux serveurs la nature de la demande et les informations recherchées. Elles se présentent généralement sous trois formes, à savoir les requêtes récursives, itératives et non récursives. Avec la requête récursive, le résolveur envoie une demande pour obtenir une adresse IP ou confirmer son absence du serveur DNS.
Sur une requête itérative, le client DNS autorise le renvoi vers la réponse la plus pertinente possible. Le serveur interrogé fournira ainsi une recommandation, s’il ne trouve aucune correspondance. Il oriente souvent vers un serveur faisant autorité ou un serveur TLD (top level domain). En l’absence de résultat, l’autorité recommandée renverra vers un autre niveau de serveurs. Le processus itératif se poursuivra jusqu’à l’obtention d’une réponse satisfaisante ou l’expiration des délais (timeout).
Enfin, une requête non récursive est émise lorsque le résolveur se met à interroger le serveur DNS sur une adresse à sa disposition. Il bénéficie d’emblée d’un accès, s’il est le serveur de référence de l’enregistrement DNS. La réponse peut aussi être stockée dans son cache. Dans ces cas, l’envoi d’une nouvelle requête n’est pas nécessaire. Une réponse antérieure peut être réutilisée, évitant ainsi les surcharges de serveurs et la surconsommation de bande passante
Comment fonctionne une requête DNS ?
Il est important de comprendre le fonctionnement du système de recherches pour répondre à la question « qu’est-ce qu’un DNS ? ». À la base, le DNS fait correspondre un nom de domaine à une adresse IP précise. Cependant, cette opération n’est pas aussi simple et comporte plusieurs étapes en arrière-plan. La complexité du processus a d’ailleurs causé la panne Facebook d’octobre 2021, lorsque ses serveurs DNS sont devenus introuvables.
Concrètement, vous envoyez une première requête vers un résolveur DNS récursif en renseignant une adresse dans votre navigateur. Le résolveur récursif de votre FAI ou de votre entreprise commencera par interroger un serveur racine DNS. Ce dernier dirigera la requête vers l’adresse d’un serveur TLD (domaine de premier niveau) tel que « .com », « .org », « .net » …
Le TLD redirigera ensuite la requête DNS vers le serveur de nom de domaine dédié, par exemple « site.net ». À ce stade, le résolveur devrait obtenir l’adresse IP du site demandé et la transmettre à votre navigateur Internet. Votre logiciel pourra ainsi y envoyer une requête HTTP et recevoir le contenu à afficher depuis les serveurs de la plateforme.
Quelle requête DNS dois-je entrer pour connaître les serveurs DNS ?
Vous avez besoin d’utiliser l’interface de commandes pour connaître votre serveur DNS. Sous Windows, vous pourrez l’ouvrir en cliquant sur Démarrer, Tous les programmes, Accessoires, puis Invite de commandes. Entrez ensuite la ligne : ipconfig/all | findstr « DNS Servers ». Vous pouvez aussi supprimer le filtre et utiliser « ipconfig ». Toutefois, il faudra chercher le DNS parmi toutes les données affichées.
Il s’agit ici de l’adresse DNS par défaut de votre routeur ou de votre fournisseur d’accès Internet. Si vous avez préféré configurer le serveur DNS, vous serez dirigé vers l’adresse choisie pour votre système. Il est également possible de personnaliser le DNS sur un routeur. De ce fait, la réponse obtenue ne correspond pas forcément au serveur DNS de votre FAI. Tout dépendra en réalité de vos installations.
Vous pouvez aussi découvrir votre serveur DNS avec la commande : nslookup [adresse ip]. D’ailleurs, la ligne de commande « nslookup » résout les noms DNS, sur tous les systèmes d’exploitation. Il suffit d’ouvrir l’équivalent du CMD de Windows dans l’OS utilisé. Dans tous les cas, l’outil vous fournira le nom et l’adresse du DNS.
La différence entre DNS public et DNS privé
La question « qu’est-ce qu’un DNS ? » permet de découvrir les bases sur les noms de domaine. Cependant, ce système est complexe en raison des exigences de sécurité et de praticité des utilisateurs. Internet est par ailleurs constitué de réseaux ouverts et fermés. Dans ce contexte, il ne faut pas confondre DNS publics et privés.
Par définition, un serveur DNS public est accessible à tous et ne requiert aucune authentification. Il est donc ouvert à l’Internet public et n’utilise pas de pare-feu pour limiter les accès. Un serveur DNS privé est, en revanche, associé à un parc d’IP et à un réseau fermé. Ainsi, les internautes ne peuvent pas y accéder depuis le Web. Cette architecture inclut en général un pare-feu, des contrôleurs de domaines et plusieurs serveurs privés (serveur de messagerie, d’applications, de fichiers, etc.).
Vous pouvez aussi rencontrer un DNS privé sur un VPC (Virtual Private Cloud). Toutefois, vous devez accorder une attention particulière à la configuration, si vous comptez utiliser un API. Cette architecture exige en effet une certaine expertise pour éviter les erreurs de résolution. Néanmoins, les offres de cloud computing prévoient souvent une assistance technique pour ce type d’opération.
Découvrez aussi notre article sur le DNS Anycast
Image de couverture Par Eny Setiyowati/ Shutterstock