Отсутствуют сетевые протоколы — ошибка Windows Sockets в Windows 10
У коллеги на домашнем компьютере с Windows 10 стал периодически (раз в 2-3 дня) пропадать доступ в интернет (статус “Ограничено” у подключения), а при запуске мастера диагностики сетей Windows (запускается при щелчке мыши по значку с ошибкой сетевого подключения или через Параметры -> Обновление и безопасность -> Устранение неполадок -> Запустить средство устранения неполадок подключения к Интернету) появляется характерная ошибка:
В реестре отсутствуют записи для Windows Sockets, необходимые для связи по сети.
Windows Sockets registry entries required for network connectivity are missing.
Коллега обычно решал проблему перезагрузкой Windows и роутера, после чего подключение в интернет работало какое-то время, но через день-два проблема повторялась. Недавно он попросил меня попробовать исправить ошибку с отсутствующими сетевыми протоколами. Вот что получилось у меня.
При такой плавающей проблеме обычно рекомендуется начать с самого простого — сбросить текущие настройки TCP/IP и Windows Sockets. Если у вас на компьютере IP адрес настроен вручную, а не через DHCP, следующие команды сбросят ваши сетевые настройки. Поэтому предварительно нужно записать текущие настройки IP адреса, маски, шлюза и DNS серверов для ваших сетевых подключений.
netsh winsock reset
netsh interface ipv4 reset
Данные команды сбросят настройки протокола TCP/IP для всех сетевых адаптеров и все обработчики (Winsock Layered Service Providers) к начальному, чистому состоянию. В результате вы удалите все сторонние обработчики, которые были встроены в ваш стек Winsock сторонними программами. Чаще всего в стек Winsock встраивают свои библиотеки-обработчики антивирусы, сниферы, файерволами и даже некоторые вирусы :).
После выполнения всех команду нужно перезагрузить компьютер и проверить интернет-подключение.
Если проблема не решилась, нужно через реестр удалить текущие настройки Windows Sockets.
- Откройте редактор реестра и перейдите к ключу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinSock. Создайте резервную копию ветки реестра, экспортировав ее в reg файл (ПКМ -> Export);
- Удалите ветку (ПКМ -> Delete);
- Выполните эти же действия для ветки HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock2;
После этого вам нужно вручную переустановить компоненты протокола TCP/IP.
- В панели управления сетевыми подключениями (ncpa.cpl) откройте свойства вашего сетевого адаптера и нажмите кнопку Install;
- Выберите Protocol в списке компонентов для установки (Select Network Feature Type);
- Затем выберите, что вы хотите установить компонент с диска и укажите путь к каталогу C:\Windows\INF ;
- В списоке переустанавливаемых сетевых протоколов выберите Internet Protocol version 4 (TCP/IPv4) и перезагрузите компьютер.
.
Чтобы исправить ошибку нужно вручную импортировать с другого компьютера с той же версий ОС и применить на проблемном ПК следующие ветки реестра: 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.
Здесь же нажмите на кнопку Advanced и на вкладке WINS отключите просмотр LMHOSTS и NetBIOS через TCP/IP. Эти сетевые ротоколы являются устаревшими и не нужны в современных сетях .
После этого проблема с периодическим отключением интернета с ошибкой “отсутствуют один или несколько сетевых протоколов” в Windows 10 исчезла. Если вам и это не помогло, я бы попробовал дополнительно переустановить (обновить) драйвера ваших сетевых адаптеров. Возможно проблема еще и с ними.
Решение проблемы сетевых протоколов в Windows 10
Сброс протокола TCP/IP и Winsock
Первое, что стоит попробовать если диагностика неполадок сети пишет, что один или несколько сетевых протоколов Windows 10 отсутствуют — выполнить сброс WinSock и протокола TCP/IP.
Сделать это просто: запустите командную строку от имени администратора (правый клик мышью по кнопке «Пуск», выбрать нужный пункт меню) и по порядку введите следующие две команды (нажимая Enter после каждой):
После выполнения этих команд перезагрузите компьютер и проверьте, была ли решена проблема: с большой вероятностью проблем с отсутствующим сетевым протоколом не возникнет.
Если при выполнении первой из указанных команд вы увидите сообщение о том, что вам отказано в доступе, то откройте редактор реестра (клавиши Win+R, ввести regedit), перейдите к разделу (папке слева) HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Control\ Nsi\

