Cos'è Localhost e Come Si Differenzia da 127.0.0.1?

Anche quando ogni dispositivo di rete è disconnesso, il tuo computer può comunque comunicare attraverso una sorta di rete. Conosciuto come “loopback”, un sistema Unix può inviare e ricevere comunicazioni di rete da se stesso e per se stesso attraverso un dispositivo di rete virtuale. Il tuo computer può inviare messaggi da se stesso a se stesso, permettendo comunicazioni in stile rete senza la necessità di una rete funzionante.

Cos’è 127.0.0.1?

127.0.0.1 è l’indirizzo IP di loopback più comunemente usato. Fa parte del blocco riservato di oltre sedici milioni di indirizzi IP utilizzati specificamente per la funzionalità di loopback. Un loopback consente al tuo computer di comunicare con se stesso mentre utilizza protocolli di connessione di rete.

In astratto, un loopback è un dispositivo di rete virtuale che crea una connessione di rete con un solo endpoint, il che significa che inizia e termina sullo stesso dispositivo: il tuo computer. Infatti, il dispositivo di loopback appare anche in ipconfig con il nome lo, come visto sopra. Gli indirizzi di loopback sono utilizzati principalmente per la risoluzione dei problemi (è simile a guardarsi in uno specchio) o per accedere a risorse locali tramite un’interfaccia di rete.

Leggi anche: Come utilizzare Nginx come reverse proxy

Cos’è localhost?

differenza-localhost-127-0-0-1-rete

“localhost” descrive una porta di comunicazione che si collega al server di origine. Permette a una connessione di rete di “ritornare” su se stessa, consentendoti di emulare connessioni di rete quando non è presente o disponibile una rete. Nella pratica, localhost è trattato come sinonimo di 127.0.0.1 per uso e discussione. Tuttavia, è importante ricordare che non sono strettamente identici.

Prima di effettuare una richiesta DNS per tradurre la stringa di testo digitata dall’utente in un indirizzo IP navigabile, il sistema operativo controlla il file HOSTS per eventuali alias o regole di reindirizzamento. Su un sistema configurato con le impostazioni predefinite standard, “localhost” in un URI si risolverà in 127.0.0.1 sotto IPv4 o::1 per IPv6. Tuttavia, ci sono molti più indirizzi di loopback oltre a questi due. Il blocco di indirizzi IP riservati per gli indirizzi di loopback si estende da 127.0.0.0 a 127.255.255.255.

Nella maggior parte dei casi, localhost si risolverà in 127.0.0.1, grazie a una regola di reindirizzamento nel file HOSTS, come menzionato sopra. Ma in alcuni casi, localhost potrebbe essere mappato a un indirizzo IP diverso. Quindi, localhost potrebbe essere puntato a qualsiasi indirizzo IP in quel blocco e funzionerebbe in modo identico.

Conclusione: Qual è la Differenza tra localhost e 127.0.0.1?

Su la maggior parte delle macchine, localhost e 127.0.0.1 sono funzionalmente identici. Ma localhost è un etichetta per l’indirizzo IP e non l’indirizzo stesso. Localhost potrebbe essere puntato a indirizzi IP diversi. Infatti, potrebbe essere puntato a qualsiasi indirizzo IP, anche uno al di fuori del blocco di indirizzi riservati. Il file HOSTS non si preoccupa e non ti fermerà. Tuttavia, romperà funzionalità significative sul tuo sistema e farà crashare qualsiasi app che dipende da una connessione localhost.

Il blocco di indirizzi 127 è stato scelto per il blocco di indirizzi di loopback perché era l’ultimo blocco di indirizzi di Classe A, che vanno dal valore binario dell’indirizzo 00000001 a 01111111. In IPv6, l’indirizzo di loopback è il primo indirizzo, 0:0:0:0:0:0:0:1, espresso più frequentemente nella sua forma troncata come ::1.

Se stai passando da Windows a un sistema Unix, potresti aver notato che il loopback è praticamente sinonimo di localhost. Puoi utilizzare il tuo file HOSTS per far sì che “loopback” reindirizzi a 127.0.0.1, ma si tratta più di una sostituzione di testo che di altro.