Mis vahe on Locahost'i ja kohaliku IP-aadressi vahel?

Sisukord:

Mis vahe on Locahost'i ja kohaliku IP-aadressi vahel?
Mis vahe on Locahost'i ja kohaliku IP-aadressi vahel?

Video: Mis vahe on Locahost'i ja kohaliku IP-aadressi vahel?

Video: Mis vahe on Locahost'i ja kohaliku IP-aadressi vahel?
Video: Смарт-Часы Maimo Watch - Детальный ОБЗОР + ТЕСТЫ - YouTube 2024, November
Anonim
 Kui teete palju võrgurakendusi, LAN-põhiste rakenduste ja serverite tööriistade konfigureerimist või lihtsalt uudishimulikke, olete tõenäoliselt märganud, et localhost kohaliku IP-aadressi vahel on erinevusi. Loe edasi, et õppida erinevusi.
Kui teete palju võrgurakendusi, LAN-põhiste rakenduste ja serverite tööriistade konfigureerimist või lihtsalt uudishimulikke, olete tõenäoliselt märganud, et localhost kohaliku IP-aadressi vahel on erinevusi. Loe edasi, et õppida erinevusi.

Tänane küsimuste ja vastuste seanss jõuab meile viisakalt SuperUserini - Stack Exchange'i ja kogukonnapõhiste Q & A veebisaitide rühmitusse.

Küsimus

SuperUseri lugeja Diogo soovib teada, miks ping käsk kohtleb kohalikku hotti ja kohalikku IP-aadressi erinevalt, kui pinnal on need samad:

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?

Ilmselt on mingi mingi erinevus, aga mis täpselt toimub, kui lülitate need kaks?

Vastus

SuperUseri teostaja Tom Wijsman pakub järgmisi nägemusi kahe peentest erinevustest:

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

Your

localhost

kasutatakse teie arvuti sisestatud IP-le viitamiseks, mitte aga arvuti välistelt IP-aadressidel. Seega ping-pakette ei läbida ühtegi füüsilist võrguliidest; ainult virtuaalse loopi tagumisliidese kaudu, mis saadab pakette sadamast otse saatmiseta ilma füüsiliste humalasse.

Võib-olla ei tea miks

localhost

otsustab

::1

kuid traditsiooniliselt eeldame, et see lahendab IPv4 aadressi

127.0.0.1

. Pange tähele

.localhost

on traditsiooniliselt tippdomeen (vt RFC 2606), mis tagastab loopi tagasi IP-aadressi (IPv4 puhul vt RFC 3330, eriti 127.0.0.0/8).

Üles vaatama

localhost

kasutades

nslookup

annab meile:

nslookup localhost

… Name: localhost Addresses:::1 127.0.0.1

Seega eelistab Windows kasutada IPv6-loopi tagasi IP-aadressi

::1

(vt RFC 2373), nagu see on kõigepealt loetletud.

Okei, nii, kust see pärit on, vaatame hosti faili.

type %WINDIR%System32DriversEtcHosts

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

Hmm, peame vaatama Windowsi DNS-i seadeid.

See KB-i artikkel räägib meile seadistusest, mis mõjutab seda, mida Windows eelistab, rõhutades paksus kirjas:

  1. Registriredaktoris leidke ja seejärel järgmine registri alamvõti:

    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip6Parameters

  2. Topeltklõpsake valikut DisabledComponents, et muuta DisabledComponents sissekanne. Märkus. Kui sisselogimine DisabledComponents pole saadaval, peate selle looma. Selleks toimige järgmiselt.

    1. Menüüs Redigeerimine valige Uus ja seejärel klõpsake väärtust DWORD (32-bitine).
    2. Tippige käsk DisabledComponents ja seejärel vajutage sisestusklahvi (ENTER).
    3. Topeltklõpsake valikut DisabledComponents.
  3. IPv6-protokolli soovitud olekusse konfigureerimiseks sisestage üks järgmistest väärtustest väljale Value data: ja seejärel klõpsake OK:

    • Tüüp

      0

      kõigi IPv6 komponentide lubamiseks. (Windowsi vaikeseade)

    • Tüüp

      0xffffffff

      kõigi IPv6 komponentide keelamine, välja arvatud IPv6 loopback liides. See väärtus konfigureerib ka Windowsi, et eelistada Interneti-protokolli versiooni 4 (IPv4) kasutamist IPv6 kaudu, muutes prefiksipoliitika tabelisse sisestatud kirjeid. Lisateabe saamiseks vt allika ja sihtkoha aadressi valikut.

    • Tüüp

      0x20

      eelistama IPv4 üle IPv6, muutes prefiksipoliitika tabelis olevaid kirjeid.

    • Tüüp

      0x10

      IPv6-d keelata kõigil mittetunnelliidestel (nii LAN kui ka punktidelt-punkti protokolliga [PPP] liidestel).

    • Tüüp

      0x01

      IPv6-d kõigi tunneli liideste keelamiseks. Nende hulka kuuluvad automaatne tunneli aadresside protokoll (ISATAP), 6to4 ja Teredo.

    • Tüüp

      0x11

      kõigi IPv6 liideste keelamiseks, välja arvatud IPv6 loopback liides.

  4. Selle seadistuse jõustumiseks taaskäivitage arvuti.

Mis see prefiksipoliitika tabel on?

netsh interface ipv6 show prefixpolicies

(või

prefixpolicy

varasemates versioonides)

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

See tabel otsustab, millised prefiksid eelistavad teisi prefikseid DNS-i resolutsioonide ajal.

Ah, nii et selle KB-i abil saaksime siia lisada kirjeid, mis näitavad, et IPv4-l on kõrgem prioriteet kui IPv6-l.

Märge: Sellist käitumist ei saa põhjendada, kui teil pole ühilduvat probleemi. Selle seadistuse muutmine meie Windows Serveris rikkus meie meiliserverit, nii et seda tuleks hoolikalt käsitseda …

Meile ei meeldi midagi enamat kui põhjalik ja informatiivne vastus, millel on lingitud tugidokumendid. On selge, et localhost ja kohalik IP-aadress on erinevad üksused, mis teenivad teistsuguseid eesmärke, ja nüüd me kõik teame, miks.

Kas teil on seletamiseks midagi lisada? Helistage kommentaarides. Kas soovite lugeda rohkem vastuseid teistelt tech-savvy Stack Exchange'i kasutajatelt? Tutvu täieliku arutelu teemaga siit.

Soovitan: