Найти в Дзене
Digital

Как отключить протокол IPv6 в ОС Windows

Оглавление

Зачем это нужно? На практике — в ряде случаев отключение протокола убирает некоторые ошибки в работе сервера 1С. Например:

«server_addr=tcp://<имя_сервера>:1560 descr=[<адрес_ipv6>:1560 10060:(0x0000274C):
Попытка установить соединение была безуспешной, т. к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера
line=1052 file=src\DataExchangeTcpClientImpl.cpp»
Или
«server_addr=tcp://<имя_сервера>:1560 descr=10054(0x00002746): Удаленный хост принудительно разорвал существующее подключение. line=1464 file=src\DataExchangeTcpClientImpl.cpp»
Как отключить протокол IPv6 в ОС Windows
Как отключить протокол IPv6 в ОС Windows

Конечно же, эта настройка — отключение IPv6 — требует проверки. В пункте 5.4 Инструкции 1С при настройке кластера 1С это так же рекомендуется сделать. В формулировке:

«Убедиться, что на рабочих серверах кластера одновременно не используется IPv4 и IPv6».

Особенности

  1. Со времен ОС Vista и Server 2008 поддержка IPv6 включена по умолчанию.
  2. Цель IPv6 — в будущем заменить IPv4, у которого заканчивается адресное пространство.
  3. Правильный способ отключения протокола — через системный реестр, а не просто убрав «галку» в свойствах сетевого соединения.
  4. Официальная рекомендация Microsoft — не отключать. Некоторые сервисы/компоненты Windows могут не работать без IPv6. Например, DirectAccess.

Проверка с помощью PowerShell

Чтобы проверить текущее состояние IPv6 на сетевых интерфейсах, откройте консоль PowerShell и выполните команду:

Get-NetAdapterBinding -ComponentID ms_tcpip6

В столбце «Enable» увидите состояние («False» — отключено, «True» — включено):

Проверка с помощью PowerShell
Проверка с помощью PowerShell

Чтобы отключить IPv6 — установить значение в «False» — для конкретного сетевого адаптера, выполните следующее:

Disable-NetAdapterBinding -Name "Имя_сетевого_адаптера" -ComponentID ms_tcpip6

Например, чтобы отключить IPv6 для подключения по локальной сети:

Disable-NetAdapterBinding -Name "Подключение по локальной сети" -ComponentID ms_tcpip6
Пример отключения IPv6 для локального сетевого интерфейса
Пример отключения IPv6 для локального сетевого интерфейса

Для корректного выполнения команды потребуется запуск консоли с повышенными правами — от имени администратора. Иначе можно получить ошибку: «Отказано в доступе».

Отключение протокола IPv6 через реестр

Внимание: перед внесением изменений в реестр создайте резервную копию и контрольную точку восстановления системы.

Запускаем редактор реестра (regedit) и переходим в раздел:

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters

Если отсутствует параметр DisabledComponents, то создаем новый: в контекстном меню «Создать — Параметр DWORD (32 бита)». Если параметр имеется, то редактируем значение.

Отключение протокола IPv6
Отключение протокола IPv6

Значения DisabledComponents

Сначала значение в десятичной системе, в скобках — в шестнадцатеричной:

  • 0 — включение всех компонентов (значение по умолчанию);
  • 1 (0х01) — выполнение отключения везде, где есть туннельные интерфейсы (ISATAP, 6to4, Teredo);
  • 16 (0х10) — отключение протокола IPv6 везде, где есть нетуннельные интерфейсы (ЛС, PPP);
  • 32 (0х20) — предпочтение IPv4 вместо IPv6 (снижение приоритета);
  • 255 (0хFF) — отключение IPv6 на всех интерфейсах.

Рекомендации Microsoft под названием «Guidance for configuring IPv6 in Windows for advanced users» по конфигурированию IPv6 через реестр представлены здесь.

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

_____________________________________

⚡ Подписывайтесь на канал или задавайте вопрос на сайте — постараемся помочь всеми техническими силами. Безопасной и производительной работы в Windows и 1С.