De meesten van ons hebben wel eens gehoord van ‘127.0.0.1 en 0.0.0.0’, maar hebben er waarschijnlijk niet veel over nagedacht, maar als beide feitelijk naar dezelfde locatie lijken te wijzen, wat is dan het werkelijke verschil tussen de twee? De SuperUser Q & A-post van vandaag helpt dingen op te helderen voor een verwarde lezer.
De vraag- en antwoordsessie van vandaag komt tot ons dankzij SuperUser - een onderdeel van Stack Exchange, een community-gedreven groepering van Q & A-websites.
Foto met dank aan Kate Gardiner (Flickr) .
De vraag
SuperUser-lezer Sagnik Sarkar wil weten wat het verschil tussen 127.0.0.1 en 0.0.0.0 is:
Ik begrijp dat 127.0.0.1 verwijst naar localhost en dat 0.0.0.0 ook doet (corrigeer me als ik het mis heb). Dus, wat is het verschil tussen 127.0.0.1 en 0.0.0.0?
Wat is het verschil tussen 127.0.0.1 en 0.0.0.0?
Het antwoord
SuperUser-bijdrager DavidPostill heeft het antwoord voor ons:
Wat is het verschil tussen 127.0.0.1 en 0.0.0.0?
- 127.0.0.1 is het loopback-adres (ook bekend als localhost).
- 0.0.0.0 is een niet-routeerbaar meta-adres dat wordt gebruikt om een ongeldig, onbekend of niet-toepasselijk doelwit aan te duiden (een plaatshouder voor ‘geen specifiek adres’).
In de context van een route-invoer betekent dit meestal de standaardroute.
In de context van servers betekent 0.0.0.0 alle IPv4-adressen op de lokale computer . Als een host twee IP-adressen heeft, 192.168.1.1 en 10.1.2.1, en een server die op de host draait, luistert naar 0.0.0.0, dan is hij bereikbaar op beide IP-adressen.
Wat is het IP-adres 127.0.0.1?
127.0.0.1 is het loopback-IP-adres (Internet Protocol), ook wel het localhost . Het adres wordt gebruikt om een IP-verbinding tot stand te brengen met dezelfde machine of computer die door de eindgebruiker wordt gebruikt.
Dezelfde conventie is gedefinieerd voor computers die IPv6-adressering ondersteunen met de connotatie van :: 1. Een verbinding tot stand brengen met het adres 127.0.0.1 is de meest gangbare praktijk; Als u echter een IP-adres in het bereik van 127… * gebruikt, werkt dit op dezelfde of een vergelijkbare manier. De loopback-constructie geeft een computer of apparaat dat in staat is om te netwerken, de mogelijkheid om de IP-stack op de machine te valideren of tot stand te brengen.
Bron: 127.0.0.1 - Wat zijn de toepassingen en waarom is het belangrijk?
Speciale adressen
Het klasse A netwerknummer 127 krijgt de loopback functie, dat wil zeggen, een datagram dat door een protocol van een hoger niveau naar een netwerk 127-adres wordt verzonden, moet teruggaan naar de host. Geen datagram verzonden naar een netwerk 127 adres zou ooit overal op een netwerk moeten verschijnen.
Bron: Netwerknummers
Als het hele klasse A is, wat is dan het punt van andere willekeurige waarden voor de laatste drie octetten?
Het doel van het loopback-bereik is het testen van de implementatie van het TCP / IP-protocol op een host. Omdat de onderste lagen worden kortgesloten, kan het verzenden naar een loopback-adres de hogere lagen (IP en hoger) effectief testen zonder de kans dat problemen bij de lagere lagen zich manifesteren. 127.0.0.1 is het adres dat het meest wordt gebruikt voor testdoeleinden.
Bron: Gereserveerd IP-, Loopback- en privé-adressen
Zie voor meer informatie het Vraag Ubuntu vraag: Wat is het Loopback-apparaat en hoe gebruik ik het?
Wat is het IP-adres 0.0.0.0?
0.0.0.0 is een geldige adressyntaxis. Het zou dus als geldig moeten worden geparseerd overal waar een IP-adres in traditionele decimale notatie met punten wordt verwacht. Eenmaal geparseerd en geconverteerd naar een werkbare numerieke vorm, bepaalt de waarde wat er daarna gebeurt.
De waarde helemaal nul heeft een speciale betekenis. Zo is het Geldig , maar heeft een betekenis die mogelijk niet geschikt is (en dus als ongeldig wordt behandeld) voor bepaalde omstandigheden. Het is in feite de tijdelijke aanduiding ‘geen specifiek adres’. Voor zaken als adresbinding van netwerkverbindingen, kan het resultaat zijn dat een geschikt interfaceadres aan de verbinding wordt toegewezen. Als u het gebruikt om een interface te configureren, kan het in plaats daarvan een adres uit de interface verwijderen. Het hangt af van de gebruikscontext om te bepalen wat ‘geen bepaald adres’ werkelijk doet.
In de context van een route-invoer betekent dit meestal de standaardroute. Dat gebeurt als gevolg van meer van het adresmasker, dat de bits selecteert om te vergelijken. Een masker van 0.0.0.0 selecteert geen bits, dus de vergelijking zal altijd slagen. Dus als zo'n route is geconfigureerd, is er altijd wel ergens voor pakketten om naartoe te gaan (indien geconfigureerd met een geldige bestemming).
In sommige gevallen werkt alleen ‘0’ ook en heeft hetzelfde effect. Maar dit is niet gegarandeerd. Het 0.0.0.0-formulier is de standaardmanier om ‘geen bepaald adres’ te zeggen (in IPv6 dus ::0 of gewoon :: ).
Bron: Wat is de betekenis van het IP-adres 0.0.0.0?
In Internet Protocol versie 4 is het adres 0.0.0.0 een niet-routeerbaar meta-adres dat wordt gebruikt om een ongeldig, onbekend of niet-toepasselijk doel aan te duiden. Om een anderszins ongeldig gegeven een speciale betekenis te geven, is een toepassing van in-band signalering.
In de context van servers betekent 0.0.0.0 alle IPv4-adressen op de lokale computer . Als een host twee IP-adressen heeft, 192.168.1.1 en 10.1.2.1, en een server die op de host draait, luistert naar 0.0.0.0, dan is deze bereikbaar op beide IP-adressen ( Notitie: Deze specifieke tekst wordt van bovenaf herhaald als onderdeel van het algemene antwoord ).
In de context van routing betekent 0.0.0.0 meestal de standaardroute, d.w.z. de route die naar ‘de rest van’ het internet leidt in plaats van ergens op het lokale netwerk.
Het gebruik omvat:
- Het adres dat een host claimt als zijn eigen adres als er nog geen adres aan is toegewezen. Zoals bij het verzenden van het eerste DHCPDISCOVER-pakket bij gebruik van DHCP.
- Het adres dat een host zichzelf toewijst wanneer een adresverzoek via DHCP is mislukt, op voorwaarde dat de IP-stack van de host dit ondersteunt. Dit gebruik is in moderne besturingssystemen vervangen door het APIPA-mechanisme.
- Een manier om te specificeren eender welke IPv4-host . Het wordt op deze manier gebruikt bij het specificeren van een standaardroute.
- Een manier om expliciet aan te geven dat het doel niet beschikbaar is. Bron: 127.0.0.1 - Wat zijn de toepassingen en waarom is het belangrijk?
- Een manier om te specificeren om het even welk IPv4-adres . Het wordt op deze manier gebruikt bij het configureren van servers (d.w.z. bij het binden van luister-sockets). Dit is bij TCP-programmeurs bekend als INADDR_ANY. [ bind (2) bindt aan adressen, niet aan interfaces. ]
In IPv6 wordt het adres met alleen nullen geschreven als ::
Bron: 0.0.0.0 [Wikipedia]
DHCP-detectie / verzoek
Wanneer een client voor de eerste keer opstart, wordt gezegd dat deze zich in de initialiseren staat , en verzendt een DHCPDISCOVER-bericht op zijn lokale fysieke subnet via User Datagram Protocol (UDP) poort 67 (BootP-server). Aangezien de client geen manier heeft om te weten tot welk subnet het behoort, is de DHCPDISCOVER een uitzending van alle subnetten (bestemmings-IP-adres 255.255.255.255), met een bron-IP-adres van 0.0.0.0. Het bron-IP-adres is 0.0.0.0, aangezien de client geen geconfigureerd IP-adres heeft.
Als er een DHCP-server bestaat op dit lokale subnet en deze is geconfigureerd en correct werkt, zal de DHCP-server de uitzending horen en reageren met een DHCPOFFER-bericht. Als er geen DHCP-server bestaat op het lokale subnet, moet er een DHCP / BootP Relay-agent op dit lokale subnet zijn om het DHCPDISCOVER-bericht door te sturen naar een subnet dat een DHCP-server bevat.
Deze relay-agent kan een speciale host zijn (bijvoorbeeld Microsoft Windows Server) of een router (een Cisco-router die bijvoorbeeld is geconfigureerd met IP-helperverklaringen op interfaceniveau).
…
Nadat de client een DHCPOFFER heeft ontvangen, antwoordt deze met een DHCPREQUEST-bericht, dat aangeeft dat hij de parameters in de DHCPOFFER wil accepteren, en gaat naar de verzoekende staat . De client kan meerdere DHCPOFFER-berichten ontvangen, één van elke DHCP-server die het originele DHCPDISCOVER-bericht heeft ontvangen. De klant kiest één DHCPOFFER en reageert alleen op die DHCP-server, waarbij alle andere DHCPOFFER-berichten impliciet worden geweigerd. De client identificeert de geselecteerde server door de extensie Server-ID optieveld met het IP-adres van de DHCP-server.
De DHCPREQUEST is ook een uitzending, dus alle DHCP-servers die een DHCPOFFER hebben verzonden, zullen de DHCPREQUEST zien en elk zal weten of zijn DHCPOFFER is geaccepteerd of geweigerd. Alle aanvullende configuratie-opties die de client nodig heeft, worden opgenomen in het optieveld van het DHCPREQUEST-bericht. Hoewel de client een IP-adres is aangeboden, zal deze het DHCPREQUEST-bericht verzenden met een bron-IP-adres van 0.0.0.0. Op dit moment heeft de klant nog geen verificatie ontvangen dat het duidelijk is om het IP-adres te gebruiken.
…
Client-server-gesprek voor een client die een DHCP-adres verkrijgt waar de client en de DHCP-server zich op hetzelfde subnet bevinden:
![]()
Bron: Inzicht in en probleemoplossing voor DHCP in Catalyst Switch of Enterprise Networks
Default Route
Dit document legt uit hoe u een standaardroute of gateway van laatste redmiddel configureert. Deze IP-opdrachten worden gebruikt:
- ip standaard-gateway
- ip standaard-netwerk
- ip-route 0.0.0.0 0.0.0.0
IP-route 0.0.0.0 0.0.0.0
Het creëren van een statische route naar het netwerk 0.0.0.0 0.0.0.0 is een andere manier om de gateway van laatste redmiddel op een router in te stellen. Net als bij de ip standaard-netwerk commando, met behulp van de statische route naar 0.0.0.0 is niet afhankelijk van routeringsprotocollen. IP-routering moet echter zijn ingeschakeld op de router.
Notitie: IGRP begrijpt geen route naar 0.0.0.0. Daarom kan het geen standaardroutes doorgeven die zijn gemaakt met de ip-route 0.0.0.0 0.0.0.0 opdracht. Gebruik de ip standaard-netwerk opdracht om IGRP een standaardroute te laten propageren.
Bron: Een gateway van laatste redmiddel configureren met behulp van IP-opdrachten
Iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden lezen van andere technisch onderlegde Stack Exchange-gebruikers? Bekijk hier de volledige discussiethread .