(modifié le 14 février 2013 à 22:26)

Sans le service DNS et les serveurs du même nom, l'Internet ne fonctionnerait pas, ou de façon archaïque. Les DNS permettent par exemple d'héberger plusieurs sites sur une même adresse IP. Lorsque l'on sait que la pénurie d'adresses IPv4 approche à grand pas, autant dire que sans les DNS nous l'aurions atteinte depuis fort longtemps. A la différence du pétrole il nous sera possible d'y pallier sans aucun inconvénient grâce à l'ipv6 (sinon celui de changer les équipements). De façon détaillée, toutes les explications sont ici.

dns-google

Hier Google annonçait la mise en route d'un service de DNS publics avec comme argument la résolution rapide des noms de domaines, accélérant la navigation internet. Sur le papier cette résolution optimisée accélère effectivement l'affichage d'un site, qui plus est lorsqu'un site contient de nombreux contenus multimédia hébergés sur un serveur distant (vidéos, scripts, images, etc.). Des systèmes de mise en cache plus ou moins complexes permettent en effet de réduire le temps de résolution des noms de domaines. BIND est un programme libre du monde unix proposant ce type de cache, mais Google annonce un serveur avec un service propriétaire et crée de toutes pièces par ses ingénieurs (les sources seront bien évidemment pas diffusées).

Test de performance, Google dernier

Pour évaluer la rapidité de ces serveurs, rien de tel qu'un benchmark. En rédigeant ce billet, je suis tombé sur un billet chez gHacks que je vous invite également à lire. De mon côté, j'ai utilisé le freeware DNSBench, et voici les résultats pour les DNS de Google (8.8.8.8 et 8.8.4.4) :

   8.  8.  4.  4 |  Min  |  Avg  |  Max  |Std.Dev|Reliab%|
 ----------------+-------+-------+-------+-------+-------+
 - Cached Name   | 0,060 | 0,077 | 0,218 | 0,031 | 100,0 |
 - Uncached Name | 0,073 | 0,183 | 0,417 | 0,097 |  98,0 |
 - DotCom Lookup | 0,079 | 0,146 | 0,265 | 0,050 | 100,0 |
 ----------------+-------+-------+-------+-------+-------+
 google-public-dns-b.google.com
 Level 3 Communications

   8.  8.  8.  8 |  Min  |  Avg  |  Max  |Std.Dev|Reliab%|
 ----------------+-------+-------+-------+-------+-------+
 - Cached Name   | 0,059 | 0,085 | 0,288 | 0,053 | 100,0 |
 - Uncached Name | 0,073 | 0,183 | 0,365 | 0,089 | 100,0 |
 - DotCom Lookup | 0,072 | 0,158 | 0,327 | 0,064 | 100,0 |
 ----------------+-------+-------+-------+-------+-------+
 google-public-dns-a.google.com
 Level 3 Communications

J'ai comparé ces valeurs à celles des DNS publics 4.2.2.x de Level 3 Communications, qui est également le fournisseur des DNS de Google comme le confirme le WHOIS :

IP Address 	8.8.8.8
Host 	        google-public-dns-a.google.com
Location 	US US, United States
City 	        Mountain View, CA 94043
Organization 	Google Incorporated
ISP 	        Level 3 Communications

