11Aug

W jaki sposób system Windows potwierdza dostęp Wi-Fi i czy konieczne jest uwierzytelnianie w trybie Hot Spot?

Windows jest dość biegły w informowaniu, czy masz właściwie działające połączenie internetowe, ale jak dokładnie to robi? Wgląd w to, jak system Windows radzi sobie z problemem, oferuje wgląd w komunikaty dotyczące łączności w systemie Windows.

Dzisiejsze pytanie &Sesja odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, grupy napędów społecznościowych Q & A.

Pytanie Czytnik

SuperUser N. Hinkle stawia następujące pytanie o proces sprawdzania i uwierzytelniania Internetu w systemie Windows:

W Windows 7 ikona sieci obszaru powiadomień będzie pokazywać wskaźnik błędu, jeśli nie ma dostępu do Internetu, a ikona błędu zniknieraz udane połączenie z Internetem. Czasami, jeśli połączenie WiFi wymaga kroku uwierzytelniania w przeglądarce, tak jak w wielu sieciach gości w hotelach lub na uniwersytetach, pojawia się następujący komunikat:

Jak system Windows wie, czy ma udany Internet?połączenie?

Prawdopodobnie sprawdza on niektóre usługi online firmy Microsoft w celu sprawdzenia, czy ma udane połączenie, zostaje przekierowany do innej strony lub nie otrzymuje żadnej odpowiedzi, ale nie widziałem nigdzie, że ten proces lub używane usługi sąudokumentowane. Czy ktoś może wyjaśnić, jak to działa?

Takie kontrole są jedną z wielu rzeczy, które bierzemy za pewnik, gdy używamy nowoczesnego systemu operacyjnego, ale nawet najbardziej zajęte elementy doświadczenia użytkownika mają ukryty mechanizm. W jaki sposób system Windows informuje nas, czy istnieje połączenie internetowe i czy musimy zalogować się do portalu uwierzytelniania Wi-Fi?

Odpowiedź Autor

SuperUser Tobias Plutat oferuje pewien wgląd w proces:

Po pewnym kopaniu( ogromna liczba usług sieciowych i związanych z Internetem w Windows jest zadziwiająca), myślę, że znalazłem to. Systemy Windows Vista i 7 mają wiele funkcji rozpoznawania sieci, z których jednym jest wskaźnik stanu łączności sieciowej, który wykonuje testy połączeń, które z kolei są używane przez ikonę paska zadań sieci. Test na połączenie z Internetem jest prosty:

  1. NCSI próbuje załadować określoną stronę przez HTTP( dokładniej: dokument tekstowy) i sprawdza, czy można go pobrać.
  2. Jeśli to się nie powiedzie, system Windows wyświetli komunikat "Brak dostępu do Internetu".

Mechanizm sprawdza również, czy domena, w której znajduje się dokument, rozwiązuje oczekiwany adres IP.Tak więc, może on również założyć prawidłowy dostęp do Internetu, jeśli ten test się powiedzie, ale dokumentu nie można odzyskać.

Powód, dla którego raportuje "Brak dostępu do Internetu", gdy nie jesteś jeszcze uwierzytelniony w Hotspot, działa tak, jak działa Hotspot. Blokuje wszystkie porty oprócz 80 i 443( odpowiednio dla HTTP i HTTPS), które są przekierowywane do serwera uwierzytelniania Hotspot i mogą w ten czy inny sposób zepsuć żądania DNS.W związku z tym NCSI nie może ani rozwiązać domeny, której hostem jest plik testowy, ani nawet, gdyby nie mógł dotrzeć do rzeczywistego pliku, ponieważ ruch HTTP jest przekierowywany do serwera uwierzytelniania.

Inny uczestnik, Jeff Atwood, podkreśla niektóre kluczowe cytaty z dokumentu odniesienia Tobiasza:

Oto szczegóły procesu określania statusu połączenia:

Poniższa lista opisuje, w jaki sposób NCSI może komunikować się z witryną sieci Web, aby ustalić, czy sieć ma połączenie z Internetem:

  1. Żądanie rozpoznawania nazw DNS dns.msftncsi.com
  2. Żądanie HTTP dla http: //www.msftncsi.com/ ncsi.txt zwracające 200 OK i tekstMicrosoft NCSI

Może to być wyłączone z ustawieniem rejestru. Jeśli ustawisz:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ NlaSvc \ Parameters \ Internet \ EnableActiveProbing

na 0, system Windows nie będzie już sprawdzać połączenia internetowego.

Apple robi coś bardzo podobnego w iOS, aby wykryć połączenie z Internetem i możliwe strony logowania "wifi" hotelu itp.

Podczas gdy cały proces jest zwykle w 100% przezroczysty dla użytkowników końcowych, czasami po uwierzytelnieniu za pośrednictwem portalu internetowego Wi-Fi, można znaleźć się na rzeczywistej zawartości NSCSI.txt. To, jak skończyłeś przeglądać nieokreślony dokument tekstowy zamiast strony internetowej, którą próbujesz wczytać, nie jest już tajemnicą w połączeniu z poprzednimi odpowiedziami na ten temat.

Czy chcesz coś dodać do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.