En informatique, localhost fait référence à un ordinateur, quel qu’il soit, situé physiquement au même endroit que nous. Du moins sur le même réseau local que celui auquel nous sommes connectés. Et généralement, l’adresse IP 127.0.0.1 fait référence à cet ordinateur.
Mais qu’est-ce qu’un hôte ? Il s’agit d’un terme technique qui désigne tout appareil connecté à un réseau. Il peut s’agir d’un ordinateur, d’un serveur, d’une caméra de surveillance, d’une console de jeux vidéo ou d’une télévision intelligente.
C’est la raison pour laquelle le terme composé localhost fait référence à un ordinateur qui se trouve physiquement sur le même réseau local que nous. En outre, 127.0.0.1 est une adresse IP de bouclage, ce qui signifie que l’hôte accède à ses propres services indépendamment de la configuration du réseau dans lequel il se trouve.
L’utilisation du loopback peut être utile mais surtout extrêmement pratique pour accéder à des services réseau sur sa propre machine sans consulter la configuration réseau dans laquelle on se trouve. L’exemple le plus courant est l’accès à une page d’un serveur web installé sur la machine où l’on se trouve en tapant simplement 127.0.0.1 dans le navigateur.
Presque toutes les normes de réseau IPv4 utilisent l’adresse de bouclage 127.0.0.1, réservant tout le bloc de ces adresses à cette fin. En revanche, la norme IPv6 utilise l’adresse 0:0:0:0:0:0:0:0:0:0:1 ou simplement ::1 comme adresse de bouclage, ce qui est beaucoup plus logique d’un point de vue sémantique.
Pourquoi 127.0.0.1 ?
La raison ne semble pas être entièrement documentée, mais grâce à un fil de discussion sur le forum Superuser.com, nous pouvons avoir une idée plus ou moins claire.
127 est le dernier chiffre d’un réseau de classe A, avec un masque de sous-réseau de 255.0.0.0.0. Et 127.0.0.1 est la première adresse assignable de ce sous-réseau. Les valeurs 0, 127 et 255 sont spéciales dans les langages d’assemblage 8 bits. En binaire, 127 correspond à 01111111 et 255 à 11111111. Si les chiffres 0 et 255 sont réservés, le choix de 127 peut être évident ou le plus facile à retenir.
Un document de 1986 sur l’attribution des numéros de réseau offre un peu plus d’informations sur la décision concernant l’attribution de l’adresse IP 127.0.0.1 à l’hôte local :
L’adresse zéro doit être interprétée comme signifiant “ceci”, comme dans “ce réseau”. Par exemple, l’adresse 0.0.0.0.37 peut être interprétée comme l’hôte numéro 37 sur ce réseau.L’adresse des seuls doit être interprétée comme signifiant “tous”, comme dans “tous les hôtes”. Par exemple, l’adresse 12.9.255.255 peut être interprétée comme signifiant tous les hôtes du réseau 128.9.Le numéro 127 du réseau de classe A s’est vu attribuer la fonction de “bouclage”, ce qui signifie qu’un flux de données envoyé par un protocole de haut niveau à un réseau 127 doit revenir à l’intérieur de l’hôte.
En 1981, 0 et 127 étaient les seuls réseaux de classe A réservés. Le numéro 0 était utilisé pour pointer vers l’hôte local, ce qui laissait 127 pour le bouclage. Cependant, 127.0.0.1 pourrait bientôt ne plus être le moyen d’accéder aux services du réseau local, car le protocole IPv6 devient de plus en plus populaire et de plus en plus utilisé dans les réseaux du monde entier, nous reviendrons à l’adresse ::1.