В Windows есть встроенная служба NCSI (Network Connectivity Status Indicator), которая используется для определения состояния сетевого подключения и наличия доступа к Интернету. Если эта служба определяет, что сетевое подключение не может быть использовано для выхода в Интернет, то в трее и в панели управления сетями появятся уведомления вида «
Без подключения к Интернету, защищено
» (у беспроводных Wi-Fi подключений), «
Без доступа к Интернету
» и т.п. Однако случается, что Windows пишет о том, что нет подключения к Интернету по Ethernet или WiFi, но фактически интернет-доступ есть, сайты открываются и внешние ресурсы доступны.

Сначала разберемся, как Windows определяет наличие Интернет-подключения. Microsoft используется собственный веб ресурс для проверки интернет подключения на устройствах Windows http://www.msftconnecttest.com/. Для проверки устройство должно успешно отрезвить это DNS имя и проверить доступность текстового файла через HTTP GET. Служба NCSI по умолчанию выполняет следующие активные проверки доступности тестового сервера Microsoft
- DNS запрос для
dns.msftncsi.comдолжен вернуть ответ в ответ IPv4 адрес131.107.255.255(или IPv6 адресfd3e:4f5a:5b81::1) - Проверяется доступность HTTP веб-сервера (код ответа
200) и получается содержимое простого тестового файлаhttp://www.msftconnecttest.com/ncsi.txt. Служба проверяет, содержит ли текстовый файлстроку Microsoft Connect Test - Проверяются как
IPv4, так иIPv6адреса (устройство будет считаться подключенным к Интернету, если внешние ресурсы доступны хотя бы по одному протоколу)
Если хотя бы одна их проверок не прошла, в трее появится уведомление об отсутствии соединения или ограниченном доступе в Интернет.

В каких случаях служба NCSI в Windows может показывать неправильное состояние сети на компьютере:
- Доступ к веб сайту http://www.msftconnecttest.com/ заблокирован в вашей сети (внешним межсетевым экраном, встроенным Windows Firewall, прокси сервером и т.д.)
- Проблемы с DNS сервером. Например: на компьютере указан недействительный или недоступный DNS сервер, используется DNS сервер с фильтрацией, или для NCSI сервера создана фейковая запись в DNS (включая сценарий с некорректной записью в локальном файле
%windir%\System32\drivers\etc\hosts)
Параметры службы NCSI, связанные с проверкой Интернет подключения хранятся в ветке реестра HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet.
- EnableActiveProbing — значение 1 включает автоматическую проверку наличия доступа в Интернет службой NCSI (0 — отключить проверку)
- ActiveDnsProbeHost и ActiveDnsProbeHostV6 — DNS сервера, через которые служба выполняет запросы. По умолчанию и для IPv4 и для IPv6 это
dns.msftncsi.com - ActiveDnsProbeContent и ActiveDnsProbeContentV6 — эталонные (ожидаемые) IPv4 и IPv6 адреса DNS серверов, которые должна вернуть первая проверка
- ActiveWebProbeHost и ActiveWebProbeHostV6 — веб сервера MSFT, доступность которых проверяется (
www.msftconnecttest.comиipv6.msftconnecttest.com) - ActiveWebProbePath и ActiveWebProbePathV6 — имя текстового файла на веб сервере для проверки (по умолчанию
connecttest.txt) - ActiveWebProbeContent и ActiveWebProbeContentV6 – ожидаемое содержимое текстового файла (
Microsoft Connect Test), с котором нужно сверить ответ
Остальные параметры задают таймауты и частоту выполнения проверки доступа в Интернет.

Через эту ветку реестра вы можете как полностью отключить проверку наличия Интернета на устройстве службой NCSI, так и перенаправить все запросы на альтернативной веб-сервер. Это позволит убрать уведомления о недоступности Интернета на клиентах, когда официальные адреса Microsoft недоступны (например, в корпоративных сетях).
Чтобы полностью отключить выполнение активных проверок NCSI, можно включить параметр групповых политик Turn off Windows Network Connectivity Status Indicator active tests / Отключить активное зондирование индикатора состояния сетевого подключения (находится в следующей ветке редактора локальной GPO: Computer Configuration -> Administrative Templates -> System -> Internet Communication Management -> Internet Communication settings). После включения этой политики Windows не будет выполнять проверки и уведомлять пользователя о наличии/отсутствии доступа в Интернет.

Если Интернет действительно не работает, выполните стандартные процедуры диагностики и восстановить работы сети в Windows:

