DNS

Disponible

Histoire du DNS

Dans les années 70, les gens en avaient assez de se souvenir des adresses IP des serveurs auxquels ils voulaient accéder. Dans le même temps, l'idée est venue d'utiliser un nom plus simple et plus mémorable au lieu d'une adresse d'hôte numérique.

Les travailleurs de l'Institut de recherche de Stanford ont créé un fichier texte HOSTS.TXT , qui contenait une liste de noms de chaînes et leurs adresses numériques correspondantes d'ordinateurs sur l'ARPANET.

Les adresses ont été attribuées manuellement. Pour demander un nom d'hôte et une adresse ou ajouter un ordinateur au fichier principal, les utilisateurs ont contacté le centre d'information réseau de Stanford par téléphone pendant les heures ouvrables.

Au début des années 1980, la gestion d'une seule table d'hôte centralisée était devenue lente et fastidieuse, et le réseau grandissant avait besoin d'un système de nommage automatique pour gérer les problèmes techniques et de personnel.

En 1984, quatre étudiants de l'UC Berkeley ont écrit la première version du système de noms de domaine hiérarchique. Il est maintenant largement utilisé, en particulier sur les systèmes Unix, et reste le logiciel DNS le plus utilisé sur Internet.

Présentation du DNS

Le système de noms de domaine (DNS) est un système de distribution permettant de stocker et de récupérer des informations sur les domaines. Il est le plus souvent utilisé pour obtenir une adresse IP à partir d'un nom d'hôte (ordinateur ou périphérique), obtenir des informations de routage de courrier et/ou servir des hôtes pour les protocoles d'un domaine.

Le système est organisé sous la forme d'une certaine hiérarchie de serveurs DNS interagissant selon un certain protocole. La base pour comprendre le DNS est la compréhension de la structure hiérarchique du nom et des zones.

Chaque serveur responsable d'une zone de domaine peut transférer la responsabilité d'une autre partie du domaine à un autre serveur, ce qui permet d'attribuer la responsabilité de la pertinence de l'information aux serveurs de divers organismes qui ne sont responsables que de "leur" partie du domaine. nom de domaine.

Le système DNS contient une hiérarchie de serveurs DNS correspondant à la hiérarchie de zone. Chaque zone est prise en charge par au moins un serveur DNS faisant autorité qui héberge des informations sur le domaine.

Important! Le nom et l'adresse IP ne sont pas nécessairement liés l'un à l'autre. Une adresse IP peut avoir plusieurs noms de domaine, ce qui vous permet de prendre en charge de nombreux sites Web sur un seul ordinateur (c'est ce qu'on appelle l'hébergement mutualisé ).

Cela peut aussi être l'inverse - plusieurs adresses IP peuvent être associées à un seul nom de domaine : cela vous permet de créer un équilibrage de charge et est activement utilisé dans les réseaux CDN .

Pour augmenter la stabilité du système, de nombreux serveurs contenant des informations identiques sont utilisés, et le protocole dispose de moyens pour maintenir le synchronisme des informations situées sur différents serveurs. Il y a 13 serveurs racine, leurs adresses ne changent pratiquement pas.

Intéressant! Le protocole DNS utilise le port TCP ou UDP 53 pour répondre aux requêtes. Traditionnellement, les demandes et les réponses sont envoyées sous la forme d'un seul datagramme UDP. TCP est utilisé lorsque la taille des données de réponse dépasse 512 octets.

Enregistrements DNS

Le serveur DNS stocke un ensemble de paramètres pour chaque nom de domaine. Il s'agit d'enregistrements concernant le nom de domaine, son adresse IP, ainsi que diverses informations de service.

Il existe plusieurs dizaines de ces entrées au total, nous ne considérerons donc que les plus populaires d'entre elles :

UN Adresse adresse IP
AAAA Adresse IPv6 Adresse au format IPv6
CNAME Nom canonique Nom canonique pour alias
MX échangeur de courrier Adresse de passerelle de messagerie pour le domaine
N.-É. nom du serveur L'adresse du nœud responsable de la zone du domaine
SOA Début de l'autorité Indication de l'autorité de l'information
VRS sélection du serveur Spécification des emplacements de serveur pour les services
RTP aiguille Correspondance de nom d'adresse - Correspondance inversée pour A et AAAA
SMS chaîne de texte Écrire des données binaires arbitraires, jusqu'à 255 octets

Les plus intéressants ici sont :

  • L' enregistrement A vous permet de spécifier une adresse IP qui correspond à un domaine.
  • CNAME vous permet de définir un synonyme pour le nom, par exemple, www.codegym.cc == codegym.cc.
  • L'enregistrement MX contient des informations sur le serveur de messagerie : que faire si une lettre arrive à xxx@codegym.cc.
  • NS - indique l'adresse du serveur DNS, qui contient des informations sur ce domaine. Utile lorsque les enregistrements sont mis en cache et stockés sur des nœuds non natifs.

Recherche d'adresse IP

Voyons comment fonctionne le système DNS.

Disons que vous avez tapé api.codegym.cc dans votre navigateur. Le navigateur contactera le service DNS local et vous demandera de lui donner une adresse IP pour le domaine api.codegym.cc. Voici ce qui va se passer ensuite...

Tout d'abord, le service DNS vérifie si ce domaine se trouve dans le fichier d'hôtes local sur votre ordinateur. Si c'est le cas, il en prend l'adresse IP. Si ce n'est pas le cas, il envoie une requête au serveur DNS qu'il connaît : "Quelle est l'adresse IP de api.codegym.cc ?".

