comme de plus en plus de gens adoptent de nouvelles fonctionnalités telles que IPv6, anti-spam, et DNSSEC, DNS est plus susceptible de passer à TCP en raison de la plus grande taille de réponse.

que se passe-t-il si TCP est bloqué?

quoi qu’il en soit, lorsque la taille du message dépasse 512 octets, il déclenchera le bit ‘TC’ (troncature) dans DNS à définir, informant le client que la longueur du message a dépassé la taille autorisée. Dans ces situations, le client doit retransmettre sur TCP, qui n’a pas de limite de taille., Si les serveurs DNS et l’environnement réseau ne peuvent pas prendre en charge de gros paquets UDP, cela entraînera une retransmission sur TCP; si TCP est bloqué, la grande réponse UDP entraînera une fragmentation IP ou sera complètement supprimée. Le symptôme final pour le client final est généralement une résolution DNS lente ou une incapacité à résoudre certains noms de domaine.

Size Matters: EDNS

vous vous demandez peut-être d’où vient la limite de taille de 512 octets. La taille de la charge utile UDP de 512 octets est une dépendance à IPv4., La norme Ipv42 spécifie que chaque hôte doit pouvoir réassembler des paquets de 576 octets ou moins, enlever l’en-tête et d’autres options, ce qui laisse 512 octets pour les données de charge utile. C’est la raison pour laquelle il y a précisément 13 serveurs racine DNS 3 à l’origine: 13 noms de domaine et 13 adresses IPv4 s’intègrent bien dans un seul paquet UDP.

cette limitation de taille a été reconnue il y a longtemps comme un problème. En 1999, le mécanisme D’Extension pour DNS (EDNS) a été proposé, et il a été mis à jour au fil des ans, augmentant la taille jusqu’à 4096 octets, ou 4 kilo-octets., Donc, si vous utilisez un serveur DNS raisonnablement à jour, les chances qu’il passe à TCP devraient être minces(mer).

cependant, même si EDNS existe depuis longtemps, son support n’a pas été aussi universel qu’il devrait l’être4 . Certains équipements réseau, tels que les pare-feu, peuvent toujours émettre des hypothèses sur la taille des paquets DNS. Un pare-feu peut supprimer ou rejeter un paquet DNS volumineux, pensant qu’il s’agit d’une attaque., Ce comportement n’a peut-être pas causé de problèmes visibles dans le passé (ou il l’a fait mais personne n’a compris pourquoi), mais comme les données DNS continuent d’augmenter en taille, il est important que tous les équipements réseau soient configurés correctement pour prendre en charge les grandes tailles de paquets DNS. Si l’environnement réseau ne prend pas entièrement en charge les messages DNS volumineux, le message DNS peut être rejeté par network gear ou partiellement abandonné lors de la fragmentation. Ce à quoi cela ressemble pour l’utilisateur final, c’est que les requêtes DNS restent sans réponse, ou prennent très longtemps, donnant l’impression que « DNS/réseau est vraiment lent., »

bien que L’EDNS soit nécessaire au fonctionnement du DNS moderne, la capacité d’envoyer des messages plus volumineux a contribué aux attaques volumétriques telles que L’Amplification et la réflexion.