Serveur racine du DNS
Un serveur racine du DNS est un serveur DNS qui répond aux requêtes qui concernent les noms de domaine de premier niveau (TLD) et qui les redirige vers le serveur DNS de premier niveau concerné. Bien qu'il puisse exister d'autres hiérarchies de système de noms de domaine (DNS) avec des serveurs racine alternatifs, « serveur racine du DNS » est généralement utilisé pour désigner l'un des treize serveurs racine du Domain Name System d'Internet géré sous l'autorité de l'ICANN.
Dans le système des noms de domaine, le point est un séparateur de domaine. Par convention, un Fully qualified domain name est terminé par un point, ce qui signifie qu'il est suivi par une chaîne vide qui représente le domaine racine. Par extension, on représente aussi le domaine racine par un point.
Les domaines de premier niveau (par exemple .com, .org et .fr) sont des sous-domaines du domaine racine.
Requêtes DNS destinées aux serveurs racine
[modifier | modifier le code]Un serveur DNS s'adresse à un serveur racine dans deux cas :
- au démarrage, pour obtenir la liste à jour des serveurs racine.
- quand il doit déterminer la liste des serveurs de noms d'un domaine de premier niveau.
Les informations sont ensuite mises dans le cache du serveur DNS pendant une longue durée : 6 jours pour la liste des serveurs racine, 2 jours pour les informations des serveurs des domaines de premier niveau (TLD). Ces informations variant peu, les requêtes vers les serveurs racine sont donc relativement peu nombreuses.
Les serveurs racine sont non-récursifs, c'est-à-dire qu'ils ne fournissent que des réponses qui font autorité, ne transmettent aucune requête à un autre serveur et ne font pas usage d'un cache. Ils ne sont donc pas utilisables directement par le résolveur d'un client final.
Une étude de 2003[1] indique que seuls 2 % des requêtes à destination de ces serveurs étaient légitimes. Les mises en cache incorrectes ou inexistantes sont à l'origine de 75 % des demandes. 12,5 % concernent des demandes pour des domaines de premier niveau inconnus, 7 % parce qu'elles traitent des adresses IP comme des noms de domaines, etc. Certains ordinateurs de bureau mal configurés tentent même de mettre à jour les enregistrements des serveurs racine ou sollicitent de la récursion, ce qui est le résultat d'une erreur de configuration. Les problèmes observés et les solutions pour y remédier sont décrits dans la RFC 4697[2].
En 2007, il y avait environ dix milliards de requêtes vers les serveurs racine quotidiennement[3].
Les serveurs racine font également autorité pour le domaine de premier niveau .arpa. La zone in-addr.arpa, utilisée pour la résolution inverse des adresses IPv4, était gérée par les serveurs racine jusqu'en . Elle est désormais sous la gestion technique des registres Internet régionaux[4].
Les serveurs racine du DNS
[modifier | modifier le code]Contrairement à la croyance populaire, il n'y a plus de nos jours physiquement et uniquement treize serveurs racine du DNS, mais plutôt treize « identités de serveur »[5],[3] dont les noms sont de la forme lettre.root-servers.net où lettre est une lettre comprise entre A et M[6]. Cependant, ces « identités » (ou serveurs de noms (en)) ayant chacune une seule adresse IP assignée, sont communément référées comme étant les « serveurs racines »[6].
Douze organisations[3],[6] contrôlent ces serveurs, deux sont européennes (RIPE NCC et Autonomica, une division de Netnod), une japonaise (WIDE), les autres étant américaines. Neuf de ces serveurs ne sont pas de simples machines mais correspondent à plusieurs installations réparties dans des lieux géographiques divers, il y a ainsi au 19 juillet 2019 plus de 997 sites[7] dans 53 pays qui hébergent un serveur racine du DNS. En 2007, on comptait 130 sites[8],[3].
Les serveurs ont été regroupés sous le même nom de domaine pour exploiter un mécanisme d'évitement de répétition des noms dans le protocole DNS.
Lettre | adresse IPv4[9] | adresse IPv6[9] | Autonomous System[9] | Ancien nom | Société | Localisation | Sites (global/local)[9] |
Logiciel |
---|---|---|---|---|---|---|---|---|
A[10] | 198.41.0.4 | 2001:503:ba3e::2:30 | AS19836[10] | ns.internic.net | VeriSign | trafic distribué par anycast | 6 (6/0) |
BIND |
B[11] | 199.9.14.201[Notes 1] | 2001:500:200::b | AS394353[12] | ns1.isi.edu | Université du Sud de la Californie | Marina Del Rey, Californie, États-Unis | 1 (1/0) |
BIND |
C[13] | 192.33.4.12[14] | 2001:500:2::c | AS2149[14] | c.psi.net | Cogent Communications | trafic distribué par anycast | 6 (6/0) |
BIND |
D[15] | 199.7.91.13[16],[Notes 2] | 2001:500:2d::d | AS10886[16] | terp.umd.edu | Université du Maryland | College Park, Maryland, États-Unis | 1 (1/0) |
BIND |
E[17] | 192.203.230.10[17] | 2001:500:a8::e | AS21556[12] | ns.nasa.gov | NASA | Mountain View, Californie, États-Unis | 1 (1/0) |
BIND |
F[18] | 192.5.5.241[19] | 2001:500:2f::f | AS3557[19] | ns.isc.org | Internet Systems Consortium | trafic distribué par anycast | 49 (2/47) |
BIND |
G[20] | 192.112.36.4[Notes 3] | 2001:500:12::d0d | AS5927[20] | ns.nic.ddn.mil | Defense Information Systems Agency | trafic distribué par anycast | 6 (6/0) |
BIND |
H[21] | 198.97.190.53[22],[Notes 4] | 2001:500:1::53 | AS1508[22] | aos.arl.army.mil | United States Army Research Laboratory (en) | Aberdeen, Maryland, États-Unis | 1 (1/0) |
NSD |
I[23] | 192.36.148.17[24] | 2001:7fe::53 | AS29216[24] | nic.nordu.net | Autonomica (Netnod (en)) | trafic distribué par anycast | 68 | BIND |
J[25] | 192.58.128.30[25],[Notes 5] | 2001:503:c27::2:30 | AS26415[26] | VeriSign | trafic distribué par anycast | 70 (63/7) |
BIND | |
K[27] | 193.0.14.129[27] | 2001:7fd::1 | AS25152[28] | RIPE NCC | trafic distribué par anycast | 18 (5/13) |
BIND, NSD[27] | |
L[29] | 199.7.83.42[Notes 6] | 2001:500:3::42 | AS20144[30] | ICANN | trafic distribué par anycast | 38 (37/1) |
NSD[29] | |
M[31] | 202.12.27.33[32] | 2001:dc3::35 | AS7500[32] | WIDE Project (en) | trafic distribué par anycast | 6 (5/1) |
BIND |
Limitation du nombre de serveurs
[modifier | modifier le code]La RFC 1035[33] prévoit que les requêtes et les réponses DNS sur le protocole de datagramme utilisateur (UDP) ne dépassent pas 512 octets. Si la réponse est plus volumineuse, le protocole TCP doit alors être utilisé. Ceci consomme plus de ressources et présente le risque d'être bloqué par un pare-feu. Ce cas de réponse volumineuse est rare en pratique, mais la liste des serveurs de noms de la zone racine du DNS avec les adresses IP correspondantes atteint cette limite ; 671 octets étant nécessaires pour une réponse complète en .
Les serveurs A, C, F, G, I, J, K, L et M sont maintenant distribués géographiquement grâce à anycast. En général, le serveur le plus proche du client au sens du réseau sera alors utilisé. C'est ainsi que la plupart des serveurs physiques du système de noms de domaine sont à présent situés hors des États-Unis.
Les serveurs racines du système de noms de domaine peuvent également être déclinés localement, par exemple sur les réseaux des fournisseurs d'accès à internet. Ils doivent être synchronisés avec le fichier de la zone racine[34] du département du Commerce des États-Unis ainsi que le préconise l'ICANN. De tels serveurs ne sont pas des serveurs DNS alternatifs mais une déclinaison locale des serveurs racines de A à M.
L'extension EDNS0 (RFC 2671[35]) permet d'utiliser une taille de paquets plus élevée, sa prise en charge est recommandée pour IPv6 comme pour DNSSEC.
Sécurité des serveurs racine
[modifier | modifier le code]Les serveurs racine jouent un rôle important dans le système de noms de domaine (DNS). Si l'un ou quelques-uns d'entre eux ne répondent plus, la charge est répartie entre les serveurs qui subsistent. Si aucun d'entre eux ne pouvait répondre aux requêtes, les noms de domaines deviendraient progressivement inaccessibles, au fur et à mesure que les informations dans les caches parviendraient à expiration, c'est-à-dire environ 2 % par heure d'indisponibilité totale[36].
La possibilité d'un bug qui affecterait l'ensemble des serveurs est limitée par la diversité des versions logicielles employées : BINDv8, BINDv9 et NSD. Le matériel sur lequel fonctionnent les serveurs est divers.
Les risques d'attaques par déni de service sont réduits par le nombre de serveurs en anycast. L'adresse unicast de la plupart des serveurs n'est pas publiée pour éviter les attaques ciblées. Il n'est pas rare que l'un des serveurs fasse l'objet d'une attaque par déni de service, sans que cela affecte de façon perceptible la qualité du fonctionnement du DNS dans son ensemble.
Certaines attaques de grande ampleur ont cependant eu lieu au XXIe siècle :
Attaque de 2002
[modifier | modifier le code]Le , la racine complète du DNS a fait l'objet d'une attaque de grande ampleur pendant une heure, les treize serveurs A à M étant visés[37],[38]. Pendant cette attaque, sept serveurs sur treize ont vu leurs performances dégradées en raison d'un flux de 100 000 à 200 000 requêtes par seconde vers chacun des serveurs. Toutefois, l'attaque n'a pas provoqué de grandes perturbations du réseau mondial, ce qui montre la robustesse du système. Selon le président-directeur général de Verisign, qui gère deux serveurs racine, l'ensemble des requêtes aurait pu être assuré par un seul serveur.
L'attaque a été réalisée selon la méthode DDoS (déni de service). Les pirates ont pu, grâce à un parc de machines très important, générer un nombre de requêtes deux à trois fois supérieur à la capacité de charge des treize serveurs visés, soit quarante fois le volume habituel des requêtes.
Le système anycast a été mis en place après cette attaque pour neutraliser les attaques de type DoS.
Attaque de 2007
[modifier | modifier le code]Le , les serveurs F, G, L et M ont été attaqués pendant 24 heures à partir de 10:00 UTC[39]. G et L ont été affectés sérieusement, tandis que F et M ont rapporté une charge inhabituelle. L'impact sur M a été amoindri grâce à anycast.
La source s'avère être un réseau botnet de 5 000 machines essentiellement basées en Corée du Sud et dirigé depuis les États-Unis[40].
Attaques de 2015
[modifier | modifier le code]Le 30 novembre 2015 (de 06:50 UTC jusqu’à environ 09:30 UTC) et le 1er décembre 2015 (de 05:10 UTC à 06:10 UTC), les 13 serveurs racine ont fait l’objet de deux attaques DDoS, causant des délais d’attente sur les serveurs racine B, C, G et H[41]. Environ 5 millions de requêtes ont été envoyées par seconde vers les serveurs avec deux domaines uniques à l'origine de l'attaque, un pour chaque attaque. Selon le rapport du site root-servers.org, trois des treize serveurs racine ont subi des ralentissements[42], mais l'impact sur l'ensemble d'internet est resté limité[43].
Zone racine
[modifier | modifier le code]Le fichier de la zone racine est disponible publiquement[44]. Il est assez peu volumineux (de l'ordre de 2,1 Mo) et contient 1531 délégations de domaines de premier niveau, 7 295 serveurs de noms, 4 265 enregistrements A et 3 641 enregistrements AAAA en avril 2019.
Des signatures DNSSEC RRSIG ont été ajoutées aux fichiers de la racine en juillet 2010[45]. Le 11 octobre 2018, la clé de signature de clé (KSK) de la zone racine a été changée avec succès par l'ICANN[46]. En avril 2019, sur l'ensemble des 1 531 domaines de premier niveau présents, 1 388 sont signés avec DNSSEC.
Hiérarchies alternatives
[modifier | modifier le code]Il est possible de créer une hiérarchie DNS alternative avec un ensemble de serveurs racine alternatifs. Un serveur qui voudrait y avoir recours doit disposer de la liste des serveurs racine de cette hiérarchie DNS alternative.
Ces hiérarchies peuvent définir d'autres domaines de premier niveau. Ces domaines ne seront pas accessibles par les clients qui n'utilisent pas cet ensemble de serveurs. La possibilité qu'un domaine de premier niveau soit défini de façon différente entre des hiérarchies alternatives existe également.
Parmi ces hiérarchies alternatives, on peut citer :
L'Internet Architecture Board (IAB) a exprimé, dans le RFC 2826[47], la nécessité de conserver une hiérarchie unique pour préserver la cohésion du réseau Internet.
Hiérarchies alternatives en pair à pair
[modifier | modifier le code]Différents systèmes de réseaux en pair à pair ont également été créés, dans le but d'offrir une alternative viable tout en réduisant les frais de l'infrastructure, parmi lesquels :
- CoDoNS, développé à l'université Cornell[48]
- GNU Name System (GNS), utilisé par le réseau GNUnet avec le domaine de premier niveau
.gnu
[49] - Kadnode, basé sur le protocole en table de hachage distribuée Kademlia[50]
- Namecoin, basé sur Bitcoin, utilise le domaine de premier niveau
.bit
[51] - OddDNS[52] ; projet abandonné en [53]
Voir aussi
[modifier | modifier le code]Articles connexes
[modifier | modifier le code]Liens externes
[modifier | modifier le code]- Root Server Technical Operations Association
- « DNS Root Server System Advisory Committee »(Archive.org • Wikiwix • Archive.is • Google • Que faire ?) (consulté le )
- Bogus Queries received at the Root Servers
Notes et références
[modifier | modifier le code]Notes
[modifier | modifier le code]- 128.9.0.107 avant le (en) « New IPv4 address for b.root-servers.net » (consulté le ). Puis 192.228.79.201 jusqu'au 10 aout 2017 (en) « B root ipv4 address renumbered » (consulté le )
- 128.8.10.90 avant le (en) « D-Root is Changing its IPv4 Address on 3 January 2013 » (version du sur Internet Archive).
- Contrairement aux autres seveurs racines,« G Root » ne répond pas aux pings.
- 128.63.2.53 avant le (en) « [DNSOP] Advance notice - H-root address change on December 1, 2015 », (consulté le ).
- 198.41.0.10 avant le .
- 198.32.64.12 avant le (en) « Advisory — “L Root” changing IP address on 1st November », (consulté le ).
Références
[modifier | modifier le code]- (en) Duane Wessels et Marina Fomenkov, « Wow, That’s a Lot of Packets » [PDF], sur measurement-factory.com, (consulté le ).
- (en) Request for comments no 4697
- (en) Daniel Karrenberg, « DNS Root Name Servers Frequently Asked Questions », sur Internet Society, (consulté le ).
- (en) « in-addr.arpa transition », sur ICANN (consulté le ).
- (en) « RSSAC FAQ », sur ICANN (consulté le ).
- (en) « IANA - Root Servers », sur IANA (consulté le ).
- (en) « root-servers.org »
- (en) Kim Davies, « There are not 13 root servers », sur IANA, (consulté le ).
- AS et adresse IPv4/v6 de root-servers.org visité le 22 août 2018.
- (en) « How Verisign Operates Internet Root Servers – Verisign », sur root-servers.org (consulté le ).
- (en) « B Root », sur root-servers.org (consulté le ).
- (en) « Root Server Technical Operations Assn », sur root-servers.org (consulté le ).
- (en) « C-Root Homepage », sur root-servers.org (consulté le ).
- (en) « C Root YAML » [yml] (consulté le ).
- (en) « D-Root Home Page », sur root-servers.org (consulté le ).
- (en) « D Root YAML » [yml] (consulté le ).
- (en) « E.root-servers.net », sur root-servers.org (consulté le ).
- (en) « F Root - Internet Systems Consortium », sur root-server.org (consulté le ).
- (en) « F Root YAML » [yml] (consulté le ).
- (en) « DISA-G-Root », sur DISA (consulté le ).
- (en) « H.ROOT-SERVERS.NET STATISTICS », sur root-servers.org (consulté le ).
- (en) « H Root YAML » [yml] (consulté le ).
- (en) « i.root-servers.net - Netnod », sur Netnod (en) (consulté le ).
- (en) « I Root YAML » [yml] (consulté le ).
- (en) « History And Facts About J-Root Server – Verisign », sur root-servers.org (consulté le ).
- (en) « J Root YAML » (consulté le ).
- (en) « K-root - RIPE Network Coordination Centre », sur RIPE NCC (consulté le ).
- (en) « K Root YAML » (consulté le ).
- (en) « ICANN Managed Root Server - ICANN DNS Engineering », sur ICANN (consulté le ).
- (en) « L Root YAML » (consulté le ).
- (en) « M-Root DNS Server », sur root-servers.org (consulté le ).
- (en) « M Root YAML » (consulté le ).
- (en) Request for comments no 1035
- ftp://rs.internic.net/domain/
- (en) Request for comments no 2671
- cf. ISOC, le [[Time to Live]] des délégations TLD étant de deux jours.
- (en) « Nameserver DoS Attack October 2002 », sur Center for Applied Internet Data Analysis, (consulté le ).
- (en) Paul Vixie, « Events of 21-Oct-2002 » [txt], sur root-servers.org, (consulté le ).
- (en) « Factsheet - Root server attack on 6 February 2007 » [PDF], sur ICANN, (consulté le ).
- (en) John Kristoff, « Feb 6/7 2007 DNS Attack Recap » [PDF], sur dns-oarc.net, (consulté le ).
- « Une attaque DDoS a ciblé les racines d’internet », Émilie Dubois, linformatique.org, 10 décembre 2015 (consulté le 12 décembre 2015).
- (en) « Events of 2015-11-30 », http://root-servers.org, 4 décembre 2015 (consulté le 12 décembre 2015).
- « Une attaque DDoS met trois serveurs racines DNS hors ligne », Pieterjan Van Leemputten, levif.be, 9 décembre 2015 (consulté le 12 décembre 2015).
- « Index of /domain », sur internic.net (consulté le ).
- ISC Praises Momentous Step Forward in Securing the Domain Name System, ISC, 15 juillet 2010
- « Pari réussi pour le premier roulement de la KSK », sur www.icann.org (consulté le )
- (en) Request for comments no 2826
- (en) « Beehive: CoDoNS » (consulté le ).
- (en) « The GNU Name System » (consulté le ).
- (en) « GitHub - mwarning/KadNode: P2P DNS with content key, crypto key and PKI support. DynDNS alternative », sur GitHub (consulté le ).
- (en) « Namecoin DNS - DotBIT Project » (version du sur Internet Archive)
- Vincent Hermann, « ODDNS veut en finir avec le DNS classique et sa censure potentielle », sur Next INpact, (consulté le ).
- (en) Christian Grothoff, « How does GNS compare to ODDNS? », sur gnunet.org, (consulté le ).