Lorsque vous appelez une adresse IP, vous essayez gé­né­ra­le­ment de contacter un autre or­di­na­teur sur Internet. Cependant, si vous appelez l’adresse IP 127.0.0.1, vous com­mu­ni­quez en principe avec votre propre or­di­na­teur via le localhost. Mais quel est l’intérêt de commencer une con­ver­sa­tion virtuelle avec vous-même ? Pourquoi avez-vous besoin du localhost et comment ça marche ?

Nom de domaine
Votre domaine en un clic
  • 1 cer­ti­fi­cat SSL Wildcard par contrat
  • Fonction incluse Domain Connect pour une con­fi­gu­ra­tion DNS sim­pli­fiée

Qu’est-ce qu’un localhost ?

Pour expliquer ce qu’est localhost, il faut d’abord com­prendre qu’il désigne votre propre or­di­na­teur : lorsque vous appelez le localhost, votre machine com­mu­nique avec elle-même. Toutefois, cette vision reste sim­pli­fiée. Le localhost n’est pas di­rec­te­ment associé à votre adresse IP classique, mais utilise une adresse spé­ci­fique réservée au loopback, comme 127.0.0.1, dif­fé­rente de l’adresse attribuée par votre four­nis­seur d’accès Internet. Dans un réseau do­mes­tique, votre appareil peut également disposer d’une adresse interne telle que 192.168.0.1. Lorsque vous parlez d’un localhost, vous faites référence à un serveur exécuté sur votre propre or­di­na­teur, ac­ces­sible via localhost ou http://localhost, et associé à une adresse localhost dédiée au test et au dé­ve­lop­pe­ment.

In­ver­se­ment, cela signifie que le terme n’est utilisé que dans le contexte des réseaux. « localhost » n’est pas sim­ple­ment le nom du serveur virtuel, mais aussi son nom de domaine. Tout comme .test, .example ou .invalid, .localhost est un domaine de premier niveau réservé à des fins de do­cu­men­ta­tion et de test. Lorsque vous essayez d’accéder au domaine, un loopback (bouclage en français) est déclenché. Si vous accédez à http://localhost dans le na­vi­ga­teur, la demande ne sera pas transmise à Internet via le routeur, mais restera dans votre propre système. localhost a l’adresse IP 127.0.0.1, qui renvoie à votre propre serveur.

Image: localhost (127.0.0.1)
Re­pré­sen­ta­tion exem­plaire de la com­mu­ni­ca­tion entre un na­vi­ga­teur Web et un serveur Web dans un or­di­na­teur local

127.0.0.1 : comment fonc­tionne le loopback ?

Les adresses IP sont utilisées dans un réseau pour com­mu­ni­quer entre elles. Tous les par­ti­ci­pants du réseau ont leur propre adresse. Les paquets de données envoyés via TCP/IP peuvent atteindre la bonne des­ti­na­tion lorsque ce système est utilisé. La paire de pro­to­coles TCP (Trans­mis­sion Control Protocol) et IP (Internet Protocol) sont quelques-unes des pierres an­gu­laires d’Internet. Cependant, TCP/IP est aussi utilisé en dehors d’Internet, dans les réseaux locaux. Lors de la trans­mis­sion, le protocole Internet utilise l’adresse IP et le masque de sous-réseau (subnet) pour s’adresser aux abonnés d’un réseau.

Note

L’at­tri­bu­tion d’adresses IP publiques (ac­ces­sibles via Internet) est ré­gle­men­tée par une or­ga­ni­sa­tion in­ter­na­tio­nale : Internet Cor­po­ra­tion for Assigned Names and Numbers (ICANN, en français la Société pour l’at­tri­bu­tion des noms de domaine et des numéros sur Internet). De plus, l’ICANN est res­pon­sable de l’at­tri­bu­tion des noms de domaine ou du système de noms de domaine (DNS). Cependant, certaines plages d’adresses sont réservées à des fins spé­ci­fiques, telles que la plage 127.0.0.0 à 127.255.255.255.

