Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet

cr  01.04.2012      r+  21.08.2020      r-  20.04.2024      Pierre Pinard.         (Alertes et avis de sécurité au jour le jour)

En ces années du Néandertal des réseaux, toute l'information dont a besoin un ordinateur pour identifier les autres ordinateurs (hosts) du réseau tient dans un simple petit fichier au format texte, appelé hosts.txt. C'est une bête liste de correspondance entre « Nom d'un ordinateur » et « Adresse de l'ordinateur » (car il est plus aisé pour l'humain de dire « Je me connecte sur la machine de telle université ou tel laboratoire... » plutôt que de dire « Je me connecte sur la machine 063.124.231.077 »).

Mais les ordinateurs en réseau, qui n'étaient que quelques dizaines, se multiplient.

Rapidement, le travail de maintenance de la petite liste Hosts, inventée en 1972 et la charge du serveur du « Stanford Research Institute » (« SRI ») deviennent énormes.

Les mises à jour deviennent si fréquentes que de nouvelles mises à jour sont introduites avant même que les mises à jour précédentes ne soient déployées sur le réseau ARPANET.

En 1984, ARPANET, qui s'est divisé en 1 réseau militaire et un réseau public, compte 4 millions de « nœuds » et 1000 ordinateurs !

D'autres réseaux, concurrents d'ARPANET, s'interconnectent entre eux dans/sur l'Internet, né l'année précédente (1er janvier 1983) avec l'adoption de TCP et IP. C'est l'explosion.

En sus, il n'y a aucun centre névralgique, aucune autorité de gouvernance ni de convention de nommage des ordinateurs et deux ordinateurs peuvent prétendre porter le même nom ce qui fait s'écrouler tout le système.

Il n'est plus raisonnable de s'acharner à maintenir et distribuer le petit fichier Hosts inventé en 1972.

Le mécanisme HOSTS existe toujours

Le mécanisme HOSTS existe toujours actuellement, dans tous les systèmes d'exploitation du monde, et est prioritaire sur tous les autres mécanismes de résolution de noms de domaine.

Ce mécanisme est simplement devenu propre à chaque utilisateur qui en fait l'usage qu'il en veut (contournement d'une censure, blocage d'accès, accélération d'accès, ou n'en fait rien du tout).

Depuis l'introduction de Windows 10 par Microsoft, avec ses myriades de mécanismes d'espionnage appelés télémétrie, et pour empêcher les utilisateurs de bloquer l'accès aux serveurs de Microsoft en utilisant le mécanisme hosts, Microsoft a introduit une couche secrète de résolution, violant l'ensemble des mécanismes, et se situant en amont (avant) hosts !

À la demande de Jon Postel de l'UCLA (University of California, Los Angeles), Paul Mockapetris, de l'USC (University of Southern California), propose l'architecture Domain Name System (« DNS ») en 1983 pour résoudre ces problèmes. Entre autres, il propose :

  • Le nommage hiérarchisé (les "points" qui séparent des "hiérarchies" dans les noms)
  • Une gestion « locale » de ces hiérarchies par des organismes ayant une délégation d'autorité sur une zone géographique, assurant ainsi une mise à jour simplifiée et l'unicité des noms
  • Un mécanisme simple de mise à disposition pour l'ensemble de l'Internet.

Il en écrit la première mise en œuvre. L' IETF (Internet Engineering Task Force) en a publié les spécifications d'origine dans les RFC 882 et RFC 883, en novembre 1983.

Le DNS (Domain Name System) repose sur une constellation d'ordinateurs appelés « serveurs de noms de domaine », tous redondant, et tous propageant leurs mises à jour locales vers tous les autres, en permanence. Le maillage du réseau et la redondance de ses nœuds sont tels qu'une attaque contre plusieurs serveurs de noms de domaines les faisant chuter en même temps n'entamerait pas le fonctionnement de l'Internet mondial (cela a été vérifié plusieurs fois, car plusieurs attaques mondiales contre les serveurs DNS (des attaques d'envergure de type DDoS) ont eu lieu.

En 1984, quatre étudiants de la célèbre University of California (Berkeley), Douglas Terry, Mark Painter, David Riggle, et Songnian Zhou, écrivent la première implémentation DNS pour UNIX. Ils l'appellent BIND (Berkeley Internet Name Domain Server). En 1985, Kevin Dunlap de DEC, révise sensiblement la mise en œuvre de BIND. Mike Karels, Phil Almquist et Paul Vixie ont maintenu BIND depuis, qui est encore, de nos jours (2014) le logiciel de DNS le plus utilisé au monde (enfin..., il est passé de 100% de parts de marché à 50% et collectionne les vulnérabilités (liste des vulnérabilités de BIND).

L'implémentation BIND de l'architecture de résolution DNS de Unix a été portée sur la plate-forme Windows NT au début des années 1990.

En Novembre 1987, les RFC 1034 et RFC 1035 remplacent les spécifications DNS de 1983. Plusieurs RFC (« Request for Comments » - « Demandes d'observations ») ont proposé des extensions au noyau du protocole DNS.

Hosts et DNS - Schéma de principe de la Résolution des noms de domaine
Hosts et DNS - Schéma de principe de la Résolution des noms de domaine

La croissance rapide d'Internet fait naître le besoin d'un système automatisé et décentralisé de maintenance et de distribution de la table de correspondance entre noms de domaine et adresse numérique.

Évolution du nombre de hosts dans le réseau des réseaux depuis 1981
Évolution du nombre de hosts dans le réseau des réseaux depuis 1981

En savoir plus sur HOSTS

Étapes majeures conduisant à la naissance d'Internet puis du Web

  1. Naissance du Web 1969 : Naissance d'ARPANET.

  2. Naissance du Web 1972 : Naissance de HOSTS.

  3. Naissance du Web 1974 : Naissance de TCP et IP.

  4. Naissance du Web 1983 : D'ARPANET à Internet.

  5. Naissance du Web 1984 : De HOSTS à DNS.

  6. Naissance du Web 1991 : WWW le 06 aout 1991.

  7. Naissance du Web 1991 : WorldWideWeb (premier navigateur Web le 06 août 1991).




Les ordinateurs, qui n'étaient que quelques dizaines, se multiplient et se mettent en réseau. Rapidement, le travail de maintenance de cette liste et la charge du serveur du « Stanford Research Institute (« SRI ») deviennent énormes. Les mises à jour deviennent si fréquentes que de nouvelles mises à jour sont introduites avant même que les mises à jour précédentes ne soient déployées sur le réseau Arpanet. En sus, il n'y a aucune autorité de gouvernance ni de convention de nommage des ordinateurs et deux ordinateurs peuvent prétendre porter le même nom ce qui fait s'écrouler tout le système.

Puis se sont d'autres réseaux, concurrents d'Arpanet, qui voient le jour. Et puis ces réseaux, ces "Networks" en anglais, s'interconnectent entre eux. C'est la naissance de l'Internet, l'interconnexion des réseaux, le réseau des réseaux.

Paul Mockapetris, de l'University of Southern California (« USC »), propose l'architecture Domain Name System (« DNS ») en 1983 pour résoudre ces problèmes. Entre autre, il propose le nommage hiérarchisé (les "points" qui séparent des "hiérarchies" dans les noms), une gestion « locale » de ces hiérarchies par des organismes ayant une délégation d'autorité sur une zone géographique, assurant ainsi une mise à jour simplifiée et l'unicité des noms. Il propose enfin un mécanisme simple de mise à disposition pour l'ensemble de l'Internet.

Le DNS (Domain Name System) repose sur une constellation d'ordinateurs appelés "serveurs de noms de domaine" (Domain Name System), tous redondant et tous propageant leurs mises à jour locales vers tous les autres, en permanence. Le maillage du réseau et la redondance de ses nœuds est telle qu'une attaque contre plusieurs serveurs de noms de domaines les faisant chuter en même temps n'entamerait pas le fonctionnement de l'Internet mondial.