Comprendre et utiliser localhost
Lorsque vous appelez une adresse IP, vous essayez généralement de contacter un autre ordinateur sur Internet. Cependant, si vous appelez l’adresse IP 127.0.0.1, vous communiquez en principe avec votre propre ordinateur via le localhost. Mais quel est l’intérêt de commencer une conversation virtuelle avec vous-même ? Pourquoi avez-vous besoin du localhost et comment ça marche ?
- 1 certificat SSL Wildcard par contrat
- Fonction incluse Domain Connect pour une configuration DNS simplifiée
Qu’est-ce qu’un localhost ?
Pour expliquer ce qu’est localhost, il faut d’abord comprendre qu’il désigne votre propre ordinateur : lorsque vous appelez le localhost, votre machine communique avec elle-même. Toutefois, cette vision reste simplifiée. Le localhost n’est pas directement associé à votre adresse IP classique, mais utilise une adresse spécifique réservée au loopback, comme 127.0.0.1, différente de l’adresse attribuée par votre fournisseur d’accès Internet. Dans un réseau domestique, 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 ordinateur, accessible via localhost ou http://localhost, et associé à une adresse localhost dédiée au test et au développement.
Inversement, cela signifie que le terme n’est utilisé que dans le contexte des réseaux. « localhost » n’est pas simplement 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 documentation 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 navigateur, 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.

127.0.0.1 : comment fonctionne le loopback ?
Les adresses IP sont utilisées dans un réseau pour communiquer entre elles. Tous les participants du réseau ont leur propre adresse. Les paquets de données envoyés via TCP/IP peuvent atteindre la bonne destination lorsque ce système est utilisé. La paire de protocoles TCP (Transmission Control Protocol) et IP (Internet Protocol) sont quelques-unes des pierres angulaires d’Internet. Cependant, TCP/IP est aussi utilisé en dehors d’Internet, dans les réseaux locaux. Lors de la transmission, 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.
L’attribution d’adresses IP publiques (accessibles via Internet) est réglementée par une organisation internationale : Internet Corporation for Assigned Names and Numbers (ICANN, en français la Société pour l’attribution des noms de domaine et des numéros sur Internet). De plus, l’ICANN est responsable de l’attribution 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écifiques, 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 diffé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 importante 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 particuliè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 attribuées de manière unique, contrairement aux adresses publiques. Comment cela fonctionne-t-il ? Lorsque vous saisissez une adresse IP ou un nom de domaine dans votre navigateur, le routeur envoie normalement la requête sur Internet vers le serveur correspondant. Avec 127.0.0.1, la situation est diffé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 automatiquement le loopback. C’est ainsi que localhost, son adresse IP dédiée et l’accès via http://localhost.
Sous IPv6, l’adresse ::1 est réservée au loopback.
Un périphérique de bouclage est créé pour que le loopback vers votre propre ordinateur fonctionne. Il s’agit d’une interface virtuelle créée via le système d’exploitation. 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.
Si vous considérez la technologie indépendamment du localhost, un loopback peut être créé de manière analogique : les circuits de la technologie de communication peuvent alors être utilisés pour vérifier les chemins d’émission et de réception.
Quel est l’usage du localhost ?
Les développeurs utilisent localhost pour tester des programmes et des applications Web. Les administrateurs réseau peuvent également utiliser le loopback pour tester les connexions réseau. Une autre utilisation pratique du localhost est le hosts files, où vous pouvez utiliser le loopback pour bloquer les sites Web malveillants.
Dans les environnements de développement modernes basés sur le Cloud, les serveurs locaux sont de moins en moins utilisés. À la place, on travaille avec des machines virtuelles ou des conteneurs exécutés dans le Cloud. Dans ce contexte, l’usage classique de localhost (127.0.0.1) pour simuler des connexions réseau devient moins pertinent, même si cette localhost IP ou l’accès via http://localhost restent utiles pour certains tests spécifiques.
Tests
L’utilisation principale du localhost dans les serveurs Web est destinée à la programmation d’applications devant communiquer sur Internet. Au cours du développement, il est important de savoir si l’application fonctionne réellement comme prévu une fois que vous avez accès à Internet. Les autres fonctions des localhosts ne sont possibles que si les fichiers requis sont disponibles sur Internet. Par exemple, il existe une diffé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éveloppeurs 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 complètement dans leur propre système.
Un autre avantage de l’utilisation dans des tests est sa rapidité. Lorsque vous envoyez une demande via Internet, cela prend plus de 100 millisecondes. Si vous envoyez un ping au localhost, la durée de transmission maximale est de seulement une milliseconde. Avec cette technologie, vous pouvez également savoir si le protocole Internet est correctement implémenté ou non. Pour tester cela vous-même, ouvrez simplement l’invite de commande (Windows) ou le terminal (Unix / Mac) et utilisez la commande ping. Vous pouvez soit l’envoyer au domaine « localhost » ou directement à l’adresse IP.
ping localhost
ping 127.0.0.1bashSi vous souhaitez configurer 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éralement possible d’exécuter n’importe quel serveur Web standard sur votre propre ordinateur, mais il existe aussi un logiciel spécialement conçu pour être utilisé comme localhost ; un exemple de ce type d’environnement est le logiciel XAMPP.
- Sécurisez vos transferts de données
- Renforcez la confiance de vos clients
- Améliorez votre positionnement sur Google
Bloquer des sites Web
localhost joue un rôle important dans le fichier hosts. En principe, ce fichier est un prédécesseur du système DNS (Domain Name System) : les adresses IP peuvent être affectées aux domaines correspondants. Si vous entrez une adresse de site Web dans le navigateur, le nom de domaine doit être traduit en une adresse IP. Auparavant, c’était le fichier hosts, mais aujourd’hui, vous utiliseriez généralement le DNS global. Cependant, le fichier est toujours présent dans la plupart des systèmes d’exploitation. 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 probablement deux entrées :
127.0.0.1 localhost
::1 localhosttxtCela garantit que la résolution 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 malveillant, tentez d’accéder au domaine verrouillé, le navigateur 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 navigateur essaiera alors d’accéder au site Web correspondant sur le serveur avec 127.0.0.1. Cependant, il est peu probable que le navigateur puisse le localiser, car le fichier demandé ne sera pas là. Cependant, si vous avez configuré votre propre serveur de test, le navigateur 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 apparaîtra à la place du site Web demandé. De plus, cette technologie peut être utilisée pour désactiver les encarts publicitaires dans tout le système. Pour ne pas avoir à faire chaque entrée manuellement, vous pouvez trouver des fichiers hosts régulièrement étendus sur Internet.
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 malveillants, 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 malveillants ne tentent pas de créer des entrées à votre insu.

