
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 !