11Aug
Windows on varsin taitava kertoa sinulle, onko sinulla oikein toimiva Internet-yhteys, mutta miten se todella tekee niin? Kaappaaminen Windows-ongelman käsittelemiseen tarjoaa tietoa Windows-yhteydenviesteistä.
Päivän kysymys &Vastausistunto tulee meille SuperUser-palvelun kautta, joka on Stack Exchange -jakauma, Q & A-sivustojen yhteisöjoukkoyhdistelmä.
Kysymys
SuperUser-lukija N. Hinkle esittää seuraavan kysymyksen Windowsin internet-tarkistus- ja todentamisprosessista:
Windows 7: ssä ilmoitusalueiden verkkoympäristön kuvake näyttää virheilmoituksen, jos internetyhteyttä ei ole ja virhesymboli poistuukun Internet-yhteys on onnistunut. Jos WiFi-yhteys vaatii selaimesi autentikointivaiheen, kuten monissa vierasverkostoissa hotelleissa tai yliopistoissa, ilmestyy seuraava ponnahdusikkuna:
Miten Windows tietää, onko sillä onnistunut internetliitäntä?
Oletettavasti se tarkistaa jonkin Microsoftin verkkopalvelun avulla, onko se onnistunut yhteydenpidossa, ohjannut johonkin muuhun sivulle tai ei ole lainkaan vastausta, mutta en ole nähnyt millään tavalla, että tämä prosessi tai käytetyt palvelut ovatdokumentoitu. Voiko kukaan selittää, miten tämä toimii?
Tällaiset tarkistukset ovat yksi niistä monista asioista, joita pidämme itsestäänselvyytenä, kun käytämme nykyaikaista käyttöjärjestelmää, mutta jopa käyttökokemuksen parhaiten pidetyistä elementeistä on perustavanlaatuinen mekanismi. Miten Windows kertoo meille, onko internetyhteyttä ja onko meidän kirjauduttava Wi-Fi-todennusportaaliin vai ei?
Vastaus
SuperUser-avustaja Tobias Plutat tarjoaa jonkinlaista käsitystä prosessista:
Kaivamisen jälkeen( Windowsin verkko- ja Internet-palveluiden määrä on hämmästyttävä), mielestäni löysin sen. Windows Vista ja 7: ssa on useita verkon tunnistusominaisuuksia, joista yksi on verkkoyhteyden tilan ilmaisin, joka suorittaa liitettävyystestit, joita vuorovaikutteinen systray-kuvake käyttää.Internet-yhteyden testaus on yksinkertainen:
- NCSI yrittää ladata tietyn sivun HTTP: n kautta( tarkemmin: tekstitiedosto) ja testaa, voidaanko se hakea.
- Jos tämä ei onnistu, Windows ilmoittaa "Ei Internet-yhteyttä".
Mekanismi tarkistaa myös, onko verkkotunnus, jonka asiakirja on isäntänä, ratkaistu odotetulla IP-osoitteella. Joten se voi myös olettaa oikean internetyhteyden, jos tämä testi onnistuu, mutta asiakirjaa ei voi hakea.
Syynä siihen, että se ilmoittaa "Ei Internet-yhteyttä", kun et ole todennut Hotspotissa, on silti siinä, miten Hotspot toimii. Se estää kaikki portit lisäksi 80 ja 443( HTTP ja HTTPS, vastaavasti), jotka ohjataan Hotspotin todennuspalvelimeen ja voivat sotkea DNS-pyyntöjä tavalla tai toisella. Näin ollen NCSI ei pysty ratkaisemaan verkkotunnusta, jossa sen testitiedosto on isäntänä, ja vaikka se ei voinutkaan saavuttaa varsinaista tiedostoa, koska HTTP-liikenne ohjataan Authentication-palvelimeen.
Toinen avustaja, Jeff Atwood, korostaa joitain keskeisiä lainauksia dokumentista Tobias-viitteet:
Tässä on tietoja yhteyden tilan määritysprosessista:
Seuraavassa luettelossa kuvataan, kuinka NCSI voisi viestiä verkkosivuston kanssa määrittääkseen, onko verkolla internetyhteys:
- Dns.msftncsi.com DNS-nimeä koskeva pyyntö
- HTTP-pyyntö http: //www.msftncsi.com/ ncsi.txt palauttaa 200 OK ja tekstiMicrosoft NCSI
Tämä voidaan poistaa käytöstä rekisterin asetuksella. Jos asetat:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Palvelut \ NlaSvc \ Parameters \ Internet \ EnableActiveProbing
arvoon 0, Windows ei enää tutkii internet-yhteyden.
Apple tekee jotain hyvin samantyyppistä iOS: ssä havaitsemaan internet-yhteydet ja mahdolliset hotellipaketit wifi-sivuille jne.
Vaikka tämä koko prosessi on tavallisesti 100% läpinäkyvä loppukäyttäjille, ajoittain Wi-Fi-hot spot -verkkosivuston kautta todentamisen jälkeen, löydät itsesi tarkastelemaan NSCSI.txt: n todellista sisältöä.Kuinka päädyit käsittelemään epäsuorittua tekstidokumenttia sen verkkosivun sijasta, jota yritit ladata, ei enää ole mysteeri, kun se liittyy aikaisempaan vastaukseen aiheesta.
Onko jotain lisättävä selitykseen? Kuulkaa kommentit. Haluatko lukea lisää vastauksia muilta tech-tajuilta Stack Exchange-käyttäjiltä?Katso koko keskusteluketju täältä.