Отсутствуют сетевые протоколы — ошибка Windows Sockets в Windows 10

У коллеги на домашнем компьютере с Windows 10 стал периодически (раз в 2-3 дня) пропадать доступ в интернет (статус “Ограничено” у подключения), а при запуске мастера диагностики сетей Windows (запускается при щелчке мыши по значку с ошибкой сетевого подключения или через Параметры -> Обновление и безопасность -> Устранение неполадок -> Запустить средство устранения неполадок подключения к Интернету) появляется характерная ошибка:

На этом компьютере отсутствуют один или несколько сетевых протоколов.

В реестре отсутствуют записи для Windows Sockets, необходимые для связи по сети.

На этом компьютере отсутствуют один или несколько сетевых протоколов. В реестре отсутствуют записи для Windows Sockets, необходимые для связи по сети

One or more network protocols are missing on this computer.

Windows Sockets registry entries required for network connectivity are missing.

Коллега обычно решал проблему перезагрузкой Windows и роутера, после чего подключение в интернет работало какое-то время, но через день-два проблема повторялась. Недавно он попросил меня попробовать исправить ошибку с отсутствующими сетевыми протоколами. Вот что получилось у меня.

При такой плавающей проблеме обычно рекомендуется начать с самого простого — сбросить текущие настройки TCP/IP и Windows Sockets. Если у вас на компьютере IP адрес настроен вручную, а не через DHCP, следующие команды сбросят ваши сетевые настройки. Поэтому предварительно нужно записать текущие настройки IP адреса, маски, шлюза и DNS серверов для ваших сетевых подключений (подробнее про сброс сетевых настроек в Windows).

netsh winsock reset

netsh winsock reset

Sucessfully reset the Winsock Catalog.
You must restart the computer in order to complete the reset.

netsh interface ipv4 reset

netsh interface ipv4 reset

Resetting Compartment Forwarding, OK!
Resetting Compartment, OK!
Resetting Control Protocol, OK!
Resetting Echo Sequence Request, OK!
Resetting Global, OK!
Resetting Interface, OK!
Resetting Anycast Address, OK!
Resetting Multicast Address, OK!
Resetting Unicast Address, OK!
Resetting Neighbor, OK!
Resetting Path, OK!
Resetting Potential, OK!
Resetting Prefix Policy, OK!
Resetting Proxy Neighbor, OK!
Resetting Route, OK!
Resetting Site Prefix, OK!
Resetting Subinterface, OK!
Resetting Wakeup Pattern, OK!
Resetting Resolve Neighbor, OK! Resetting , OK!

Данные команды сбросят настройки протокола TCP/IP для всех сетевых адаптеров и все обработчики (Winsock Layered Service Providers) к начальному, чистому состоянию. В результате вы удалите все сторонние обработчики, которые были встроены в ваш стек Winsock сторонними программами. Чаще всего в стек Winsock встраивают свои библиотеки-обработчики антивирусы, сниферы, файерволами и даже некоторые вирусы :).

После выполнения всех команду нужно перезагрузить компьютер и проверить интернет-подключение.

Если проблема не решилась, нужно через реестр удалить текущие настройки Windows Sockets.

  1. Откройте редактор реестра и перейдите к ключу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock. Создайте резервную копию ветки реестра, экспортировав ее в reg файл (ПКМ -> Export); сохранить ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock
  2. Удалите ветку (ПКМ -> Delete); удалить ветку настроек WinSock в реестре
  3. Выполните эти же действия для ветки HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock2;

После этого вам нужно вручную переустановить компоненты протокола TCP/IP.

  1. В панели управления сетевыми подключениями (ncpa.cpl) откройте свойства вашего сетевого адаптера и нажмите кнопку Install;
  2. Выберите Protocol в списке компонентов для установки (Select Network Feature Type);
  3. Затем выберите, что вы хотите установить компонент с диска и укажите путь к каталогу C:\Windows\INF ; переустановка компонентов протокола TCP/IP
  4. В списоке переустанавливаемых сетевых протоколов выберите Internet Protocol version 4 (TCP/IPv4) и перезагрузите компьютер. Установить протокол Internet Protocol version 4 (TCP/IPv4) .
В моем случае при переустановке компонентов TCP/IP появилась ошибка:

Network Connections
Could not add the requested feature. The error is: This program is blocked by group policy. For more information, contact your system administrator.

Network Connections Could not add the requested feature. The error is: This program is blocked by group policy. For more information, contact your system administrator.

Чтобы исправить ошибку нужно вручную импортировать с другого компьютера с той же версий ОС и применить на проблемном ПК следующие ветки реестра: HKLM\SYSTEM\CurrentControlSet\Services\Winsock и HKLM\SYSTEM\CurrentControlSet\Services\Winsock2.

Можете скачать готовые файлы для чистой Windows 10 x64 LTSC по ссылкам ниже:

После импорта reg файлов нужно перезагрузить компьютер и попробовать еще раз переустановить протокол TCP/IP (в самом крайнем случаем воспользуютесь своими ветками ресстра winsock, сохранными ранее, но лучше использовать чистые).

Теперь в свойствах вашего сетевого подключений проверьте, что он настроен на получение динамического IP адреса и настроек DNS серверов, либо укажите IP адрес и DNS сервера вручную (в моем случае после сброса статические настройки IP просто очистились ). Для домашнего компьютера можно указать использовать следующие статические адреса DNS серверов Google: 8.8.8.8 и 8.8.4.4.

проверьте настройки DNS

Здесь же нажмите на кнопку Advanced и на вкладке WINS отключите просмотр LMHOSTS и NetBIOS через TCP/IP. Эти сетевые ротоколы являются устаревшими и не нужны в современных сетях .

отключить LMHOSTS и NetBIOS через TCP/IP

После этого проблема с периодическим отключением интернета с ошибкой “отсутствуют один или несколько сетевых протоколов” в Windows 10 исчезла. Если вам и это не помогло, я бы попробовал дополнительно переустановить (обновить) драйвера ваших сетевых адаптеров. Возможно проблема еще и с ними.


Предыдущая статья Следующая статья


Комментариев: 1 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)