Quelques rappels sur l’IP, le DNS et les protocoles

En écrivant le billet Votre url, vous la prendrez avec ou sans www , je me suis dit que la base pourrait manquer à certains, d’où ce billet qui vise à rappeler certaines notions de l’adressage sur internet.

IP <=> Nom de Domaine
L’adresse d’un ordinateur sur le réseau Internet est l’adresse IP. Elle est composée de 4 fois trois nombres (entre 0 et 255) séparés par des points : 126.24.13.251 par exemple. Comme ce n’est pas facile à retenir, on attribue généralement à ces IP un surnom, dit Nom de Domaine, tel example.com. Ce surnom est composé d’un TLD (Top Level Domain ou Domaine de plus haut niveau, plus communément appelée “extension du nom de domaine”), ici “com” et d’un nom de domaine, “example”, séparés par un point.
On notera qu’il existe deux types de TLD :

  • les ccTLD pour Country Code Top Level Domain, tel “fr” pour la France, ou “es” pour l’Espagne,
  • les TLD génériques : “com”, “net”, “org”, “info”, …

Si le nom de domaine ne nous suffit pas, on peut créer des sous-domaines. Le sous-domaine apparait avant le nom de domaine et est séparé de lui par un point. Par exemple, dans www.example.com, www est en fait un sous-domaine de example.com. Ceci pourra être utilisé, par exemple, pour faire deux versions d’un même site dans deux langues différentes : fr.example.com proposera une version en français, et en.example.com une version en anglais.

Attention ! Depuis le début, lorsque je parle de nom de domaine, il s’agit du “Registered Domain Name”, celui que l’on peut acheter auprès des Registrars (tels Gandi ou OVH). C’est le nom avant le TLD, comme au hasard “sowenga”. Mais par abus, on désigne souvent par nom de domaine l’ensemble sous-domaine+nom de domaine+TLD, par exemple sandbox.sowenga.net.

Lorsque vous indiquez un nom de domaine dans la barre d’adresse, votre ordinateur va chercher à résoudre ce nom de domaine, c’est à dire à le transformer en adresse IP qui lui permettra de contacter le serveur. Il va pour cela interroger un serveur DNS qui connaît la table de correspondance entre les deux (ou qui lui-même demandera à un autre DNS de plus haut niveau si ce n’est pas le cas). Ceci est totalement transparent pour une utilisation classique.

URL = Protocole + Nom de domaine
Ce n’est pas le tout de connaître le nom de domaine. En informatique comme en politique, il y a un art de demander les choses : le protocole. Pour demander une page web, il faut la demander en ajoutant “http://” devant le nom de domaine. On obtient alors l’adresse complète du site internet, appelée URL : http://www.sowenga.net pour ce site. D’autres protocoles existent, dont l’autre plus largement connu est sans doute le protocole “ftp”. On accède au serveur en préfixant “ftp://” au nom de domaine : ftp://www.example.com.

Comme les navigateurs web tels Internet Explorer, Firefox ou Safari sont principalement destinés à accéder aux serveurs via le protocole “http” et aussi compte tenu du fait que taper à chaque fois http:// est fastidieux, ces derniers rajoutent automatiquement le préfixe “http://” si vous n’indiquez rien. Ainsi, si vous tapez www.example.net dans la barre d’adresse et appuyez sur “Enter”, vous verrez l’adresse se transformer automatiquement en http://www.example.net. Il n’est donc pas nécessaire de s’en soucier.

L’URL peut contenir plus d’information encore, mais c’est une autre histoire.

Un monde de domination
Comme nous l’avons vu, en dessous de l’extension (ou TLD) et du nom de domaine peut exister un sous-domaine (dans sandbox.sowenga.net, sandbox est un sous-domaine). Certains noms de sous-domaines sont réservés par convention pour des usages précis, tel ftp, mail, pop, www ou encore dns.
Ainsi, derrière l’adresse ftp.example.com, on est en droit de s’attendre à trouver un serveur ftp, et derrière www, un serveur web dont votre navigateur saura quoi faire.
En réalité, dans la mesure où le protocole indique déjà le type d’échange qui va avoir lieu, l’information est parfaitement facultative et redondante. Les URL “ftp://example.com”, “ftp://ftp.example.com” ou même “ftp://www.example.com” sont toutes autant acceptables les unes que les autres, et marcheront toutes aussi bien les unes que les autres pour peu que le serveur soit bien configuré et que chacune des adresses renvoie vers un serveur ftp.

Quelle différence entre sandbox.example.net et example.net/sandbox/ ?
Dans le premier cas, sandbox est un sous-domaine de example.net, tandis que dans le second, sandbox est un sous-répertoire du répertoire dans lequel se trouve la page principale de example.net.
La différence est fondamentale : “sandbox.example.net” est un nom de domaine (au sens large), que l’on peut diriger vers une IP, c’est à dire un ordinateur, au même titre que “example.net”, ce qui n’est pas le cas de “example.net/sandbox/”. Ainsi, bien que “sandbox.sowenga.net” et “sowenga.net” soient issus du même “Registered Domain Name” (sowenga), on peut faire pointer le premier vers un ordinateur situé à l’adresse 127.0.1.1 (situé physiquement à Pékin) et le deuxième vers celui à l’adresse 127.0.1.2 (situé physiquement à Saint-Pétersbourg).
Si vous possédiez un nom de domaine, vous pourriez par exemple diriger www.example.com vers le serveur qui héberge votre site, et mycomputer.example.com vers votre ordinateur personnel afin d’y avoir accès à distance via une adresse facile à retenir.

Slashez être propre
Si vous voulez écrire proprement une URL dans un texte ou pour faire un lien, rajoutez toujours le slash (”/”) à la fin. L’adresse “http://www.example.com/” est ainsi syntaxiquement correcte, car elle indique que l’on souhaite atteindre la racine (dont “/” est le symbole) du serveur web (car on a mis “http://”) caché derrière le nom de domaine “www.example.com”. Ne pas l’écrire reviendrait à donner l’adresse de votre maison à quelqu’un sans lui préciser par où rentrer : est-ce par la porte d’entrée, soit le “/”, ou bien par une fenêtre (un sous-répertoire, tel /fenetre/) ? Que l’adresse soit virtuelle ou réelle, la précision est facultative (soit parce que cela relève du sens commun humain, soit parce que le navigateur le rajoute aussi tout seul, de même qu’il rajoute le “http://”), mais parfois nécessaire (vous avez perdu la clé…). Vous pouvez donc maintenant corriger mentalement les URL des paragraphes précédents…

Pour faire simple et conclure
Dans http://www.sowenga.net/ nous avons :

  • http:// : le protocole
  • www : le sous-domaine
  • sowenga : le nom de domaine
  • net : l’extension
  • / : le dossier du serveur auquel nous souhaitons accéder

Par ailleurs, tout nom de domaine au sens large (sous-domaine(s)+nom de domaine+extension) peut renvoyer vers une IP différente des autres noms de domaines, même si la racine (nom de domaine+extension) est la même.

Une question qui ressort de tout ça est : pourquoi garder le www dans l’URL de sa page principale ?

Leave a Reply