Jusqu’aux années 1990, les adresses IP sur Internet étaient divisées en dif­fé­rentes classes. La première classe (classe A) a commencé avec 0.0.0.0 (cette adresse est également réservée) et s’est terminée avec 127.255.255.255. Le dernier bloc du réseau de classe A est 127. Cette position im­por­tante aurait pu être la raison pour laquelle elle a été choisie.

Dans cette plage d’adresses, il est possible de mettre en place un Localnet. Ce qui la rend par­ti­cu­lière n’est pas seulement qu’elle est réservée par l’ICANN, mais aussi que les adresses IP qu’elle contient ne sont pas at­tri­buées de manière unique, con­trai­re­ment aux adresses publiques. Comment cela fonc­tionne-t-il ? Lorsque vous saisissez une adresse IP ou un nom de domaine dans votre na­vi­ga­teur, le routeur envoie nor­ma­le­ment la requête sur Internet vers le serveur cor­res­pon­dant. Avec 127.0.0.1, la situation est dif­fé­rente : les requêtes ne quittent pas votre appareil et restent sur votre système local. TCP/IP reconnaît dès le premier bloc (127) qu’il s’agit d’une référence à votre propre machine, ce qui déclenche au­to­ma­ti­que­ment le loopback. C’est ainsi que localhost, son adresse IP dédiée et l’accès via http://localhost.

Remarque

Sous IPv6, l’adresse ::1 est réservée au loopback.

Un pé­ri­phé­rique de bouclage est créé pour que le loopback vers votre propre or­di­na­teur fonc­tionne. Il s’agit d’une interface virtuelle créée via le système d’ex­ploi­ta­tion. Avec les systèmes Unix, l’interface s’appelle « lo » ou « lo0 » et peut être affichée à l’aide de la commande ifconfig. Une commande similaire pour Windows est ipconfig.

Remarque

Si vous con­si­dé­rez la tech­no­lo­gie in­dé­pen­dam­ment du localhost, un loopback peut être créé de manière ana­lo­gique : les circuits de la tech­no­lo­gie de com­mu­ni­ca­tion peuvent alors être utilisés pour vérifier les chemins d’émission et de réception.

Quel est l’usage du localhost ?

Les dé­ve­lop­peurs utilisent localhost pour tester des pro­grammes et des ap­pli­ca­tions Web. Les ad­mi­nis­tra­teurs réseau peuvent également utiliser le loopback pour tester les con­nexions réseau. Une autre uti­li­sa­tion pratique du localhost est le hosts files, où vous pouvez utiliser le loopback pour bloquer les sites Web mal­veil­lants.

Note

Dans les en­vi­ron­ne­ments de dé­ve­lop­pe­ment modernes basés sur le Cloud, les serveurs locaux sont de moins en moins utilisés. À la place, on travaille avec des machines vir­tuelles ou des con­te­neurs exécutés dans le Cloud. Dans ce contexte, l’usage classique de localhost (127.0.0.1) pour simuler des con­nexions réseau devient moins pertinent, même si cette localhost IP ou l’accès via http://localhost restent utiles pour certains tests spé­ci­fiques.

Tests

L’uti­li­sa­tion prin­ci­pale du localhost dans les serveurs Web est destinée à la pro­gram­ma­tion d’ap­pli­ca­tions devant com­mu­ni­quer sur Internet. Au cours du dé­ve­lop­pe­ment, il est important de savoir si l’ap­pli­ca­tion fonc­tionne réel­le­ment comme prévu une fois que vous avez accès à Internet. Les autres fonctions des lo­cal­hosts ne sont possibles que si les fichiers requis sont dis­po­nibles sur Internet. Par exemple, il existe une dif­fé­rence entre ouvrir un document HTML sur votre PC ou le charger sur un serveur et y accéder. Publier un produit inachevé sans le tester n’a pas de sens, de sorte que les dé­ve­lop­peurs utilisent un loopback pour les tester. Ils peuvent simuler une connexion tout en évitant le détour du réseau : au lieu de cela, la connexion reste com­plè­te­ment dans leur propre système.

