Le système de noms de domaine (Domain Name System ou DNS) est l’un des protocoles Internet les plus importants. Il est d’ailleurs souvent surnommé « l’annuaire d’Internet », au grand dam de la plupart des experts DNS. Car par essence, le DNS est un annuaire décentralisé. Une autre analogie possible consiste à comparer le DNS aux panneaux de signalisation que l’on trouve sur les routes du monde entier : il donne le chemin.

Le résolveur DNS, communément appelé « outil de recherche DNS », traduit un nom d’hôte individuel en adresse IP.

Supposons, par exemple, que l’on souhaite consulter le site Web de F5. Plutôt que de mémoriser l’adresse physique (IP) du serveur Web de F5, il suffit de saisir « www.f5.com » dans le navigateur Web, et le DNS fournira l’adresse IP correcte au système d’exploitation.

Historiquement, le DNS est un concept intéressant. Il s’agit d’un protocole ancien ; la publication de la toute première RFC (« Request for Comments », littéralement « demande de commentaires ») remonte à 1984. Le DNS a évolué depuis ses débuts, à un rythme accéléré ces dernières années avec l’introduction des protocoles DNS-over-TLS (DoT) et DNS-over-HTTPS (DoH). Le protocole DoT ajoute le chiffrement TLS (Transport Layer Security). Le protocole DoH constitue une alternative au DoT, dans laquelle les requêtes et les réponses DNS sont chiffrées et envoyées via HTTPS (au lieu d’être envoyées non chiffrées en UDP). À l’instar du protocole DoT, le protocole DoH empêche les attaquants de falsifier ou de modifier le trafic DNS (comme les attaques de l’homme du milieu ou man-in-the-middle). De plus, en chiffrant le trafic DNS, il protège les informations sensibles.

C’est toujours le DNS !

« C’est toujours le DNS ! » : voilà une phrase qui semble familière à tous les professionnels du secteur informatique. C’est en général ce qui se dit lorsque quelque chose cloche. En effet, quand le DNS plante, cela ne passe pas inaperçu.

Le fait est que le DNS est souvent considéré comme un acquis. Une fois qu’il est opérationnel, on a tendance à l’oublier. Cela inclut la surveillance des performances et même la façon dont l’infrastructure a été construite initialement. Or, ce n’est pas une situation idéale, et cela signifie que des erreurs commises au départ peuvent entraîner des problèmes opérationnels considérables au fil du temps.

Parmi les erreurs de configuration courantes, citons :

> l’exécution de serveurs DNS au même emplacement, ce qui provoquerait une panne DNS en cas de panne de l’emplacement;

> le fonctionnement de l’infrastructure DNS à partir d’un réseau unique (Autonomous System/ASN), ce qui entraînerait également une panne DNS en cas de problèmes de réseau ;

> l’absence de diversité des logiciels (c’est-à-dire l’exécution du même logiciel sur tous les serveurs DNS, ce qui permettrait à un bug d’affecter tous les serveurs en fonctionnement en même temps).

Lutter contre les pannes

Parmi les pannes DNS qui ont fait les gros titres de l’actualité, outre celles subies par Akamai (juillet 2021) et Cloudflare (juillet 2020), nous pouvons bien évidemment citer celle subie par Facebook qui, il y a quelques semaines, a connu un interruption totale de ses services durant plusieurs heures. Pour reprendre l’analogie exprimée plus haut, cette attaque pourrait s’apparenter au fait que tous les panneaux de signalisation auraient été retirés, rendant impossible la circulation, la navigation.

Ce qu’il faut comprendre, c’est que des pannes DNS se produiront toujours, quelle que soit la redondance des systèmes. Qu’elles soient causées par des problèmes de routage, des bug logiciels ou une erreur humaine, il est presque impossible de garantir qu’un système sera toujours opérationnel.

L’un des meilleurs moyens d’éviter une panne est alors d’utiliser plusieurs fournisseurs DNS.

Heureusement, c’est une chose simple à faire. Le protocole DNS comporte des mécanismes intégrés qui permettent d’ajouter facilement des « services DNS secondaires » par le biais de transferts de zone (processus consistant à copier le contenu du fichier de zone d’un serveur DNS principal vers un serveur DNS secondaire). Cela signifie qu’à chaque fois qu’une modification est effectuée sur le fournisseur principal, un message de notification (NOTIFY) sera envoyé à tous les fournisseurs secondaires, qui à leur tour demanderont les dernières modifications.

Ce sont des mécanismes standard. Par conséquent, il est possible d’utiliser la plupart des fournisseurs DNS comme option secondaire (à condition qu’ils prennent en charge les transferts de zone et NOTIFY, ce qui est le cas de la plupart des fournisseurs).

En plus de fournir un plan B côté serveur, le fait de disposer d’un autre fournisseur DNS actif peut présenter un certain nombre d’autres avantages, notamment :

> La diversité des logiciels. Le fournisseur B utilisera probablement un logiciel DNS différent de celui du fournisseur A. Si un bug touche A, avec un peu de chance, B ne sera pas impacté.

> La redondance de réseau. Les fournisseurs donnent suite aux requêtes DNS à partir de leur réseau, ce qui signifie que, même si le DNS est toujours opérationnel, il sera touché par une panne de réseau. Le fait de disposer d’un deuxième fournisseur DNS utilisant un autre réseau/ASN (Autonomous System), permet de réduire cette éventualité.

> La latence. Une faible latence est essentielle pour obtenir des réponses rapides aux requêtes DNS. Toutefois, certains réseaux présentent de meilleures latences dans des régions spécifiques. La présence d’un autre fournisseur DNS peut contribuer à garantir une latence optimale dans le monde entier.

Il convient alors de ne pas attendre la prochaine panne pour agir. Il est plus facile et plus rapide de consolider son activité en optant pour un deuxième fournisseur DNS.
___________________

Par Nico Cartron, Chef de produit principal (DNS/GSLB), Volterra chez F5