Homepage » come » Qual è la differenza tra 127.0.0.1 e 0.0.0.0?

    Qual è la differenza tra 127.0.0.1 e 0.0.0.0?

    Molti di noi hanno sentito parlare di "127.0.0.1 e 0.0.0.0" ma probabilmente non ci hanno pensato molto, ma se entrambi sembrano puntare alla stessa posizione, allora qual è la differenza effettiva tra i due? Il post di Q & A di SuperUser di oggi aiuta a chiarire le cose per un lettore confuso.

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

    Foto per gentile concessione di Kate Gardiner (Flickr).

    La domanda

    Il lettore SuperUser Sagnik Sarkar vuole sapere qual è la differenza tra 127.0.0.1 e 0.0.0.0:

    Capisco che 127.0.0.1 punti a localhost e anche quello 0.0.0.0 (correggimi se sbaglio). Quindi, qual è la differenza tra 127.0.0.1 e 0.0.0.0?

    Qual è la differenza tra 127.0.0.1 e 0.0.0.0?

    La risposta

    Il collaboratore di SuperUser DavidPostill ha la risposta per noi:

    Qual è la differenza tra 127.0.0.1 e 0.0.0.0?

    • 127.0.0.1 è l'indirizzo di loopback (noto anche come localhost).
    • 0.0.0.0 è un meta indirizzo non instradabile utilizzato per designare un target non valido, sconosciuto o non applicabile (un segnaposto di 'nessun indirizzo particolare').

    Nel contesto di una voce di rotta, in genere indica la rotta predefinita.

    Nel contesto dei server, 0.0.0.0 significa tutti gli indirizzi IPv4 sulla macchina locale. Se un host ha due indirizzi IP, 192.168.1.1 e 10.1.2.1, e un server in esecuzione sull'host è in ascolto su 0.0.0.0, sarà raggiungibile su entrambi gli IP.

    Qual è l'indirizzo IP 127.0.0.1?

    127.0.0.1 è l'indirizzo IP (loopback Internet protocol) chiamato anche il localhost. L'indirizzo viene utilizzato per stabilire una connessione IP alla stessa macchina o computer utilizzata dall'utente finale.

    La stessa convenzione è definita per i computer che supportano l'indirizzamento IPv6 utilizzando la connotazione di :: 1. Stabilire una connessione usando l'indirizzo 127.0.0.1 è la pratica più comune; tuttavia, l'uso di qualsiasi indirizzo IP nell'intervallo di 127 ... * funzionerà nello stesso modo o in un modo simile. Il costrutto loopback fornisce a un computer o dispositivo in grado di collegare in rete la capacità di convalidare o stabilire lo stack IP sulla macchina.

    Fonte: 127.0.0.1 - Quali sono i suoi usi e perché è importante?

    Indirizzi speciali

    Il numero di rete della classe A 127 è assegnato a loopback funzione, cioè, un datagramma inviato da un protocollo di livello superiore ad un indirizzo di rete 127 dovrebbe tornare indietro nell'host. Nessun datagramma inviato a un indirizzo di rete 127 dovrebbe mai apparire su qualsiasi rete ovunque.

    Fonte: Numeri di rete

    Se è tutta la classe A, qual è il punto di altri valori arbitrari per gli ultimi tre ottetti?

    Lo scopo dell'intervallo di loopback è il test dell'implementazione del protocollo TCP / IP su un host. Poiché gli strati inferiori sono cortocircuitati, l'invio a un indirizzo di loopback consente di testare efficacemente gli strati superiori (IP e superiori) senza la possibilità che si manifestino problemi agli strati inferiori. 127.0.0.1 è l'indirizzo più comunemente utilizzato a scopo di test.

    Fonte: Riservato IP, loopback e indirizzi privati

    Per maggiori informazioni vedi il Chiedi a Ubuntu domanda: che cos'è il dispositivo Loopback e come posso usarlo?

    Qual è l'indirizzo IP 0.0.0.0?

    0.0.0.0 è una sintassi di indirizzo valida. Quindi dovrebbe analizzare come valido ovunque sia previsto un indirizzo IP nella tradizionale notazione decimale puntata. Una volta analizzato e convertito in forma numerica utilizzabile, il suo valore determina cosa succederà dopo.

    Il valore tutto-zero ha un significato speciale. Così è valido, ma ha un significato che potrebbe non essere appropriato (e quindi considerato non valido) per circostanze particolari. È fondamentalmente il segnaposto "nessun indirizzo particolare". Per cose come l'associazione degli indirizzi delle connessioni di rete, il risultato può essere quello di assegnare un indirizzo di interfaccia appropriato alla connessione. Se lo si utilizza per configurare un'interfaccia, può invece rimuovere un indirizzo dall'interfaccia. Dipende dal contesto di utilizzo per determinare cosa "realmente non fa un particolare indirizzo".

    Nel contesto di una voce di rotta, in genere indica la rotta predefinita. Ciò accade come risultato più della maschera di indirizzo, che seleziona i bit da confrontare. Una maschera di 0.0.0.0 non seleziona alcun bit, quindi il confronto avrà sempre successo. Quindi, quando tale percorso è configurato, c'è sempre un posto dove andare (se configurato con una destinazione valida).

    In alcuni casi, solo lo "0" funzionerà e avrà lo stesso effetto. Ma questo non è garantito. Il form 0.0.0.0 è il modo standard per dire "nessun indirizzo particolare" (in IPv6 cioè :: 0 o semplicemente ::).

    Fonte: Qual è il significato dell'indirizzo IP 0.0.0.0?

    In Internet Protocol versione 4, l'indirizzo 0.0.0.0 è un meta indirizzo non instradabile utilizzato per designare una destinazione non valida, sconosciuta o non applicabile. Dare un significato speciale a un dato di dati altrimenti non valido è un'applicazione di segnalazione in-band.

    Nel contesto dei server, 0.0.0.0 significa tutti gli indirizzi IPv4 sulla macchina locale. Se un host ha due indirizzi IP, 192.168.1.1 e 10.1.2.1, e un server in esecuzione sull'host è in ascolto su 0.0.0.0, sarà raggiungibile a entrambi gli IP (Nota: Questo particolare testo viene ripetuto dall'alto come parte della risposta generale).

    Nel contesto del routing, 0.0.0.0 indica in genere il percorso predefinito, ovvero il percorso che conduce a "il resto" di Internet anziché da qualche parte sulla rete locale.

    Gli usi includono:

    • L'indirizzo che un host rivendica come proprio quando non è stato ancora assegnato un indirizzo. Ad esempio quando si invia il pacchetto DHCPDISCOVER iniziale quando si utilizza DHCP.
    • L'indirizzo che un host assegna a se stesso quando una richiesta di indirizzo via DHCP è fallita, a condizione che lo stack IP dell'host lo supporti. Questo utilizzo è stato sostituito con il meccanismo APIPA nei moderni sistemi operativi.
    • Un modo per specificare qualsiasi host IPv4. Viene usato in questo modo quando si specifica una rotta predefinita.
    • Un modo per specificare esplicitamente che la destinazione non è disponibile. Fonte: 127.0.0.1 - Quali sono i suoi usi e perché è importante?
    • Un modo per specificare qualsiasi indirizzo IPv4. Viene utilizzato in questo modo durante la configurazione dei server (ad es. Durante il binding di socket di ascolto). Questo è noto ai programmatori TCP come INADDR_ANY. [bind (2) si lega agli indirizzi, non alle interfacce.]

    In IPv6, l'indirizzo di tutti gli zeri è scritto come ::

    Fonte: 0.0.0.0 [Wikipedia]

    Ricerca / richiesta DHCP

    Quando un client si avvia per la prima volta, si dice che sia nel stato di inizializzazione, e trasmette un messaggio DHCPDISCOVER sulla sua subnet fisica locale sulla porta UDP (User Datagram Protocol) 67 (server BootP). Poiché il client non ha modo di conoscere la sottorete alla quale appartiene, il DHCPDISCOVER è una trasmissione broadcast di tutte le subnet (indirizzo IP di destinazione 255.255.255.255), con un indirizzo IP di origine 0.0.0.0. L'indirizzo IP di origine è 0.0.0.0 poiché il client non ha un indirizzo IP configurato.

    Se in questa sottorete locale esiste un server DHCP configurato e funzionante correttamente, il server DHCP ascolterà la trasmissione e risponderà con un messaggio DHCPOFFER. Se un server DHCP non esiste nella subnet locale, deve essere presente un agente di inoltro DHCP / BootP su questa sottorete locale per inoltrare il messaggio DHCPDISCOVER a una sottorete che contiene un server DHCP.

    Questo agente relay può essere un host dedicato (ad esempio Microsoft Windows Server) o un router (un router Cisco configurato con istruzioni helper IP a livello di interfaccia, ad esempio).

    ...

    Dopo che il client riceve un DHCPOFFER, risponde con un messaggio DHCPREQUEST, indicando il suo intento di accettare i parametri nel DHCPOFFER e si sposta nel stato richiedente. Il client può ricevere più messaggi DHCPOFFER, uno da ciascun server DHCP che ha ricevuto il messaggio DHCPDISCOVER originale. Il client sceglie un DHCPOFFER e risponde solo a quel server DHCP, implicitamente declinando tutti gli altri messaggi DHCPOFFER. Il client identifica il server selezionato popolando il Identificatore del server campo di opzione con l'indirizzo IP del server DHCP.

    Anche il DHCPREQUEST è una trasmissione, quindi tutti i server DHCP che hanno inviato un DHCPOFFER vedranno DHCPREQUEST e ciascuno saprà se il suo DHCPOFFER è stato accettato o rifiutato. Eventuali opzioni di configurazione aggiuntive richieste dal client verranno incluse nel campo delle opzioni del messaggio DHCPREQUEST. Anche se al client è stato offerto un indirizzo IP, invierà il messaggio DHCPREQUEST con un indirizzo IP di origine 0.0.0.0. Al momento, il cliente non ha ancora ricevuto la conferma che è chiaro utilizzare l'indirizzo IP.

    ...

    Conversazione client-server per un client che ottiene un indirizzo DHCP in cui risiedono client e server DHCP sulla stessa subnet:

    Fonte: Comprensione e risoluzione dei problemi di DHCP in Catalyst Switch o Enterprise Networks

    Percorso predefinito

    Questo documento spiega come configurare una rotta predefinita o un gateway di ultima istanza. Questi comandi IP sono usati:

    • ip default-gateway
    • ip default-network
    • ip route 0.0.0.0 0.0.0.0

    IP Route 0.0.0.0 0.0.0.0

    La creazione di una route statica sulla rete 0.0.0.0 0.0.0.0 è un altro modo per impostare il gateway di ultima istanza su un router. Come con il ip default-network comando, l'utilizzo della route statica su 0.0.0.0 non dipende da alcun protocollo di routing. Tuttavia, il routing IP deve essere abilitato sul router.

    Nota: IGRP non capisce un percorso verso 0.0.0.0. Pertanto, non può propagare percorsi predefiniti creati usando il ip route 0.0.0.0 0.0.0.0 comando. Utilizzare il ip default-network comando per fare in modo che IGRP propaghi una rotta predefinita.

    Fonte: Configurazione di un gateway di ultima istanza tramite i comandi IP


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