Un autre avantage de l’uti­li­sa­tion dans des tests est sa rapidité. Lorsque vous envoyez une demande via Internet, cela prend plus de 100 mil­li­se­condes. Si vous envoyez un ping au localhost, la durée de trans­mis­sion maximale est de seulement une mil­li­se­conde. Avec cette tech­no­lo­gie, vous pouvez également savoir si le protocole Internet est cor­rec­te­ment im­plé­menté ou non. Pour tester cela vous-même, ouvrez sim­ple­ment l’invite de commande (Windows) ou le terminal (Unix / Mac) et utilisez la commande ping. Vous pouvez soit l’envoyer au domaine « localhost » ou di­rec­te­ment à l’adresse IP.

ping localhost
ping 127.0.0.1
bash

Si vous souhaitez con­fi­gu­rer votre propre serveur de test sur votre PC pour l’adresser via localhost, vous devez d’abord installer le bon logiciel. Il est gé­né­ra­le­ment possible d’exécuter n’importe quel serveur Web standard sur votre propre or­di­na­teur, mais il existe aussi un logiciel spé­cia­le­ment conçu pour être utilisé comme localhost ; un exemple de ce type d’en­vi­ron­ne­ment est le logiciel XAMPP.

Cer­ti­fi­cats SSL
Faites le choix de la sécurité
  • Sécurisez vos trans­ferts de données
  • Renforcez la confiance de vos clients
  • Améliorez votre po­si­tion­ne­ment sur Google

Bloquer des sites Web

localhost joue un rôle important dans le fichier hosts. En principe, ce fichier est un pré­dé­ces­seur du système DNS (Domain Name System) : les adresses IP peuvent être affectées aux domaines cor­res­pon­dants. Si vous entrez une adresse de site Web dans le na­vi­ga­teur, le nom de domaine doit être traduit en une adresse IP. Au­pa­ra­vant, c’était le fichier hosts, mais aujourd’hui, vous uti­li­se­riez gé­né­ra­le­ment le DNS global. Cependant, le fichier est toujours présent dans la plupart des systèmes d’ex­ploi­ta­tion. Avec Windows, vous pouvez trouver le fichier sous \system32\drivers\etc\hosts, avec macOS et d’autres systèmes Unix, il se trouve sous /etc/hosts.

Si vous n’avez pas modifié le fichier, il reste pro­ba­ble­ment deux entrées :

127.0.0.1	localhost
::1			localhost
txt

Cela garantit que la ré­so­lu­tion de noms pour localhost ne doit pas être effectuée sur Internet. Vous pouvez aussi utiliser le fichier pour bloquer certains sites Web. Pour ce faire, entrez le site Web à bloquer dans la liste et attribuez l’adresse IP 127.0.0.1 au domaine. Si vous, ou un script mal­veil­lant, tentez d’accéder au domaine ver­rouillé, le na­vi­ga­teur vérifiera d’abord le fichier hosts et y trouvera votre entrée. Une autre option consiste à utiliser le nom de domaine 0.0.0.0.

Le na­vi­ga­teur essaiera alors d’accéder au site Web cor­res­pon­dant sur le serveur avec 127.0.0.1. Cependant, il est peu probable que le na­vi­ga­teur puisse le localiser, car le fichier demandé ne sera pas là. Cependant, si vous avez configuré votre propre serveur de test, le na­vi­ga­teur peut trouver le fichier exemple home.html, mais il ne s’agit que de votre propre fichier. Si vous n’avez pas configuré votre propre serveur de test, un message d’erreur ap­pa­raî­tra à la place du site Web demandé. De plus, cette tech­no­lo­gie peut être utilisée pour dé­sac­ti­ver les encarts pu­bli­ci­taires dans tout le système. Pour ne pas avoir à faire chaque entrée ma­nuel­le­ment, vous pouvez trouver des fichiers hosts ré­gu­liè­re­ment étendus sur Internet.

Note

Le fichier hosts peut avoir un impact majeur sur votre sécurité lorsque vous naviguez sur Internet. Bien que le fichier soit adapté au blocage de sites Web mal­veil­lants, les criminels peuvent toujours le manipuler. Vous devez donc vous assurer de ne pas copier les entrées d’autres sites Web sans les vérifier au préalable, et vous assurer que les logiciels mal­veil­lants ne tentent pas de créer des entrées à votre insu.

Aller au menu principal