DNSBench classe la performance de chaque serveur DNS par son temps de réponse moyen des requêtes en cache. Et là, surprise ! Les six serveurs DNS les plus rapides ne sont pas ceux de Google mais ceux de Level 3 Communications :

   4.  2.  2.  3 |  Min  |  Avg  |  Max  |Std.Dev|Reliab%|
 ----------------+-------+-------+-------+-------+-------+
 - Cached Name   | 0,054 | 0,057 | 0,068 | 0,003 | 100,0 |
 - Uncached Name | 0,058 | 0,134 | 0,388 | 0,096 |  95,9 |
 - DotCom Lookup | 0,068 | 0,179 | 0,342 | 0,098 | 100,0 |
 ----------------+-------+-------+-------+-------+-------+
 vnsc-lc.sys.gtei.net
 Level 3 Communications

   4.  2.  2.  5 |  Min  |  Avg  |  Max  |Std.Dev|Reliab%|
 ----------------+-------+-------+-------+-------+-------+
 - Cached Name   | 0,054 | 0,057 | 0,071 | 0,003 |  98,0 |
 - Uncached Name | 0,058 | 0,142 | 0,389 | 0,098 |  97,9 |
 - DotCom Lookup | 0,069 | 0,200 | 0,345 | 0,102 | 100,0 |
 ----------------+-------+-------+-------+-------+-------+
 vnsc-bak-dsl.genuity.net
 Level 3 Communications

    4.  2.  2.  2 |  Min  |  Avg  |  Max  |Std.Dev|Reliab%|
  ----------------+-------+-------+-------+-------+-------+
  - Cached Name   | 0,056 | 0,059 | 0,075 | 0,004 | 100,0 |
  - Uncached Name | 0,058 | 0,127 | 0,426 | 0,090 | 100,0 |
  - DotCom Lookup | 0,059 | 0,192 | 0,392 | 0,124 |  97,9 |
  ----------------+-------+-------+-------+-------+-------+
                  vnsc-bak.sys.gtei.net
                 Level 3 Communications

    4.  2.  2.  4 |  Min  |  Avg  |  Max  |Std.Dev|Reliab%|
  ----------------+-------+-------+-------+-------+-------+
  - Cached Name   | 0,056 | 0,059 | 0,076 | 0,003 | 100,0 |
  - Uncached Name | 0,060 | 0,150 | 0,434 | 0,107 | 100,0 |
  - DotCom Lookup | 0,059 | 0,185 | 0,353 | 0,110 |  98,0 |
  ----------------+-------+-------+-------+-------+-------+
                vnsc-pri-dsl.genuity.net
                 Level 3 Communications

    4.  2.  2.  1 |  Min  |  Avg  |  Max  |Std.Dev|Reliab%|
  ----------------+-------+-------+-------+-------+-------+
  - Cached Name   | 0,054 | 0,060 | 0,101 | 0,008 |  98,0 |
  - Uncached Name | 0,062 | 0,151 | 0,387 | 0,104 | 100,0 |
  - DotCom Lookup | 0,067 | 0,226 | 0,352 | 0,095 |  97,9 |
  ----------------+-------+-------+-------+-------+-------+
                  vnsc-pri.sys.gtei.net
                 Level 3 Communications

    4.  2.  2.  6 |  Min  |  Avg  |  Max  |Std.Dev|Reliab%|
  ----------------+-------+-------+-------+-------+-------+
  - Cached Name   | 0,056 | 0,061 | 0,090 | 0,006 | 100,0 |
  - Uncached Name | 0,059 | 0,145 | 0,417 | 0,106 |  95,7 |
  - DotCom Lookup | 0,061 | 0,099 | 0,265 | 0,057 | 100,0 |
  ----------------+-------+-------+-------+-------+-------+
                 vnsc-lc-dsl.genuity.net
                 Level 3 Communications

Les deux serveurs de célèbre service OpenDNS sont eux aussi devant ceux de Google, même si l'équipe d'OpenDNS vient de publier quelques précisions sur les DNS de Google.

Conclusion

Sur le fond, Google va sans doute optimiser les temps de réponse pour ses propres services (Gmail, Analytics, YouTube, etc.), quitte à ce qu'ils soient plus rapides que la résolution d'autres noms de domaines tiers. De toutes façon, tout ce que vous faites est hébergé par Google, non ?... (GG is watching you !).

Sachez tout de même que des DNS menteurs (Spoofing DNS) permettent d'orienter un internaute sur un faux site sans en altérer l'adresse et ce de manière indétectable (à moins que connaître toutes les adresses IP par coeur)... autrement dit c'est la porte ouverte à toutes les fenêtres! Outre l'aspect sécuritaire, il y a aussi un enjeu financier. On se souvient très récemment des DNS menteurs du FAI SFR. C'est également le cas chez OpenDNS mais ce système permet de financer le service, et puis vous n'êtes pas obliger d'utiliser le service (chaque FAI propose des serveurs DNS et OpenDNS n'est pas un FAI).

Personnellement, je vais continuer d'utiliser les DNS de mon FAI puis ceux en 4.2.2.x en secours. Il reste néanmoins intéressant de pouvoir interroger des serveurs DNS d'un géant comme Google qui risque de les mettre à jour très rapidement et fréquemment. Très pratique donc pour surveiller une propagation des DNS d'un nom de domaine suite à un déménagement de serveur par exemple.

Egalement un équivalent pour tester vos serveurs DNS : namebench .

Auteur : Mr Xhark

Fondateur du blog et passionné par les nouvelles techno, suivez-moi sur twitter