Cependant, le serveur DNS peut ne rien savoir non seulement du nom demandé, mais même de l'ensemble du domaine codegym.cc. Dans ce cas, le serveur contacte le serveur racine - par exemple, 198.41.0.4. Ce serveur dit : "Je n'ai aucune information sur cette adresse, mais je sais que 204.74.112.1 est responsable de la zone ru."

Ensuite, le serveur DNS envoie sa requête à 204.74.112.1, mais il répond : "Je n'ai aucune information sur ce serveur, mais je sais que 207.142.131.234 est responsable de la zone codegym.cc.". Enfin, la même requête est envoyée à un troisième serveur DNS et reçoit une réponse - une adresse IP, qui est transmise au client, c'est-à-dire au navigateur.

Dans ce cas, lors du processus de recherche d'une adresse IP par son nom, les règles suivantes ont fonctionné :

  • Le navigateur a envoyé une requête récursive à un serveur DNS connu (en réponse à ce type de requête, le serveur doit renvoyer une adresse IP, ou une réponse vide et un code d'erreur NXDOMAIN).
  • Le serveur DNS qui a reçu la requête du navigateur envoyait successivement des requêtes non récursives, auxquelles il recevait des réponses d'autres serveurs DNS, jusqu'à ce qu'il reçoive une réponse du serveur responsable de la zone demandée.
  • Les autres serveurs DNS mentionnés traitaient les demandes de manière non récursive (et n'auraient probablement pas traité les demandes de manière récursive, même si une telle exigence figurait dans la demande).

Il est parfois possible que le serveur demandé envoie une requête récursive à un serveur DNS "en amont" et attende une réponse prête.

Important! Avec le traitement récursif des requêtes, toutes les réponses passent par le serveur DNS et celui-ci a la possibilité de les mettre en cache. Une demande répétée pour les mêmes noms de domaine ne va généralement pas au-delà du cache du serveur et les appels vers d'autres serveurs ne se produisent pas du tout.

Le temps de cache autorisé pour les réponses vient avec les réponses (champ TTL de l'enregistrement de ressource).

fichier hosts

Nous avons remarqué que la première recherche se fait dans le fichier hosts local. C'est l'héritier du fichier HOSTS.TXT, qui a été inventé à l'époque d'ARPANET. Oui, il existe toujours et est toujours utilisé.

Il est situé le long du chemin :

  • /etc/hosts sous Linux.
  • %SystemRoot%\system32\drivers\etc\hosts sous Windows.
  • /system/etc/hosts sous Android.

Généralement, le fichier inclut une définition d'emplacement pour le nœud localhost :

127.0.0.1   	localhost

Sa structure est très simple : vient d'abord l'adresse IP, puis le nom de domaine.

Utile

A l'aide du fichier hosts, il est possible de filtrer les publicités en redirigeant les adresses de domaine des bannières vers l'adresse 127.0.0.0, 127.0.0.1 ou 0.0.0.0.

L'utilisation de 127.0.0.1 n'est généralement pas recommandée, car elle entraîne un délai de réponse et des retards associés si le serveur n'existe pas ou est mal configuré. Et si vous mappez un domaine publicitaire sur l'adresse IP 0.0.0.0, toutes les requêtes qui lui seront adressées tomberont immédiatement).

Serveurs DNS publics

Vous obtenez généralement un serveur DNS avec votre service Internet lorsque vous le connectez. Mais un tel serveur DNS gratuit n'est pas toujours la meilleure option. De plus, vous ne voudrez peut-être pas envoyer une requête avec le nom de domaine chaque fois que vous visitez un site au serveur DNS de votre FAI.

Par conséquent, de nombreuses personnes préfèrent passer à des serveurs DNS publics gratuits. Premièrement, ils sont très rapides et disposent d'un grand cache de noms de domaine. Vous obtiendrez un chargement et une disponibilité du site plus rapides avec un risque minimal de problèmes techniques.

Deuxièmement, la sécurité. Certains services DNS peuvent bloquer l'accès aux sites de phishing et malveillants et proposer un filtrage de contenu pour protéger les enfants contre les contenus inappropriés en ligne.

Ces serveurs DNS peuvent même lutter contre les escrocs. Par exemple, vous allez sur un faux site Web de banque, et le serveur DNS vous donnera non pas l'adresse IP des escrocs, mais son service de sécurité.

Liste de ces serveurs

nuageux 1.1.1.1
1.0.0.1
Cloudflare promet de ne pas utiliser les données des visiteurs pour diffuser des publicités et de ne jamais graver les adresses IP source de la demande sur le disque.
DNS public de Google 8.8.8.8
8.8.4.4
Stocke des informations complètes sur l'adresse IP de l'appareil demandeur pendant environ 24 à 48 heures pour le dépannage et les diagnostics
DNS sécurisé Comodo 8.26.56.26
8.20.247.20
Bloque les sites de phishing, mais avertit également si vous essayez de visiter des sites contenant des logiciels malveillants, des logiciels espions
Yandex.DNS 77.88.8.8
77.88.8.1
Service DNS gratuit d'un moteur de recherche russe populaire
Commentaires
  • Populaires
  • Nouveau
  • Anciennes
Tu dois être connecté(e) pour laisser un commentaire
Cette page ne comporte pas encore de commentaires