Qual è la differenza tra il Locahost e l'indirizzo IP locale?

Sommario:

Qual è la differenza tra il Locahost e l'indirizzo IP locale?
Qual è la differenza tra il Locahost e l'indirizzo IP locale?

Video: Qual è la differenza tra il Locahost e l'indirizzo IP locale?

Video: Qual è la differenza tra il Locahost e l'indirizzo IP locale?
Video: Connecting your Windows 7 Computer to the Wi-fi Network. - YouTube 2024, Aprile
Anonim
 Se stai facendo un sacco di ritocchi di rete, configurazione di app e strumenti server basati su LAN, o semplicemente curiosi, probabilmente avrai notato che c'è una differenza tra l'host locale e l'indirizzo IP locale. Continua a leggere per imparare le differenze.
Se stai facendo un sacco di ritocchi di rete, configurazione di app e strumenti server basati su LAN, o semplicemente curiosi, probabilmente avrai notato che c'è una differenza tra l'host locale e l'indirizzo IP locale. Continua a leggere per imparare le differenze.

La sessione di domande e risposte di oggi ci viene fornita per gentile concessione di SuperUser, una suddivisione di Stack Exchange, un raggruppamento di domande e risposte basato sulla comunità.

La domanda

Lettore SuperUser Diogo vuole sapere perché il comando ping tratta l'host locale e l'indirizzo IP locale in modo diverso quando, in superficie, sembrano essere la stessa cosa:

Using cmd and ping on Windows gave me the following results:

Pinging “localhost”:

Pinging “192.168.0.10” (local IP address):
Pinging “192.168.0.10” (local IP address):
Aren’t both situations exactly the same?
Aren’t both situations exactly the same?

I mean, I’m pinging the same interface, the same machine and the same address. Why do I get such different results?

Ovviamente c'è una differenza di qualche tipo, ma cosa sta succedendo esattamente quando si passa da uno all'altro?

La risposta

Il collaboratore di SuperUser Tom Wijsman offre le seguenti informazioni sulle sottili differenze tra i due:

You are not pinging the same interface, without any physical interfaces you still have a “local host”.

Your

localhost

è usato per riferirsi al tuo computer dal suo IP "interno", non da eventuali IP "esterni" del tuo computer. Quindi, i pacchetti ping non passano attraverso alcuna interfaccia di rete fisica; solo attraverso un'interfaccia loopback virtuale che invia direttamente i pacchetti da una porta all'altra senza alcun luppolo fisico.

Potresti ancora chiedermi perché

localhost

sta risolvendo a

::1

mentre tradizionalmente ci aspettiamo che si risolva nell'indirizzo IPv4

127.0.0.1

. Nota che

.localhost

è tradizionalmente un TLD (vedi RFC 2606) che rimanda all'indirizzo IP loopback (per IPv4, vedere RFC 3330, in particolare 127.0.0.0/8).

Alzando lo sguardo

localhost

utilizzando

nslookup

ci da:

nslookup localhost

… Name: localhost Addresses:::1 127.0.0.1

Pertanto Windows preferisce utilizzare l'indirizzo IP di loop back IPv6

::1

(vedi RFC 2373) come è elencato per primo.

Ok, quindi, da dove proviene, diamo un'occhiata al file hosts.

type %WINDIR%System32DriversEtcHosts

… # localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost #::1 localhost …

Hmm, dobbiamo guardare le impostazioni DNS di Windows.

Questo articolo della Knowledge Base ci parla di un'impostazione che influisce su ciò che Windows preferisce, enfatizzato in grassetto:

  1. Nell'editor del Registro di sistema, individuare e quindi fare clic sulla seguente sottochiave del Registro di sistema:

    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip6Parameters

  2. Fare doppio clic su DisabledComponents per modificare la voce DisabledComponents. Nota: se la voce DisabledComponents non è disponibile, è necessario crearla. Per effettuare questa operazione, attenersi alla seguente procedura:

    1. Nel menu Modifica, scegliere Nuovo, quindi fare clic su Valore DWORD (32 bit).
    2. Digitare DisabledComponents e quindi premere INVIO.
    3. Fare doppio clic su DisabledComponents.
  3. Digitare uno dei seguenti valori nel campo Dati valore: per configurare il protocollo IPv6 allo stato desiderato, quindi fare clic su OK:

    • genere

      0

      per abilitare tutti i componenti IPv6. (Impostazione predefinita di Windows)

    • genere

      0xffffffff

      per disabilitare tutti i componenti IPv6, ad eccezione dell'interfaccia di loopback IPv6. Questo valore consente inoltre a Windows di preferire l'utilizzo di Protocollo Internet versione 4 (IPv4) su IPv6 modificando le voci nella tabella dei criteri del prefisso. Per ulteriori informazioni, vedere Selezione indirizzo sorgente e destinazione.

    • genere

      0x20

      per preferire IPv4 su IPv6 modificando le voci nella tabella dei criteri del prefisso.

    • genere

      0x10

      disabilitare IPv6 su tutte le interfacce non tunnel (su interfacce LAN e PPP [Point-to-Point Protocol]).

    • genere

      0x01

      disabilitare IPv6 su tutte le interfacce tunnel. Tra questi vi sono il protocollo ISAAP (Automatic Tunnel Addressing Protocol) intra-sito, 6to4 e Teredo.

    • genere

      0x11

      per disabilitare tutte le interfacce IPv6 tranne l'interfaccia di loopback IPv6.

  4. Riavvia il computer affinché questa impostazione abbia effetto.

Cos'è questa tabella dei criteri del prefisso?

netsh interface ipv6 show prefixpolicies

(o

prefixpolicy

sulle versioni precedenti)

Precedence Label Prefix ---------- ----- -------------------------------- 50 0::1/128 45 13 fc00::/7 40 1::/0 10 4::ffff:0:0/96 7 14 2002::/16 5 5 2001::/32 1 11 fec0::/10 1 12 3ffe::/16 1 10::/96

Questa tabella decide quali prefissi hanno la precedenza su altri prefissi durante le risoluzioni DNS.

Ah, quindi usando quel KB potremmo aggiungere voci che denotano che IPv4 ha una precedenza più alta di IPv6.

Nota: Non c'è motivo di ignorare questo comportamento, a meno che non si verifichino problemi compatibili. La modifica di questa impostazione sul nostro server Windows ha rotto il nostro server di posta, quindi dovrebbe essere gestito con cura …

Non c'è niente che ci piaccia più di una risposta esauriente e informativa con i documenti di supporto collegati da risparmiare. Chiaramente l'host locale e l'indirizzo IP locale sono entità distinte, servono a scopi diversi e ora sappiamo tutti perché.

Hai qualcosa da aggiungere alla spiegazione? Sound off nei commenti. Vuoi leggere più risposte dagli altri utenti di Stack Exchange esperti di tecnologia? Controlla la discussione completa qui.

Consigliato: