Qu'est-ce que la délégation DNS ?

Dans une réponse à ma question précédente, j’ai remarqué ces lignes :

C’est normalement cette dernière étape de délégation qui est défaillante avec la plupart des configurations d’utilisateurs particuliers. Ils ont suivi le processus d’achat d’un domaine chez un registraire/fournisseur de services, mais ont ensuite omis de configurer le domaine pour pointer la délégation vers leurs propres serveurs de noms. Vous devez en fait indiquer au registraire où se trouvent vos serveurs de noms avant qu’il puisse mettre en place les enregistrements glue pour que votre étape de la délégation fonctionne.

Qu’est-ce que la délégation DNS ? Comment fonctionne-t-elle ? Une explication complète pour le domaine hypothétique abc.com serait utile.

En termes concrets, la délégation est très similaire à la façon dont un manager délègue la responsabilité des tâches à son équipe. Les résultats sont les mêmes, mais plusieurs personnes ont été impliquées dans le processus. Le manager reçoit la demande de travail, transmet la responsabilité à un autre membre de l’équipe, et soit le membre de l’équipe, soit le manager revient avec les résultats du travail. Tout cela repose sur le fait que le travail effectué par le membre de l’équipe est réellement correct et correspond à ce que le demandeur original a demandé (ou que le demandeur a bien demandé quelque chose de valide en premier lieu !).

Avec la délégation DNS, c’est assez similaire. Lorsque les serveurs de noms com sont interrogés pour trouver l’autorité de la zone example.com, ils délèguent souvent ce travail à des serveurs de noms séparés (en fait, dans la grande majorité des cas, ils délèguent effectivement la réponse à d’autres serveurs de noms). Lorsque vous enregistrez un domaine pour la première fois, disons notre domaine example.com, cela se fait souvent par l’intermédiaire d’un tiers appelé registraire. Il est courant pour les registraires de mettre en place leurs serveurs de noms pour la délégation et de servir une zone par défaut depuis ces serveurs de noms. Cette zone par défaut inclut les exigences de base pour servir cette zone sur Internet (les enregistrements SOA, NS et A associés à ces enregistrements NS).

Évidemment, si vous souhaitez prendre le contrôle de l’autorité du domaine, vous devez demander au registraire de déléguer le domaine à votre serveur de noms à la place. Différents registraires désignent ce processus de différentes manières : « changer les serveurs de noms », « utiliser un DNS tiers », « ajouter des enregistrements glue », etc. Le mécanisme sous-jacent reste le même. Vous fournissez, généralement, 2 ou plus « noms de serveurs de noms » (par exemple ns0.example.com et ns1.example.com) et les adresses IP auxquelles ns0 et ns1 se trouvent. Ils traitent ensuite la demande et la délégation est redirigée de votre registraire vers les serveurs de noms que vous avez fournis.

En termes techniques, c’est à ce moment-là que vous devez vous assurer que vos serveurs de noms sont opérationnels, servant le domaine example.com, avec un minimum d’un enregistrement SOA (enregistrement de début d’autorité), 1 ou plusieurs enregistrements NS et les enregistrements A (les IP) depuis lesquels ces enregistrements NS sont résolus :

example.com.   IN SOA ns0.example.com. hostmaster.example.com. ( 10 3600 900 604800 7200 )
           IN NS  ns0.example.com.
           IN NS  ns1.example.com.
ns0        IN A   192.0.2.8
ns1        IN A   192.0.2.44

(J’ai choisi des valeurs quelque peu arbitraires pour les valeurs SOA, les noms des enregistrements NS et les IP auxquelles ces serveurs de noms répondent.) Tout cela devra refléter la zone que vous servez.

Ce service DNS doit être visible de n’importe où sur Internet, et ne pas être bloqué par un pare-feu (c’est-à-dire que le port 53 UDP et TCP entrant doit être autorisé). Votre fournisseur d’accès ne doit pas non plus bloquer ce port (ce que certains fournisseurs font pour le trafic entrant destiné à ces ports).

Pour reprendre ma comparaison initiale, les serveurs de noms com sont les managers DNS, qui délèguent la zone example.com aux serveurs de noms (les membres de l’équipe) pour effectuer le travail de fournir les informations de zone de base (SOA, NS, A). Vous pouvez également servir tout enregistrement supplémentaire tel que les enregistrements de serveur de messagerie MX ou peut-être un enregistrement A pour votre adresse www.example.com.

Si ce serveur de noms ne fait pas le travail, retourne de mauvais résultats, ou qu’un tiers (pare-feu/FAI) bloque le travail, vous n’aurez pas de DNS fonctionnel et la délégation sera rompue.

Il est aussi utile de noter que le domaine ne DOIT PAS nécessairement être délégué à des serveurs de noms dans le même domaine, donc ns0.example.net et ns0.example.org pourraient tous deux être des serveurs de noms valides auxquels example.com pourrait être délégué. À condition que ces deux serveurs de noms servent le domaine example.com.

La raison pour laquelle plusieurs serveurs de noms sont requis est de fournir une redondance aux clients DNS, ce qui est important pour un Internet qui ne tombe pas en panne.