Que signifie l’adresse IP http://127.0.0.1 (localhost)

Résolu/Fermé
adonis - Modifié le 22 janv. 2019 à 09:54
 Jean-Marie - 25 mars 2019 à 17:52
Que désigne l’adresse IP http://127.0.0.1 et quelle est la différence entre cette adresse et celle-ci http://localhost/
A voir également:

3 réponses

Localhost ou 127.0.0.1 ça revient au même. C'est une adresse qui représente l'interface de la machine locale (celle sur laquelle elle est appelée). Cela permet de faire référence à votre machine, sans avoir à connaître son (ou ses) adresse(s) IP réelle(s). Ainsi, n'importe quelle machine supportant le protocole IP peut s'adresser à localhost, même sans être connectée à un réseau physique.

Cela vient des standards écrits par les ingénieurs qui définissent les "règles" de fonctionnement d'Internet.

Ces "standards" s'appellent des RFC (requests for comment), et il y en a des centaines et des centaines de pages. Ils sont regroupés par numéros.
Celui qui explique les adresses IP (version 4) est le RFC 3330 ( on peut le lire ici : https://www.ietf.org/rfc/rfc3330.txt).

Le groupe d'ingénieurs qui écrit ces papiers s'appelle IETF (Internet Engineering Task Force).

On y découvre, notamment, que toute paquet adressé à une adresse qui commence par 127.x.x.x, doit être redirigée vers l'équipement lui-même depuis lequel on adresse le paquet. Une boucle en retour (loopback) en quelque sorte.
Donc cela vaut pour, par exemple, les adresse 127.240.27.18, ou 127.0.0.1, ou 127.54.38.125, etc....

Par conséquent, tout système d'exploitation digne de ce nom, doit respecter les "règles" définies par l'IETF.

Car ce n'est pas au navigateur de connaître ces règles, mais au service (ou démon) TCP/IP qui tourne sur votre système d'exploitation.
C'est ce dernier qui fait office de "chef de gare" et aiguille tous les paquets de données IP vers le bon endroit.

C'est ce service qui va recevoir le paquets IP envoyés par votre navigateur et les redirigera au bon endroit (sur Internet ou sur votre propre ordinateur).

La réponse à votre question est donc "non" : votre navigateur "n'a pas besoin de savoir" que les adresses commençant par 127 signifient "la machine locale" (et en aucun cas une machine sur Internet).
C'est au service TCP/IP fonctionnant sur votre système d'exploitation (windows, linux, mac) qu'échoit la tâche d'aiguiller les paquets vers la bonne interface (votre ordinateur ou une carte réseau).

Les paquets adressés à une adresse commençant par 127 n'iront jamais sur Internet.

Une dernière remarque. Tout cela va peu à peu changer avec l'arrivée de la version 6 du protocole IP. Les adresses n'auront plus 32 bits, mais 128 bits.
Et les règles seront complètement différentes. Par exemple, il n'y aura plus de broadcast possible.
Une adresse IP version 6 aura la gueule suivante :
2001:0db8:0000:85a3:0000:0000:ac1f:8001

Bizarre hein ?

L'adresse de boucle en retour (loopback) ou localhost deviendra alors :
0000:0000:0000:0000:0000:0000:0000:0001
qui peut être abrégée comme ceci :
::1

Pour les passionnés, vous trouverez tout les explications du fonctionnement de IPv6 ici : http://livre.g6.asso.fr/index.php/Main_Page
Attention, il faut avoir les notions de bases d'utilisation des adresse IPv4 pour y comprendre quelque chose (ce qu'est un masque de sous-réseau (préfixe) et comment on l'utilise).
229
merci pour ton explication. c'est super bien expliqué .bravo
0
UN petit merci de la part d'un étudiant en informatique (TAI), j'ai enfin compris !
0