Koks skirtumas tarp „Locahost“ ir vietinio IP adreso?
Jei darote daug tinklo tinkinimo, konfigūruojate LAN pagrindu veikiančias programas ir serverio įrankius, ar tiesiog smalsu, jūs tikriausiai pastebėjote, kad tarp vietinio tinklo vietinio IP adreso yra skirtumas. Skaitykite toliau, kad sužinotumėte skirtumus.
Šiandienos „Klausimų ir atsakymų“ sesija mums suteikiama pagal „SuperUser“ - „Stack Exchange“ padalinį, bendruomenės sukurtą „Q&A“ svetainių grupavimą.
Klausimas
„SuperUser“ skaitytojas „Diogo“ nori sužinoti, kodėl „ping“ komanda traktuoja vietinį ir vietinį IP adresą skirtingai, kai ant paviršiaus jie atrodo tokie patys:
Naudojant „cmd“ ir „ping“ sistemoje „Windows“ buvo pateikti šie rezultatai:
Pingingas „localhost“:
„192.168.0.10“ (vietinis IP adresas):
Ar ne abi situacijos yra tokios pačios?
Aš turiu omenyje tą pačią sąsają, tą pačią mašiną ir tą patį adresą. Kodėl gaunu tokius skirtingus rezultatus?
Akivaizdu, kad yra tam tikro skirtumo, bet kas tiksliai vyksta, kai persijungiate tarp dviejų?
Atsakymas
„SuperUser“ autorius Tomas Wijsmanas pateikia tokį supratimą apie subtilius skirtumus tarp šių dviejų:
Jūs neperspaudžiate tos pačios sąsajos, be jokių fizinių sąsajų vis dar turite „vietinį kompiuterį“.
Tavo
localhost
naudojamas jūsų kompiuteriui perkelti iš „vidinio“ IP, o ne iš bet kokių „išorinių“ IP kompiuterių. Taigi, „ping“ paketai neperduoda jokios fizinės tinklo sąsajos; tik per virtualios kilpos sąsają, kuri tiesiogiai siunčia paketus iš uosto į uostą be jokių fizinių apynių.Jūs vis tiek galėtumėte stebėtis, kodėl
localhost
sprendžia:: 1
, tradiciškai mes tikimės, kad jis išspręstų IPv4 adresą127.0.0.1
. Prisimink tai.localhost
tradiciškai yra TLD (žr. RFC 2606), kuris nukreipia atgal į „loop back“ IP adresą (IPv4, žr. RFC 3330, ypač 127.0.0.0/8).Žiūrėjimas
localhost
naudojantnslookup
suteikia mums:
nslookup localhost
… Vardas: localhost Adresai: :: 1 127.0.0.1
Taigi „Windows“ pageidauja naudoti IPv6 kilpinio IP adresą
:: 1
(žr. RFC 2373), kaip nurodyta pirmiau.Gerai, todėl, iš kur jis kilęs, pažiūrėkime į šeimininkų failą.
tipas% WINDIR% System32 tvarkyklės ir tt
… # „Localhost“ pavadinimo raiška tvarkoma pačiame DNS. # 127.0.0.1 localhost # :: 1 localhost…
Hmm, turime pažvelgti į „Windows“ DNS nustatymus.
Šis „KB“ straipsnis pasakoja apie nustatymą, kuris veikia tai, ką „Windows“ nori, pabrėžė paryškintai:
- Registro rengyklėje suraskite ir spustelėkite šį registro raktą:
„HKEY_LOCAL_MACHINE“ SISTEMA „CurrentControlSet“ paslaugos „TCPIP6“ parametrai
- Dukart spustelėkite DisabledComponents, kad pakeistumėte įrašą „DisabledComponents“. Pastaba: Jei neįgaliųjų komponentų įrašas yra nepasiekiamas, turite jį sukurti. Norėdami tai padaryti, atlikite šiuos veiksmus:
- Meniu Redaguoti pasirinkite Naujas, tada spustelėkite DWORD (32 bitų) reikšmė.
- Įveskite DisabledComponents ir paspauskite ENTER.
- Dukart spustelėkite neįgalūs komponentai.
- Lauke Reikšmės duomenys: įveskite bet kurią iš šių reikšmių, kad konfigūruotumėte IPv6 protokolą į norimą būseną, tada spustelėkite Gerai:
- Tipas
0
įjungti visus IPv6 komponentus. („Windows“ numatytasis nustatymas)- Tipas
0xffffffff
išjungti visus IPv6 komponentus, išskyrus „IPv6“ grįžtamojo ryšio sąsają. Ši vertė taip pat sukonfigūruoja „Windows“, kad pirmenybė būtų teikiama naudojant „Internet Protocol“ 4 versiją (IPv4) per IPv6, pakeisdama prefikso politikos lentelės įrašus. Daugiau informacijos ieškokite šaltinio ir paskirties adreso pasirinkime.- Tipas
0x20
pasirinkti IPv4 per IPv6, pakeisdami prefikso politikos lentelės įrašus.- Tipas
0x10
išjungti „IPv6“ visose „nunnunnel“ sąsajose (tiek LAN, tiek taškų protokolo [PPP] sąsajose).- Tipas
0x01
išjungti IPv6 visose tunelių sąsajose. Tai apima automatinį tunelių adresavimo protokolą (ISATAP), 6–4 ir Teredo.- Tipas
0x11
išjungti visas IPv6 sąsajas, išskyrus IPv6 linijos sąsają.- Kad šis nustatymas įsigaliotų, iš naujo paleiskite kompiuterį.
Kas yra šios prefiksų politikos lentelė?
„netsh“ sąsaja „ipv6“ rodo prefiksų politiką
(arbaprefiksinė politika
ankstesnėse versijose)Tikslo etiketės prefiksas ---------- ----- -------------------------------- 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
Šioje lentelėje nuspręsta, kokie prefiksai turi pirmenybę prieš kitus prefiksus DNS išsprendimo metu.
Ah, todėl naudodami šį KB galėtume pridėti įrašų, kurie reiškia, kad IPv4 turi didesnę pirmenybę nei IPv6.
Pastaba: Nėra pagrindo pakeisti šį elgesį, nebent susiduriate su problemomis. Pakeitus šį parametrą mūsų „Windows Server“ serveryje, sugedome mūsų pašto serverį, todėl jį reikia tvarkyti atsargiai ...
Nėra nieko, kas mums patinka daugiau nei išsamus ir informatyvus atsakymas su susietais paramos dokumentais. Aišku, vietinis ir vietinis IP adresas yra skirtingi subjektai, tarnauja skirtingiems tikslams, ir dabar visi žinome, kodėl.
Ar ką nors papildyti paaiškinimu? Garsas išjungtas komentaruose. Norite perskaityti daugiau atsakymų iš kitų „tech-savvy Stack Exchange“ vartotojų? Čia rasite visą diskusijų temą.