Windows är ganska skickligt på att berätta om du har en fungerande internetanslutning, men hur gör det exakt? Gräva i hur Windows hanterar problemet ger inblick i Windows-anslutningsmeddelanden.
Dagens Fråga & Svar-session kommer till oss med tillstånd av SuperUser - en underavdelning av Stack Exchange, en gruppdrivande gruppering av Q & A-webbplatser.
Frågan
SuperUser-läsare N. Hinkle ställer följande fråga om Windows-internetkontroll och autentiseringsprocess:
I Windows 7 visar ikonen för meddelandefältets nätverk en felindikator om det inte finns någon internetåtkomst
, och felikonen försvinner när det finns en lyckad anslutning till internet
. Ibland, om WiFi-anslutningen kräver ett autentiseringssteg i webbläsaren, som i många gästnätverk på hotell eller universitet, visas följande popup-bubbla och säger lika mycket:
![]()
Hur vet Windows om det har en lyckad internetanslutning eller inte?
Förmodligen kontrollerar den någon online-Microsoft-tjänst för att se om den har en lyckad anslutning, omdirigeras till någon annan sida eller inte får något svar alls, men jag har inte sett någonstans att den här processen eller de tjänster som används är dokumenterade . Kan någon förklara hur detta fungerar?
Sådana kontroller är en av de många saker vi tar för givet när vi använder ett modernt operativsystem, men även de mest tagna för givet elementen i användarupplevelsen har en underliggande mekanism. Hur säger Windows oss om det finns en internetanslutning och om vi behöver logga in på en Wi-Fi-autentiseringsportal eller inte?
Svaret
SuperUser-bidragsgivare Tobias Plutat ger lite inblick i processen:
Efter lite grävning (det stora antalet nätverks- och internetrelaterade tjänster i Windows är förvånande), Jag tror att jag hittade det . Windows Vista och 7 har en mängd olika funktioner för nätverksmedvetenhet, varav en är statusindikatorn för nätverksanslutning som utför anslutningstester som i sin tur används av ikonen för nätverkssystem. Testet för internetanslutning är enkelt:
- NCSI försöker ladda en specifik sida via HTTP (mer exakt: ett textdokument) och testar om den kan hämtas.
- Om det inte lyckas rapporterar Windows "Ingen internetåtkomst".
Mekanismen kontrollerar också om domänen som dokumentet är värd för löser den förväntade IP-adressen. Så det kan också förutsätta korrekt internetåtkomst om testet lyckas men dokumentet inte kan hämtas.
Anledningen till att det rapporterar "Ingen internetåtkomst" när du inte har autentiserats på en hotspot ännu ligger i hur en hotspot fungerar. Det blockerar alla portar förutom 80 och 443 (för HTTP respektive HTTPS), som omdirigeras till Hotspots autentiseringsserver och kan röra sig med DNS-förfrågningar på ett eller annat sätt. Således kan NCSI varken lösa domänen som testfilen är värd för, och även om den skulle kunna den inte nå den faktiska filen eftersom HTTP-trafik omdirigeras till autentiseringsservern.
En annan bidragsgivare, Jeff Atwood, lyfter fram några viktiga citat från dokumentet Tobias-referenser:
Här är detaljerna för anslutningsstatusbestämning bearbeta :
I följande lista beskrivs hur NCSI kan kommunicera med en webbplats för att avgöra om ett nätverk har internetanslutning:
- En begäran om DNS-namnupplösning av
dns.msftncsi.com- En HTTP-begäran för
http://www.msftncsi.com/ncsi.txtreturnerar 200 OK och textenMicrosoft n CSIDetta kan inaktiveras med en registerinställning. Om du ställer in:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ NlaSvc \ Parameters \ Internet \ EnableActiveProbing
till
0, Kommer Windows inte längre att söka efter internetanslutning.Apple gör något mycket liknande i iOS för att upptäcka internetanslutning och möjliga hotell "inloggning" wifi-sidor etc.
Även om hela processen vanligtvis är 100% transparent för slutanvändare, ibland efter autentisering via en Wi-Fi-hotspots webbportal, kommer du att stirra på det faktiska innehållet i NSCSI.txt . Hur du slutade titta på ett icke-beskrivande textdokument istället för den webbsida du försökte ladda är inte längre ett mysterium när det kombineras med tidigare svar om ämnet.
Har du något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa fler svar från andra tekniskt kunniga Stack Exchange-användare? Kolla in fullständig diskussionstråd här .
, och felikonen försvinner när det finns en lyckad anslutning till internet
. Ibland, om WiFi-anslutningen kräver ett autentiseringssteg i webbläsaren, som i många gästnätverk på hotell eller universitet, visas följande popup-bubbla och säger lika mycket: