Наверняка каждый пользователь операционных систем Windows сталкивался с ситуацией, когда значок сетевого подключения в панели задач отображался с желтым треугольником, что означает отсутствие подключения к Интернету.
То же самое можно увидеть и в свойствах сетевого подключения. Каким же образом операционная система определяет, есть ли на данном сетевом интерфейсе соединение с Интернетом, или только доступ к локальной сети?
А дело в том, что в операционных системах Microsoft начиная с Windows Vista есть такая функция, как индикатор статуса сетевого подключения (Network Connectivity Status Indicator, NCSI). Эта функция вызывается службой сведений о подключенных сетях (Network Awareness) при подключении к любой сети.
Для определения возможностей сети в NCSI есть множество различных методов, одним из которых является определение возможности выхода в Интернет. Проверка проводится в два этапа:
• При подключении к сети система посылает HTTP-запрос по адресу http://www.msftncsi.com/ncsi.txt. Это обычный текстовый файл, в котором содержится всего одна строка Microsoft NCSI. В случае успешного запроса от сервера должен прийти ответ с заголовком 200 ОК, содержащий эту строку;
• На втором этапе проверяется работоспособность службы DNS, для чего NCSI пытается разрешить в IP-адрес имя dns.msftncsi.com. Ожидаемое значение 131.107.255.255
По завершении проверки, если оба этапа были успешно пройдены, система считает что доступ в Интернет имеется. Если файл ncsi.txt недоступен, а dns.msftncsi.com не разрешается или разрешается с другим IP-адресом, то система сообщает о невозможности подключения к Интернет. В том случае, если ncsi.txt недоступен, но dns.msftncsi.com разрешается в правильный IP — система выдает сообщение о необходимости аутентификации через браузер.
Настройки NCSI находятся в системном реестре, в разделе HKLMSystemCurrentControlSetServicesNlaSvcParametersInternet, при желании их можно отредактировать. Вот наиболее важные параметры для IPv4 (для IPv6 просто добавляем префикс V6):
EnableActiveProbing — наличие автоматической проверки подключения к интернет (1 — проверка включена, 0 — отключена);
ActiveDNSProbeContent — IP-адрес для проверки DNS;
ActiveDNSProbeHost — имя хоста для проверки DNS;
ActiveWebProbeHost — адрес веб-сайта для проверки;
ActiveWebProbePath — путь к файлу проверки;
ActiveWebProbeContent — содержимое файла.
Используя эти настройки, можно изменить дефолтные адреса на свои, и подняв веб-сервер, по его логам отслеживать подключения нужных компьютеров. Впрочем, смысла особого в этом лично я не вижу.
Начиная с Vista, операционные системы Microsoft Windows научились определять функциональные возможности сетей, к которым вы подключены: система безошибочно рапортует, если ли соединение с интернетом, доступ только к локальной сети или сеть вообще недоступна. Вам когда нибудь было любопытно, каким образом это происходит? Если да — давайте посмотрим, какие механизмы задействует ОС, чтобы сообщить пользователю возможности текущего подключения.
В Windows Vista и Windows 7 есть такая функция, как Network Connectivity Status Indicator (NCSI), индикатор статуса сетевого подключения. Она вызывается и используется службой «Служба сведений о подключенных сетях» (Network Awareness) при подключении к какой-либо сети. В NCSI реализовано множество методов определения возможностей сети, наиболее интересным из которых является определение возможности выхода в Интернет. Это происходит следующим образом:
- После подключения к сети операционная система пытается открыть файл http://www.msftncsi.com/ncsi.txt
Это обычный текстовый файл, содержащий строку Microsoft NCSI. Ожидаемый ответ от сервера — заголовок 200 ОК и эта строка. - Второй шаг — проверка работоспособоности DNS. Для этого NCSI пытается определить IP-адрес хоста dns.msftncsi.com. Ожидаемое значение — 131.107.255.255.
Варианты дальнейшего развития событий здесь таковы:
- Если оба шага успешно завершены — система рапортует о наличии соединения с Интернет.
- Если файл ncsi.txt недоступен, а dns.msftncsi.com разрешается с другим адресом, либо его IP невозможно установить, — система сообщает о недоступности подключения к Интернет.
- Если файл ncsi.txt недоступен, но dns.msftncsi.com разрешается корректно — система уведомляет пользователя возможной необходимости аутентификации посредством браузера.
Microsoft NCSI и анонимность
Веб сервер, установленный на сайте www.msftncsi.com, насколько нам известно, это IIS, хранит в логах все IP-адреса, c которых был запрошен файл ncsi.txt. Согласно заявлению Microsoft эти данные не используются для установления личности пользователя, с компьютера которого пришел запрос. В случае, когда компьютер подключен, например, к корпоративной сети предприятия, то адресом, запросившим ncsi.txt, выступает адрес компьютера, предоставляющего доступ к Интернет, как правило, посредством NAT/Proxy.
Управление и настройка NCSI
Функция Network Connectivity Status Indicator может быть настроена или отключена совсем посредством изменения её параметров через реестр.
- Чтобы совсем отключить функцию NCSI, необходимо перейти в раздел реестра
[code]HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNlaSvcParametersInternet[/code]
и изменить значение параметра EnableActiveProbing на ноль. Проверка подключения к Интернет описанным выше способом выполняться не будет.
- Вы можете изменить адрес веб-сервера, имя и содержимое файла, запрашиваемого NCSI, а также имя и IP-адрес хоста, используемого для проверки DNS
Для этого служат соответствующие параметры в том же разделе реестра
[code]HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNlaSvcParametersInternet[/code]
ActiveDnsProbeContent — IP-адрес хоста для проверки DNS
ActiveDnsProbeHost – имя хоста для проверки DNS
ActiveWebProbeHost — адрес веб-сайта, на котором размещен файл для проверки наличия подключения к Internet
ActiveWebProbePath – путь к файлу проверки
ActiveWebProbeContent — содержимое файла проверки
Оставшиеся параметры управляют интервалами опроса сервера.
К примеру, я могу разместить на winreviewer.com файл winreviewer.com/ncsi/ncsi.txt с содержимым winreview ncsi и использовать всё это, изменив параметры на следующие:
ActiveWebProbeHost = winreviewer.com
ActiveWebProbePath = ncsi/ncsi.txt
ActiveWebProbeContent = winreview ncsi
Единственная, на мой взгляд, причина, по которой вы можете использовать собственный ncsi-сервер — это отслеживание подключений компьютера. Например, задав подобные настройки, я получу журнал внешних IP-адресов компьютера. Впрочем, это далеко не единственный способ сформировать такой журнал. В подавляющем большинстве же случаев изменять настройки NCSI нет никаких веских причин.
💡Узнавайте о новых статьях быстрее. Подпишитесь на наши каналы в Telegram и Twitter.
Судя по тому, что вы читаете этот текст, вы дочитали эту статью до конца. Если она вам понравилась, поделитесь, пожалуйста, с помощью кнопок ниже. Спасибо за вашу поддержку!
После некоторого раскопок (огромное количество сетевых и интернет-сервисов в Windows поражает), я думаю, что нашел его. Windows Vista и 7 имеют множество функций Network Awareness, одной из которых является индикатор состояния сетевого подключения, который выполняет тесты подключения, которые, в свою очередь, используются значком сетевого системного сообщения. Тест на интернет-соединение прост:
- NCSI пытается загрузить определенную страницу через HTTP (точнее: текстовый документ) и проверяет, можно ли ее получить.
- Если это не удается, Windows сообщает «Нет доступа в Интернет».
Механизм также проверяет, соответствует ли домен, в котором размещен документ, ожидаемому IP-адресу. Таким образом, он может также предполагать надлежащий доступ в Интернет, если этот тест пройден успешно, но документ не может быть получен
Причина, по которой он сообщает «Нет доступа к Интернету», когда вы еще не прошли проверку подлинности в Hotspot, заключается в том, как работает Hotspot. Он блокирует все порты, кроме 80 и 443 (для HTTP и HTTPS, соответственно), которые перенаправляются на сервер аутентификации Hotspot и могут так или иначе связываться с DNS-запросами. Таким образом, NCSI не может ни разрешить домен, в котором находится тестовый файл, и даже если бы он мог, он не достиг бы реального файла, потому что трафик HTTP перенаправлен на сервер аутентификации.
Источник: http://technet.microsoft.com/en-us/library/cc766017%28WS.10%29.aspx
В данной статье рассказывается о том, как операционная система Windows определяет подключение к Интернету.
Каждый пользователь операционных систем Windows сталкивался с ситуацией, когда значок сетевой активности в панели задач отображается с желтым треугольником, что означает отсутствие подключения к Интернету.
То же самое можно увидеть и в свойствах сетевого подключения. Каким же образом операционная система определяет, есть ли на данном сетевом интерфейсе соединение с Интернетом, или только доступ к локальной сети?.
Дело в том, что в операционных системах Microsoft начиная с Windows Vista имеется такая функция, как индикатор статуса сетевого подключения (Network Connectivity Status Indicator, NCSI). Эта функция вызывается службой сведений о подключенных сетях (Network Awareness) при подключении к любой сети.
Для определения возможностей сети в NCSI есть множество различных методов, одним из которых является определение возможности выхода в Интернет. Проверка проводится в два этапа:
- При подключении к сети система посылает HTTP-запрос по адресу www.msftncsi.com/ncsi.txt. Это обычный текстовый файл, в котором содержится всего одна строка Microsoft NCSI. В случае успешного запроса от сервера должен прийти ответ с заголовком 200 ОК, содержащий эту строку
- На втором этапе проверяется работоспособность службы DNS, для чего NCSI пытается разрешить в IP-адрес имя dns.msftncsi.com. Ожидаемое значение 131.107.255.255
По завершении проверки, если оба этапа были успешно пройдены, система считает что доступ в Интернет имеется. Если файл ncsi.txt недоступен, а dns.msftncsi.com не разрешается или разрешается с другим IP-адресом, то система сообщает о невозможности подключения к Интернет. В том случае, если ncsi.txt недоступен, но dns.msftncsi.com разрешается в правильный IP — система выдает сообщение о необходимости аутентификации через браузер.
Настройки NCSI находятся в системном реестре, в разделе.
HKLM\System\CurrentControlSet\Services
laSvc\Parameters\Internet
При желании их можно отредактировать. Наиболее важные параметры для IPv4 представленны ниже (для IPv6 просто добавляем префикс V6):
- EnableActiveProbing — наличие автоматической проверки подключения к интернет (1 — проверка включена, 0 — отключена)
- ActiveDNSProbeContent — IP-адрес для проверки DNS
- ActiveDNSProbeHost — имя хоста для проверки DNS
- ActiveWebProbeHost — адрес веб-сайта для проверки
- ActiveWebProbePath — путь к файлу проверки
- ActiveWebProbeContent — содержимое файла
-
February 22 2014, 05:32
- IT
- Cancel
Пользователи Windows Vista/7/8 видели на значке сетевого соединения желтые значки недоступности интернета. Но как?
Оказывается, Windows пытается прочесть файл http://www.msftncsi.com/ncsi.txt. Этот обычный текстовый файл. Внутри текст — «
Microsoft NCSI«.
Если файл есть и прочитан — связь есть.
Если доступа к файлу нет, то пингуется dns.msftncsi.com на вычисление его IP. Если IP получен (131.107.255.255), но страница недоступна, то препятствует аутентификация в браузере. И появляется желтый кружок на значке беспроводной сети.
Если IP не получен, то «нет доступа в Интернет».
Параметры — куда лезет Windows для проверки — хранятся в реестре:
Если в значение ActiveWebProbeHost прописать свой сайт, положить на сайт файл ncsi.txt, прописать IP-адрес своего сайта в ActiveDnsProbeContent, можно добиться от Windows, чтобы она не светила тебя в Microsoft (а на msftncsi.com ведется лог обращений с записью IP и времени доступа), а проверяла наличие инета через обращение к своему сайту.
Содержание
- Как Windows определяет, подключен ли компьютер к Интернету?
- Индикатор состояния сетевого подключения
- Как работает NCSI
- А как насчет вашей конфиденциальности?
- Как отключить NCSI из редактора реестра
- Как отключить NCSI из редактора групповой политики
- Microsoft NCSI на службе или как мы искали забытый нетбук
- Каким образом Windows определяет наличие выхода в Интернет?
- Microsoft NCSI и анонимность
- Управление и настройка NCSI
- Автор: Сергей Ткаченко
- Каким образом Windows определяет наличие выхода в Интернет?: 4 комментария
- Как Windows определяет подключение к Интернету
- Как Windows определяет подключение к Интернету
Как Windows определяет, подключен ли компьютер к Интернету?
Если вы когда-либо сталкивались с запросом «Подключено, нет доступа к Интернету» или «В вашей Windows требуется проверка подлинности в браузере, то вам наверняка это интересно. Как наш компьютер узнает, есть ли Интернет, а когда он пропадает?
Как Windows точно знает, когда компьютер подключен к Интернету?
Эта статья отвечает на вопрос, объясняя весь процесс мониторинга интернет-соединения в Windows.
Индикатор состояния сетевого подключения
Этот механизм считается интеллектуальной системой уведомлений, позволяющей пользователям узнать о своем текущем состоянии в Интернете. Если NCSI не может выполнять свою функцию, это будет означать, что Интернет недоступен, даже если компьютер может получить доступ к Интернету через браузер и проверить связь с другими IP-адресами.
Как работает NCSI
NCSI выполняет два важных шага, чтобы проверить состояние Интернета, к которому подключен компьютер. Эти две задачи выполняются независимо.
Начиная с шага 1, если получен текстовый файл, содержащий точное соответствие, Windows устанавливает, что компьютер подключен к Интернету. Однако, если текстовый файл не загружен или был перенаправлен, NCSI переходит ко второму шагу.
Как только NCSI разрешает dns.msftncsi.com, он затем проверяет, доступна ли страница. Если страница доступна, значок сети на панели уведомлений показывает, что у нее есть доступ в Интернет.
Однако, если страница недоступна, отображается запрос на дополнительную аутентификацию. Но если разрешение DNS полностью не удается или возвращается к другому IP-адресу, значок сети отображает «Нет доступа в Интернет».
Аналогичный сценарий может произойти, если вы работаете за брандмауэром, и он блокирует весь входящий и исходящий трафик и позволяет проходить только определенному трафику. Это будет означать, что NCSI не сможет связаться с www.msftncsi.com и www.msftconnecttest.com. Это, в свою очередь, побудит Windows показать, что на вашем компьютере нет Интернета.
Обходной путь для этого — разрешить как входящую, так и исходящую связь через брандмауэр для вышеупомянутых URL-адресов.
А как насчет вашей конфиденциальности?
Согласно документации, предоставленной Microsoft на NCSI, их серверы хранят время доступа, а также IP-адреса, когда запрос поиска DNS делается на www.msftncsi.com. Хотя они утверждают, что информация является конфиденциальной, некоторым она все же может быть неудобной.
Чтобы решить эту проблему, отключите функцию NCSI в Windows. Это может быть достигнуто путем изменения системных реестров, а также из редактора групповой политики.
Как отключить NCSI из редактора реестра
Как отключить NCSI из редактора групповой политики
Этой же функциональности можно достичь с помощью редактора групповой политики.
Обратите внимание, что изменение этого параметра остановит связь вашей операционной системы с серверами NCSI, поэтому больше не будет выводиться запрос о том, требует ли браузер дополнительной аутентификации.
Напротив, панель уведомлений теперь покажет, что доступа в Интернет нет, даже если он есть.
У некоторых людей возникали проблемы со своими приложениями, такими как Office 365, Skype, OneDrive и Outlook, после отключения NCSI. Однако в нашем случае все приложения работали в обычном режиме.
Мы надеемся, что эта информация окажется для вас полезной.
Источник
Microsoft NCSI на службе или как мы искали забытый нетбук
Что за Microsoft NCSI?
Microsoft NCSI или Network Connectivity Status Indicator — функция проверки работоспособности соединения с интернетом в Windows Vista/7/8. Это она показывает желтый восклицательный знак на значке сетевых подключений при отсутствии подключения к интернету, или же выдает предупреждение о возможной необходимости аутентификации в сети через браузер.
Подробнее можно почитать на Technet, я же опишу кратко суть работы:
При подключении к сети Windows пытается (для IPv4):
1) Зайти по адресу www.msftncsi.com/ncsi.txt и ожидает ответа 200 OK с телом «Microsoft NCSI»
2) Определить IP dns.msftncsi.com и ожидает ответа 131.107.255.255
Если оба пункта выдают ожидаемый результат — считается что сеть имеет доступ в интернет
Если файл недоступен, а IP определяется правильно — отображается уведомление о возможной необходимости аутентификации в сети через браузер.
Если оба шага не выдают ожидаемые результаты — считается что сеть не имеет доступа в интернет.
Адреса, ожидаемые ответы и собственно работу этой функции настроить в реестре по адресу
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNlaSvcParametersInternet
Предыстория
Когда я узнал о принципе работы NCSI, у меня появилась идея изменить параметры на свой сервер (как из-за параноидального настроения, так и из интереса).
Подумав, я решил использовать существующую логику для удобства проверки при проблемах с интернетом дома. Традиционными состояниями были «все работает нормально», «нет связи вообще (даже до серверов провайдера)» и «доступ только до локальной сети провайдера». В итоге я настроил проверку DNS на один из ресурсов провайдера (доступного в том числе снаружи), а проверку получения файла — на свою VPS. Таким образом, если при проблемах с интернетом мне отображалось сообщение что нужно авторизоваться — значит скорее всего проблема у провайдера на выходе, и смысла звонить разбираться нет, т.к. интернет отсутствует как минимум у микрорайона.
Такая система конечно изредка давала сбои — при ковырянии VPSки или проблемах у домашнего провайдера при подключении извне выдавался ложный статус, но такие проблемы были редкими.
Узнав о моей идее, друг, сидящий на этом же провайдере, сделал себе аналогичные настройки на своих домашних устройствах, настроив проверку доступности файла на мою VPS.
Думаю многие уже догадались о принципе поиска…
День X
Вечером дня X при разговоре знакомый пишет, что судя по всему забыл нетбук в университете. Ехать практически через весь город, да и насколько помнит, забыл в кабинете скорее всего, т.е. не критично. Только не помнит в каком именно из тех, где были пары — доставал ли он его после первой пары или нет.
Статьи бы не было, если бы в этот день я не экспериментировал после разговора с веб-сервером на той самой VPS. Ища нужный лог-файл в списке по названиям доменов, глаз зацепился на лог поддомена NCSI и вспомнил о том, что у знакомого ведь настроен NCSI на мой сервер! Таким образом, можно было догадаться приблизительно о последнем месте включения нетбука по последнему IP и времени, т.к. в университете несколько точек WiFi с разными внешними IP и все были сохранены для автоподключения. Посмотрев лог и задав пару наводящих вопросов знакомому, я сказал ему где скорее всего он забыл нетбук. На следующий день знакомый сразу нашел нетбук в предполагаемой аудитории.
Вывод
В итоге получилась интересная идея — настроить у каждого устройства запрос файла со своего сервера, указав разные имена файлов для каждого устройства и настроив хранение отдельного лога на сервере. При подключении к сети IP появится в логах, что может помочь в поиске, если подобное вдруг случится. Конечно по IP не во всех ситуациях можно что-либо сказать, но в некоторых ситуациях можно быть уверенным, что забыли вы его все-таки скажем на работе или в университете, а не где-то еще. Правда под вопросом остается случай «Кто-то включил ноутбук, но на пользователя стоит пароль» — подключится ли при этом ноутбук к сохраненной сети без входа в систему или же нет?
Идея дает и негативные варианты использования — можно ведь следить за подключениями компьютера и с другими целями, но думаю что их не стоит здесь обсуждать.
Источник
Каким образом Windows определяет наличие выхода в Интернет?
Варианты дальнейшего развития событий здесь таковы:
Microsoft NCSI и анонимность
Веб сервер, установленный на сайте www.msftncsi.com, насколько нам известно, это IIS, хранит в логах все IP-адреса, c которых был запрошен файл ncsi.txt. Согласно заявлению Microsoft эти данные не используются для установления личности пользователя, с компьютера которого пришел запрос. В случае, когда компьютер подключен, например, к корпоративной сети предприятия, то адресом, запросившим ncsi.txt, выступает адрес компьютера, предоставляющего доступ к Интернет, как правило, посредством NAT/Proxy.
Управление и настройка NCSI
Функция Network Connectivity Status Indicator может быть настроена или отключена совсем посредством изменения её параметров через реестр.
К примеру, я могу разместить на winreviewer.com файл winreviewer.com/ncsi/ncsi.txt с содержимым winreview ncsi и использовать всё это, изменив параметры на следующие:
Единственная, на мой взгляд, причина, по которой вы можете использовать собственный ncsi-сервер — это отслеживание подключений компьютера. Например, задав подобные настройки, я получу журнал внешних IP-адресов компьютера. Впрочем, это далеко не единственный способ сформировать такой журнал. В подавляющем большинстве же случаев изменять настройки NCSI нет никаких веских причин.
💡Узнавайте о новых статьях быстрее. Подпишитесь на наши каналы в Telegram и Twitter.
Судя по тому, что вы читаете этот текст, вы дочитали эту статью до конца. Если она вам понравилась, поделитесь, пожалуйста, с помощью кнопок ниже. Спасибо за вашу поддержку!
Вы здесь: Главная страница » Windows » Windows 7 » Каким образом Windows определяет наличие выхода в Интернет?
Автор: Сергей Ткаченко
Сергей Ткаченко создал этот сайт в далёком 2009 году, и с тех пор продолжает над ним работать, публикуя новые материалы о Windows и её приложениях практически каждый день. Посмотреть все записи автора Сергей Ткаченко
Каким образом Windows определяет наличие выхода в Интернет?: 4 комментария
Отключился и подключился к сети заново. Затем заглянул в список разрешенных адресов (ipconfig /displaydns), msftncsi.com не обнаружилось. Почему так?
У меня тоже адрес не отображается. Странно.
есть такое подозрение, что, возможно, чтобы не загромождать общую картинку, этот адрес из вывода отфильтровывается… ipconfig майкрософтом написан
Источник
Как Windows определяет подключение к Интернету
В данной статье рассказывается о том, как операционная система Windows определяет подключение к Интернету.
Каждый пользователь операционных систем Windows сталкивался с ситуацией, когда значок сетевой активности в панели задач отображается с желтым треугольником, что означает отсутствие подключения к Интернету.
То же самое можно увидеть и в свойствах сетевого подключения. Каким же образом операционная система определяет, есть ли на данном сетевом интерфейсе соединение с Интернетом, или только доступ к локальной сети?.
Дело в том, что в операционных системах Microsoft начиная с Windows Vista имеется такая функция, как индикатор статуса сетевого подключения (Network Connectivity Status Indicator, NCSI). Эта функция вызывается службой сведений о подключенных сетях ( Network Awareness ) при подключении к любой сети.
Для определения возможностей сети в NCSI есть множество различных методов, одним из которых является определение возможности выхода в Интернет. Проверка проводится в два этапа:
По завершении проверки, если оба этапа были успешно пройдены, система считает что доступ в Интернет имеется. Если файл ncsi.txt недоступен, а dns.msftncsi.com не разрешается или разрешается с другим IP-адресом, то система сообщает о невозможности подключения к Интернет. В том случае, если ncsi.txt недоступен, но dns.msftncsi.com разрешается в правильный IP — система выдает сообщение о необходимости аутентификации через браузер.
Настройки NCSI находятся в системном реестре, в разделе.
При желании их можно отредактировать. Наиболее важные параметры для IPv4 представленны ниже (для IPv6 просто добавляем префикс V6):
Источник
Как Windows определяет подключение к Интернету
Наверняка каждый пользователь операционных систем Windows сталкивался с ситуацией, когда значок сетевого подключения в панели задач отображался с желтым треугольником, что означает отсутствие подключения к Интернету.
То же самое можно увидеть и в свойствах сетевого подключения. Каким же образом операционная система определяет, есть ли на данном сетевом интерфейсе соединение с Интернетом, или только доступ к локальной сети?
А дело в том, что в операционных системах Microsoft начиная с Windows Vista есть такая функция, как индикатор статуса сетевого подключения (Network Connectivity Status Indicator, NCSI). Эта функция вызывается службой сведений о подключенных сетях (Network Awareness) при подключении к любой сети.
Для определения возможностей сети в NCSI есть множество различных методов, одним из которых является определение возможности выхода в Интернет. Проверка проводится в два этапа:
• При подключении к сети система посылает HTTP-запрос по адресу http://www.msftncsi.com/ncsi.txt. Это обычный текстовый файл, в котором содержится всего одна строка Microsoft NCSI. В случае успешного запроса от сервера должен прийти ответ с заголовком 200 ОК, содержащий эту строку;
• На втором этапе проверяется работоспособность службы DNS, для чего NCSI пытается разрешить в IP-адрес имя dns.msftncsi.com. Ожидаемое значение 131.107.255.255
По завершении проверки, если оба этапа были успешно пройдены, система считает что доступ в Интернет имеется. Если файл ncsi.txt недоступен, а dns.msftncsi.com не разрешается или разрешается с другим IP-адресом, то система сообщает о невозможности подключения к Интернет. В том случае, если ncsi.txt недоступен, но dns.msftncsi.com разрешается в правильный IP — система выдает сообщение о необходимости аутентификации через браузер.
Настройки NCSI находятся в системном реестре, в разделе HKLMSystemCurrentControlSetServicesNlaSvcParametersInternet, при желании их можно отредактировать. Вот наиболее важные параметры для IPv4 (для IPv6 просто добавляем префикс V6):
EnableActiveProbing — наличие автоматической проверки подключения к интернет (1 — проверка включена, 0 — отключена);
ActiveDNSProbeContent — IP-адрес для проверки DNS;
ActiveDNSProbeHost — имя хоста для проверки DNS;
ActiveWebProbeHost — адрес веб-сайта для проверки;
ActiveWebProbePath — путь к файлу проверки;
ActiveWebProbeContent — содержимое файла.
Используя эти настройки, можно изменить дефолтные адреса на свои, и подняв веб-сервер, по его логам отслеживать подключения нужных компьютеров. Впрочем, смысла особого в этом лично я не вижу.
Источник
Вы, наверное, обращали внимание на то, что еще начиная с версии Vista и старше, операционные системы семейства Windows научились достаточно точно определять возможности сети, к которой подключен компьютер. Ваша система может определить если ли соединение с интернетом или же присутствует доступ только к локальной сети, а может быть вообще сеть недоступна. Интересно ли вам, каким образом операционная система определяет тип подключения?
Механизм, который определяет возможности текущего подключения называется Network Connectivity Status Indicator (NCSI), что в переводе означает – индикатор статуса сетевого подключения. Использует этот индикатор служба с названием «Служба сведений о подключенных сетях» (Network Awareness) и вызывает она его при подключении к какой-либо сети. В NCSI есть определенный набор методов для определения возможностей сети, но нас сейчас интересует определение возможности выхода в интернет.
А возможность выхода в интернет определяется следующим образом. После успешного подключения к сети наша операционка делает попытку открыть файл, расположенный по адресу http://www.msftncsi.com/ncsi.txt. Это файл в текстовом формате, который содержит строку Microsoft NCSI. Соответственно, ответ, который ожидается от сервера – это заголовок 200 ОК и эта самая строка. Вторым этапом проверяется работоспособоность DNS. Для определения работоспособности DNS NCSI совершает попытку определения IP-адрес для хоста dns.msftncsi.com. Значение, которое ожидается системой – 131.107.255.255.
В зависимости от результатов этих двух этапов операционная система рапортует о разных состояниях сети. Если оба запроса вернули ожидаемые значения, то система сообщает о наличии соединения с интернет. В случае, если файл ncsi.txt недоступен и запрос о dns.msftncsi.com возвращает другой адрес, или IP невозможно получить, то система говорит о том, что подключение к интернет отсутствует. Если же файл ncsi.txt недоступен, но IP для dns.msftncsi.com возвращается верный, то операционка уведомляет пользователя о возможной необходимости аутентификации посредством браузера.
Теперь для «параноиков». Веб сервер, установленный на сайте www.msftncsi.com, конечно же хранит в своих логах все IP-адреса, c которых когда либо запрашивался файл ncsi.txt. Конечно же Microsoft заявляет о том, что эти данные не используются для установления личности пользователя, с компьютера которого пришел запрос. Верить или не верить этому – решайте сами.
Кстати, чем задумываться об этих вопросах, лучше проверьте установлен ли у вас нормальный антивирус и актуальны ли его антивирусные базы. Один из вариантов бесплатного антивируса – это Avast, которы можно скачать к примеру по адресу http://www.antivir.org.ua/free-antivirus/avast-free-antivirus/. Но на всякий случай имейте в виду, что данная функция (NCSI) может быть отключена или для нее могут быть изменены настройки. И сделать это можно путем редактирования реестра. Для полного отключения функции NCSI вам необходимо перейти в раздел реестра
HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services NlaSvc Parameters Internet
и присвоить ноль значению параметра EnableActiveProbing. После этого проверка подключения к интернет при помощи NCSI выполняться не будет. Также можно изменить адрес веб-сервера, имя и содержимое файла, который запрашивает NCSI, также можно поменять имя и IP-адрес хоста, который используется для проверки DNS. Для этого в том же разделе реестра присутствуют параметры
HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services NlaSvc Parameters Internet
ActiveDnsProbeContent (это IP-адрес хоста для проверки DNS)
ActiveDnsProbeHost (это имя хоста для проверки DNS)
ActiveWebProbeHost (это адрес сайта, на котором размещен файл для проверки наличия подключения к Internet)
ActiveWebProbePath (это путь к файлу для проверки подключения)
ActiveWebProbeContent (это содержимое файла проверки)
Остальные параметры в этом разделе отвечают за интервалы опроса сервера.