Mitä eroa on Locahostin ja paikallisen IP-osoitteen välillä?
Jos teet paljon verkostoitumista, määrität LAN-pohjaiset sovellukset ja palvelintyökalut tai olet vain utelias, olet todennäköisesti huomannut, että paikallisen IP-osoitteen välillä on ero. Lue lisää eroista.
Nykypäivän Kysymys- ja vastaus -istunto tulee meille suotuisasti SuperUserin - Stack Exchange -alueen, yhteisöpohjaisen Q & A-sivustojen ryhmittymän - kautta..
Kysymys
SuperUser-lukija Diogo haluaa tietää, miksi ping-komento käsittelee localhostia ja paikallista IP-osoitetta eri tavalla, kun pinnalla ne näyttävät olevan sama asia:
Käyttämällä cmd: tä ja pingistä Windowsissa sain seuraavat tulokset:
Pinging “localhost”:
Pinging “192.168.0.10” (paikallinen IP-osoite):
Eikö molemmat tilanteet ole täsmälleen samat?
Tarkoitan, että pingoin samaa käyttöliittymää, samaa konetta ja samaa osoitetta. Miksi saan niin erilaisia tuloksia?
On selvää, että on jonkinlainen ero, mutta mitä juuri tapahtuu, kun vaihdat näiden kahden välillä?
Vastaus
SuperUserin avustaja Tom Wijsman tarjoaa seuraavan käsityksen hienoista eroista näiden kahden välillä:
Et pingota samaa käyttöliittymää, ilman fyysisiä rajapintoja sinulla on edelleen "paikallinen isäntä".
teidän
paikallinen isäntä
sitä käytetään viittaamaan tietokoneeseen sen sisäisestä IP: stä, ei tietokoneen ulkoisista IP-osoitteista. Joten ping-paketit eivät läpäise mitään fyysistä verkkoliitäntää; vain virtuaalisen silmukan takaisinliittymän kautta, joka lähettää paketit suoraan portista satamaan ilman fyysisiä humaloita.Saatat silti ihmetellä, miksi
paikallinen isäntä
ratkaisee:: 1
, perinteisesti odotamme sen ratkaisevan IPv4-osoitteeseen127.0.0.1
. Ota huomioon, että.paikallinen isäntä
on perinteisesti TLD (katso RFC 2606), joka osoittaa takaisin silmukan takaisin IP-osoitteeseen (IPv4: lle, katso RFC 3330, erityisesti 127.0.0.0/8).Katse ylös
paikallinen isäntä
käyttämällänslookup
antaa meille:
nslookup localhost
… Nimi: localhost Osoitteet: :: 1 127.0.0.1
Siten Windows käyttää IPv6-silmukan takaisin IP-osoitetta
:: 1
(katso RFC 2373), koska se on lueteltu ensin.Okei, joten mistä se tulee, katsotaan isäntätiedostoa.
tyyppi% WINDIR% System32-ohjaimet jne
… # Localhost-nimiresoluutio käsitellään DNS: ssä itse. # 127.0.0.1 localhost # :: 1 localhost…
Hmm, meidän on tarkasteltava Windowsin DNS-asetuksia.
Tämä KB-artikkeli kertoo asetuksesta, joka vaikuttaa siihen, mitä Windows haluaa, lihavoituna korostettuna:
- Etsi rekisterin editorista seuraava rekisterin aliavain ja napsauta sitä:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip6 \ Parameters
- Muokkaa DisabledComponents-merkintää kaksoisnapsauttamalla DisabledComponents.Note: Jos DisabledComponents-merkintä ei ole käytettävissä, sinun on luotava se. Voit tehdä tämän seuraavasti:
- Valitse Muokkaa-valikosta Uusi ja valitse sitten DWORD (32-bittinen) -arvo.
- Kirjoita DisabledComponents ja paina sitten ENTER.
- Kaksoisnapsauta DisabledComponents.
- Määritä jokin seuraavista arvoista Arvon data: -kenttään määrittääksesi IPv6-protokollan haluttuun tilaan ja valitse sitten OK:
- Tyyppi
0
ottaa käyttöön kaikki IPv6-komponentit. (Windowsin oletusasetus)- Tyyppi
0xFFFFFFFF
poistaaksesi kaikki IPv6-komponentit, paitsi IPv6-takaisinkytkentäliitäntä. Tämä arvo määrittää myös Windowsin suosimaan Internet-protokollan versiota 4 (IPv4) IPv6: n kautta muokkaamalla etuliitteen politiikkataulukon merkintöjä. Lisätietoja on kohdassa Lähde- ja kohdeosoitteen valinta.- Tyyppi
0x20
IPv4: n suosiminen IPv6: n kautta muuttamalla etuliitteen politiikkataulun merkintöjä.- Tyyppi
0x10
poistaa IPv6: n käytöstä kaikissa nunnunnel-rajapinnoissa (sekä LAN- että Point-to-Point-protokolla [PPP] -liitännöissä).- Tyyppi
0x01
IPv6: n poistaminen käytöstä kaikissa tunneliliitännöissä. Näihin kuuluvat sisäinen automaattinen tunnelin osoiteprotokolla (ISATAP), 6to4 ja Teredo.- Tyyppi
0x11
poistaa kaikki IPv6-liitännät IPv6-takaisinkytkentäliittymää lukuun ottamatta.- Käynnistä tietokone uudelleen, jotta tämä asetus tulee voimaan.
Mikä on tämä etuliitteen politiikkataulukko?
netsh-liitäntä ipv6 näyttää etuliitteitä
(taiprefixpolicy
aiemmissa versioissa)Ensisijaisuusmerkinnän etuliite ---------- ----- -------------------------------- 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
Tämä taulukko päättää, mitkä etuliitteet saavat etusijan muihin etuliitteisiin DNS-ratkaisujen aikana.
Ah, joten käyttämällä tätä KB: tä voisimme lisätä tähän merkintöjä, jotka osoittavat, että IPv4: llä on suurempi etusija kuin IPv6: lla.
Huomautus: Ei ole syytä ohittaa tätä käyttäytymistä, ellei sinulla ole yhteensopivia ongelmia. Tämän asetuksen muuttaminen Windows-palvelimessamme rikkoi sähköpostipalvelimemme, joten sitä olisi käsiteltävä huolellisesti…
Meillä ei ole mitään muuta kuin perusteellista ja informatiivista vastausta, johon on liitetty tukiasiakirjoja. On selvää, että localhost ja paikallinen IP-osoite ovat erillisiä kokonaisuuksia, palvelevat eri tarkoituksia, ja nyt me kaikki tiedämme miksi.
Onko jotain lisättävää selitykseen? Ääni pois kommenteista. Haluatko lukea lisää vastauksia muilta tech-savvy Stack Exchange -käyttäjiltä? Tutustu koko keskusteluketjuun täällä.