Chapitre 2
Les noms de domaine

Comment connaître l'adresse IP d'un serveur pour lui envoyer une requête ?
Temps de lecture : 5 minutes


Dans le chapitre précédent, nous avons vu que :

👉 Pour charger une page web, ton navigateur doit envoyer une requête vers un serveur web.

👉 Internet Protocol (IP) se sert des adresses IP pour distribuer les messages partout dans le monde.

Ici, tu comprendras comment le client, afin de lui envoyer sa requête, connaît l’adresse IP du serveur.


Les adresses IP

Lors de ta connexion à Internet, ton Fournisseur d’Accès Internet (FAI : Orange, Free…) t’attribue automatiquement une adresse IP. Elle permet à ton ordinateur d’envoyer et de recevoir des messages sur le réseau. C’est le même principe que la mairie qui attribue une adresse postale à ton nouveau restaurant.

Dans la version 4 d’IP, celle qui prédomine sur Internet, une adresse ressemble à quelque chose comme 82.189.34.250. C’est une suite de 4 nombres entre 0 et 255.

Quand le protocole IP a été créé dans les années 70, personne n’imaginait l’explosion d’Internet à une si grande échelle. Tout est relié à Internet de nos jours : caméra de sécurité, voiture… Si bien qu’IPv4 est arrivé à ses limites.

Petite frayeur le 3 février 2011 quand la dernière adresse IPv4 a été attribuée 😱.

Heureusement, depuis les années 90, les chercheurs se sont penchés sur son remplaçant : IPv6.

Plus rapide, plus sécurisé et permettant des milliards de milliards d’adresses IP.

Une adresse IPv6 ressemble à : 2001:db8:3c4d:15:0:d234:3eee

Tous les acteurs d’Internet sont lancés depuis des années dans une énorme migration de la v4 vers la v6. Tu risques donc de croiser les 2 formats.

Les noms de domaine

Ton nouveau restaurant a maintenant une adresse postale. “Venez nombreux au 45 bis rue Jean-Michel Lapoutre” ça fait par contre pas très vendeur. Tu donnes donc un nom à ce restaurant “Chez Tonton”, que tu dois communiquer à différents organismes pour être inscrit dans les annuaires locaux. Les clients pourront désormais te trouver juste en utilisant ce nom.

Tout pareil, ça serait super pénible de devoir se souvenir des adresses IP de tous les sites. Imagine que tu doives taper http://2001:db8:3c4d:15:0:d234:3eee pour me contacter 🥲. L’enfer !

Dans les années 70 - 80 a ainsi été développé le concept des noms de domaine.

the-tech.guide, google.com, ohhappy.dev… ce sont tous des alias masquant une adresse IP.

Lorsque tu achètes un nom de domaine auprès d’un registraire, il t’enregistre auprès des annuaires.

Le système d’annuaires permettant de résoudre l’adresse IP à partir du nom de domaine se nomme DNS : Domain Name System.

Le DNS

Un nom de domaine est composé de plusieurs parties. Par exemple pour fr.the-tech.guide :

  • guide : domaine de premier niveau (Top Level Domain, TLD). Les TLD sont gérés par des entreprises privées, des états, des villes… Par exemple le .fr est géré par l’Afnic, une association loi de 1901.
  • the-tech : domaine de second niveau (Second Level Domain, SLD).
  • fr : sous-domaine.

Le DNS ne repose pas sur un annuaire unique. C’est un processus récursif qui interroge plusieurs annuaires jusqu’à tomber sur la réponse définitive.

  • Lors de ta connexion à Internet, ton FAI t’a fourni l’adresse vers son serveur DNS : son annuaire. Quand tu tapes fr.the-tech.guide dans ton navigateur, il envoie une requête à ce serveur DNS. Comme fr.the-tech.guide est le meilleur guide 😎, ton FAI connaît probablement déjà l’adresse IP associée, il peut directement la retourner à ton navigateur.
  • Si le FAI ne connaît pas l’adresse, il envoie une requête vers un serveur DNS racine : des entités réparties dans le monde entier pour assurer la disponibilité du réseau. Le serveur racine est capable de donner l’adresse du registre qui s’occupe d’un TLD : le .guide.
  • Le FAI envoie une requête vers ce registre. Il fournit l’adresse du registre autoritaire pour .the-tech.guide.
  • Une dernière requête permet d’obtenir l’adresse de fr.the-tech.guide.
  • Le FAI retourne l’information à ton navigateur.
  • C’est seulement après tout ça que ton navigateur peut envoyer une requête vers le serveur web pour afficher le site 🤯. Ça explique pourquoi ta première visite sur un nouveau site met souvent plus de temps à charger. Dans le chapitre 6, nous parlerons des systèmes de cache qui permettent d'accélérer tout ça.

Les DNS alternatifs

Que tu sois sur Mac, Windows, Linux…, tu as la possibilité d’utiliser un autre serveur DNS que celui de ton FAI. Tu trouveras ça dans les paramètres réseaux de ta connexion Wi-Fi ou Ethernet.

Plusieurs raisons peuvent te pousser à faire ça : rapidité de résolution, sécurité contre les sites malveillants, blocage automatique des pubs et surtout contournement de la censure et du flicage.

Les gouvernements, pour des raisons de lutte contre le piratage, d’oppression politique, …, peuvent forcer les FAI à bloquer certains sites web. C’est par contre beaucoup plus dur pour eux d’imposer leur volonté sur des DNS alternatifs. Attention toutefois, ces DNS peuvent appartenir à de grands groupes non-neutres.

Les plus connus sont :

  • Cloudfare : 1.1.1.1
  • Google : 8.8.8.8
  • Open DNS, Cisco : 208.67.222.222
  • Quad9 : 9.9.9.9
  • AdGuard (bloqueur de pubs) : 176.103.130.130