Aller au contenu
Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

Attention à la migration des DNS racines (qui arrive demain…)

Infographie montrant les étapes de la migration des DNS racines

Jusqu’en 1999, la RFC 1035 (manuel de référence) qui documente le protocole DNS, stipulait que la taille des paquets DNS ne pouvait dépasser 512 octets… Mais après cette date (1999 pour ceux qui suivent), la RFC 2671 a permis de supprimer cette limite, autorisant ainsi les paquets DNS plus volumineux.

La plupart des équipement réseaux ont donc suivi le mouvement et permettent actuellement le passage de paquets DNS supérieurs à 512 octets… Mais « la plupart » ne veux pas dire « tous ». Et c’est là qu’il risque d’y avoir du grabuge. En effet, à partir de demain (je sais, je vous préviens tard), une migration des serveurs DNS racines débutera afin de pouvoir diffuser les zones en les signants avec DNSSEC. DNSSEC permet de chiffrer les transactions DNS d’un bout à l’autre de la chaine, afin d’éviter qu’un serveur DNS parasite modifie la requête et transmette une résolution DNS vérolée au client. Je ne vais pas m’étendre sur le sujet car le DNSSEC c’est pas non plus mon coeur de métier mais allez jeter un oeil ici.

Du coup, d’ici juillet, les 13 serveurs DNS racines auront été migrés et diffuseront tous des paquets DNSSEC… Ce qui signifie vous l’aurez compris, des paquets supérieurs à 512 octets, que dis-je, supérieurs à 1500 octets ! Et c’est là que ça coince. Car il existe encore pas mal de vieux routeurs, firewalls et équipements réseaux divers et variés qui trainent un peu partout sur cette planète et que personne n’a mis à jour. Ces derniers n’acceptent donc pas les paquets DNS > 512 octet ou même si ils les acceptent, ne sont pas capables de les fragmenter correctement, privant le réseau derrière cet appareil, à un accès internet. Il risque donc d’y avoir quelques surprises.

Pour tester si votre réseau est impacté par ce problème, j’ai trouvé un série de tests expliqués ici. Il suffit de faire un dig sur ce serveur de test (ça se fait très bien dans une console sous linux) :

dig +short rs.dns-oarc.net txt

Et pour les windowsiens (Merci Dju) :

nslookup -q=txt rs.dns-oarc.net

Et voici la réponse que vous devez avoir :

rst.x4001.rs.dns-oarc.net.
rst.x3985.x4001.rs.dns-oarc.net.
rst.x4023.x3985.x4001.rs.dns-oarc.net.
« 192.168.1.1 sent EDNS buffer size 4096 »
« 192.168.1.1 DNS reply size limit is at least 4023 bytes »

Les 2 dernières lignes indiquent que l’équipement réseau supporte des paquets de plus de 4000 octets. C’est super cool, ça veut dire que vous n’aurez pas de soucis. Si vous êtes en dessous des 4000, ça risque de poser des petits soucis. Voici ce que moi j’ai eu via ma freebox :

rst.x476.rs.dns-oarc.net.
rst.x485.x476.rs.dns-oarc.net.
rst.x490.x485.x476.rs.dns-oarc.net.
« 208.69.xxx.xxx DNS reply size limit is at least 490 »
« 208.69.xxx.xxx lacks EDNS, defaults to 512 »
« Tested at 2010-01-26 20:40:36 UTC »

On voit bien que par défaut le routeur auquel je suis connecté n’accepte pas de paquets supérieur à 512 … gloups. Mais en lisant cet article, j’ai complété mes tests avec cette requête DNS en forçant le DNSSEC. Et j’ai bien reçu la réponse (!!), ce qui semblerait indiquer que ma situation n’est pas si gloups que ça. (Mais au final, je n’en sais foutre rien !)

dig +dnssec @192.134.0.49 DNSKEY ripe.net

Je pense de toute façon que Free et les FAI en général ont bien fait leur boulot. Mais qu’en est il des petits réseaux d’entreprises ou d’université ? On le saura entre demain et juillet 2010. Mais si vous n’avez plus internet pour une raison inexpliquée, pensez à vérifier le MTU de vos machines sur le réseau (pare-feu, middlebox, routeur and co…)

En attendant, si vous souhaitez plus de matière à ce sujet, je vous recommande d’aller lire :

Allez, au boulot les gars !


Les articles du moment