Отключение NetBIOS
Еще один способ исправить проблему с подключением и Интернетом в данной ситуации, срабатывающий для некоторых пользователей Windows 10 — отключение NetBIOS для сетевого подключения.
Попробуйте по шагам выполнить следующее:
- Нажмите клавиши Win+R на клавиатуре (клавиша Win — та, что с эмблемой Windows) и введите ncpa.cpl после чего нажмите Ок или Enter.
- Кликните правой кнопкой мыши по вашему Интернет-подключению (по локальной сети или Wi-Fi), выберите пункт «Свойства».
- В списке протоколов выберите IP версии 4 (TCP/IPv4) и нажмите кнопку «Свойства» ниже (заодно, кстати, посмотрите, включен ли этот протокол, должен быть включен).
- Внизу окна свойств нажмите «Дополнительно».
- Откройте вкладку WINS и установите «Отключить NetBIOS через TCP/IP».
Примените сделанные настройки и перезагрузите компьютер, а затем проверьте, заработало ли подключение так, как нужно.
Программы, вызывающие ошибку с сетевыми протоколами Windows 10
Подобные проблемы с Интернетом могут вызывать и сторонние программы, устанавливаемые на компьютер или ноутбук и какими-либо хитрыми способами использующие сетевые подключения (мосты, создание виртуальных сетевых устройств и т.д.).
Среди замеченных в вызывающих описываемую проблему — LG Smart Share, но это могут быть и другие похожие программы, а также виртуальные машины, эмуляторы Android и подобного рода ПО. Так же, если в последнее время в Windows 10 что-то менялось в части антивируса или фаервола, это тоже могло вызывать проблему, проверьте.
Как исправить ошибку: На компьютере отсутствуют один или несколько сетевых протоколов
Часто у пользователей возникают проблемы с сетью. На каждую возникающую проблему система может выводить соответствующее сообщение, которое указывает на то, что за ошибка появилась. В данном случае, система нам выводит следующую ошибку: «На этом компьютере отсутствуют один или несколько сетевых протоколов». Ее вы сможете определить, если воспользуетесь диагностикой сети с помощью стандартных средств Windows. Она называется Диагностика неполадок.
Одной и причин появления данной ошибки может служить сбой протокола TCP/IP, но еще может случится и сбой Windows Sockets API. Поэтому, перед тем, как перейти к решению проблемы, стоит проверить кабель, возможно он отходит или на нем есть дефекты, проверить разъемы сетевых устройств. Если, вдруг, устанавливали драйвера для сетевой карты, то попробуйте их для начала удалить и убедиться, что проблема решена.
В случае, если с кабелем, сетевой картой и разъемами все отлично, то попробуем сбросить TCP/IP и Windows Sockets API. Выполнять данную операцию будем с помощью обычной командной строки, которая открыта от имени администратора.
Способ 1
Итак, откройте командную строку и введите поочередно вот эти команды:
netsh int ip reset
netsh winsock reset
Чтобы завершить операцию сброса нужно перезагрузить компьютер. Если вы получили сообщение в командной строке: «Отказано в доступе», то откроем эти права, которые находятся в реестре, в следующей ветке:
Если кто не знает, перейти в реестр можно, нажав клавиши Win+R и в окне Run ввести regedit.
Итак, как только вы перешли в нужный раздел, нажмите ПКМ по разделу 26 выберите пункт «Разрешения».
Там нужно выбрать группу «Все» и поставить напротив пункта «Полный доступ» галочку «Разрешить».
После этого, применяете изменения и снова вводите команды в командной строке, которые мы вводили вначале.
Способ 2
Есть еще один метод решения данной проблемы, он заключается в отключении протокола NetBIOS. Воспользуйтесь им, если первым способом у вас не получилось добиться положительного результата.
Нажимаем Win+R и в открытом окне выполняем команду ncpa.cpl . Откроется обычное окно «Сетевые подключения», в котором, я думаю, вы не раз были. Там заходим в «Свойства» нужного подключения.
Выбираем протокол «IP версии 4 (TCP/IPv4)» и снова нажмем кнопку «Свойства». Откроется новое окошко, в котором жмем «Дополнительно».
Перейдите во вкладку «WINS» и там установите положение параметра «Отключить NetBIOS через TCP/IP».
Теперь просто сохраняем настройки и перезагружаем компьютер. Данная проблема будет восстановлена, если была связана с NetBIOS.







.










