- Windows понизить приоритет ipv6
- Снижение приоритета (предпочитаемости) IPv6
- GNU/Linux
- Руководство по настройке IPv6 в Windows для опытных пользователей
- Аннотация
- Использование реестра для настройки IPv6
- Расчет значения реестра
- Использование GUI свойств сети для отключения IPv6 не поддерживается
- Справочные материалы
- Архив метки: IPv6
Windows понизить приоритет ipv6
Компоненты SecureTower работают по IPv4. Если в системе по-умолчанию для резолвинга Localhost используется IPv6 может возникать ошибка подключения.
Проверить какая версия IP установлена в системе приоритетной можно посредством командной строки. Для этого, сочетанием клавиш Win + R, откройте утилиту «Выполнить», введите «cmd» и нажмите клавишу Enter.
В открывшемся интерфейсе командной строки введите команду «ping localhost».
Если в выводе результата отображается «Ответ от ::1», значит localhost получил адрес версии IPv6. Таким образом, нам нужно перевести его значение в IPv4.
Простое отключение IPv6 в «Свойствах адаптера» не поможет. Исправить данную ситуацию можно посредством редактирования реестра.
Для этого сочетанием клавиш Win + R откройте утилиту «Выполнить», введите «Regedit» и нажмите клавишу Enter.
В открывшемся редакторе реестра войдите в ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\Parameters\. Нажмите двойным кликом по параметру «DisabledComponents». В раскрывшемся меню «изменение параметра» установите значение «ffffffff» в шестнадцатеричной системе счисления. Если же данный параметр отсутствует, нажав правой кнопкой мыши, выберите действие «Создать параметр DWORD (32 бита)». Укажите ему имя «DisabledComponents» и введите значение, указанное выше.
Для применения изменения перезагрузите компьютер.
Проверить применился ли данный параметр можно аналогичным способом. В командной строке вводим команду ping localhost и если изменение приоритета корректно применилось — в выводе результата должно отображаться значение «ответ от 127.0.0.1».
Снижение приоритета (предпочитаемости) IPv6
Впервые опубликовано 2011-11-17.
Настроив у себя IPv6-туннель от одного из туннельных брокеров, вы вероятно заметите, что в случаях когда удалённые сайты или прочие сервера имеют как IPv4, так и IPv6-адрес, ваши компьютеры теперь будут предпочитать связываться с ними по протоколу IPv6.
Поскольку весь ваш IPv6-трафик в случае с туннельным брокером идёт через его сервер, в ряде случаев данное поведение может оказаться нежелательным. Используемый при обращении к тем же серверам напрямую по IPv4 маршрут может оказаться более коротким, и обеспечивать более высокую скорость.
В качестве примеров, где это может оказаться важным, можно назвать загрузку обновлений ОС с имеющих поддержку IPv6 файловых зеркал, а также просмотр YouTube, с недавнего времени добавившего IPv6-адреса своим серверам раздачи видео. Последнее, судя по всему, является довольно частой жалобой: «после установки туннеля YouTube тормозит», когда по итогам диагностики выясняется, что получение видео с данного сервиса теперь идёт по IPv6 через туннельный сервер в Европе, вместо (к примеру) установленных Гуглом в Москве или непосредственно у вашего провайдера кэширующих серверов его собственной CDN.
Решением проблемы может являться придание IPv6-адресам вашего туннельного брокера статуса «низкоприоритетных», т.е. используемых только при отсутствии возможности соединиться по IPv4. Такой статус по-умолчанию уже имеют 6to4 и Teredo-адреса (поэтому с ними вышеописанной проблемы в общем случае не возникает).
GNU/Linux
Необходимо отредактировать файл /etc/gai.conf . По-умолчанию там уже есть следующая закомментированная секция:
Раскомментируйте её, и добавьте в список (к примеру со значением «2», т.е. равным со 6to4-адресами приоритетом) ту IPv6-сеть вашего туннельного брокера, адрес из которой выдан вам и сконфигурирован у вас на туннельном интерфейсе. В случае с Hurricane Electric это 2001:470::/32. В результате секция будет выглядеть следующим образом:
Этого должно быть достаточно, чтобы IPv6 использовался только при подключении к IPv6-only сервисам, либо при явном указании требования использовать IPv6 в соответствующей программе («ssh -6», «curl -6» и т.д). В остальных случаях автоматически будет предпочитаться IPv4.
Если же вы хотите «прицельно» снизить предпочитаемость только IPv6-адресов определённых сайтов и сервисов, это можно сделать абсолютно идентичным способом, просто вместо префикса используемого вами туннеля необходимо прописать префикс используемый серверами, к которым вы подключаетесь (но не хотите более подключаться по v6). К примеру европейским Google используется префикс 2a00:1450::/32, а «глобальным» – 2001:4860::/32. В таблицу можно добавить оба, с одинаковым значением «2».
Руководство по настройке IPv6 в Windows для опытных пользователей
Windows Vista, Windows Server 2008 и более поздние версии Windows реализуют RFC 3484 и используют таблицу префиксов, чтобы определить, какой адрес использовать при наличии нескольких адресов для DNS-имени.
По умолчанию Windows поддерживает глобальные одноавказные адреса IPv6, а не IPv4-адреса.
Исходная версия продукта: Windows 10 — все выпуски, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Исходный номер КБ: 929852
Аннотация
ИТ-администраторы часто отключать IPv6 для устранения проблем, связанных с сетью, таких как устранение проблем с именами.
Протокол IPv6 является обязательной частью Windows Vista и Windows Server 2008 и более новых версий. Не рекомендуется отключать IPv6 или его компоненты. В этом случае некоторые компоненты Windows могут не работать.
Рекомендуется использовать prefer IPv4 over IPv6 в политиках префиксов, а не отключать IPV6.
Использование реестра для настройки IPv6
Точно следуйте всем указаниям из этого раздела. Внесение неправильных изменений в реестр может привести к возникновению серьезных проблем. Прежде чем приступить к изменениям, создайте резервную копию реестра для восстановления на случай возникновения проблем.
Функциональность IPv6 можно настроить, изменяя следующий ключ реестра:
Расположение: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\
Имя: DisabledComponents
Тип: REG_DWORD
Min Value: 0x00 (значение по умолчанию)
Максимальное значение: 0xFF (IPv6 отключен)
Функциональность IPv6 | Значение реестра и комментарии |
---|---|
Предпочитать IPv4 по IPv6 | 32 декабря Hex 0x20 Bin xx1x xxxx Рекомендуется вместо отключения IPv6. |
Отключение IPv6 | 255 декабря Hex 0xFF Bin 1111 1111 См. задержку при запуске после отключения IPv6 в Windows, если после отключения IPv6 в Windows 7 с Windows Server 2008 R2 SP1. Кроме того, если неправильно отключить IPv6, запуск системы будет отложен на пять секунд, установив для параметра реестра DisabledComponents значение 0xffffffff. Правильное значение должно быть 0xff. Дополнительные сведения см. в обзоре протокола IPv6 версии 6. Значение реестра DisabledComponents не влияет на состояние этого контрольного окна. Даже если для ключа реестра DisabledComponents установлено отключение IPv6, можно установить этот элемент на вкладке «Сеть» для каждого интерфейса. Это ожидаемое поведение. Невозможно полностью отключить IPv6, так как IPv6 используется внутри системы для многих задач TCPIP. Например, после настройки этого параметра можно будет запустить ::1 ping. |
Отключение IPv6 во всех интерфейсах без туннеля | 16 декабря Hex 0x10 Bin xxx1 xxxx |
Отключение IPv6 на всех интерфейсах туннеля | 1 декабря Hex 0x01 Bin xxxx xxx1 |
Отключение IPv6 во всех интерфейсах, не включаемых вtunnel (за исключением обратной связи), и в интерфейсе туннеля IPv6 | 17 декабря Hex 0x11 Bin xxx1 xxx1 |
Предпочитать IPv6 через IPv4 | Bin xx0x xxxx |
Повторное включить IPv6 на всех интерфейсах, не относяхся к туннелю | Bin xxx0 xxxx |
Повторное включить IPv6 на всех интерфейсах туннеля | Bin xxx xxx0 |
Повторное включить IPv6 в интерфейсах нетоннеля и в туннелях IPv6 | Bin xxx0 xxx0 |
- Администраторы должны создать ADMX-файл, чтобы отобрать параметры реестра, которые приведены ниже, в параметре групповой политики.
- Чтобы изменения вступили в силу, необходимо перезагрузить компьютер.
- Значения, кроме 0 или 32, вызывают сбой службы маршрутов и удаленного доступа после вступления этого изменения в силу.
По умолчанию протокол туннелинга 6to4 включен в Windows, если интерфейсу назначен общедоступный IPv4-адрес (общедоступный IPv4-адрес означает любой IPv4-адрес, который не находится в диапазонах 10.0.0.0/8, 172.16.0.0/12 или 192.168.0.0/16). 6to4 автоматически назначает IPv6-адрес интерфейсу туннелинга 6to4 для каждого адреса, а 6to4 динамически регистрирует эти IPv6-адреса на назначенном DNS-сервере. Если такое поведение не требуется, рекомендуется отключить интерфейсы туннеля IPv6 на затронутых ведущих приложениях.
Чтобы изменить параметр реестра, выполните следующие действия:
Откройте окно административной командной подсказки.
Выполните следующую команду:
Замените значение соответствующим значением.
Расчет значения реестра
Windows использует битовуюmasks для проверки значений DisabledComponents и определения, следует ли отключить компонент.
Чтобы узнать, какой компонент каждый бит (от низкого до высокого) элементов управления, см. в следующей таблице.
Имя | Setting |
---|---|
Туннель | Отключение интерфейсов туннеля |
Tunnel6to4 | Отключение интерфейсов 6to4 |
TunnelIsatap | Отключение интерфейсов Isatap |
Tunnel Teredo | Отключение интерфейсов Teredo |
Нативное | Отключение нативных интерфейсов (также PPP) |
PreferIpv4 | Предпочитать IPv4 в политике префикса по умолчанию |
TunnelCp | Отключение интерфейсов CP |
TunnelIpTls | Отключение интерфейсов IP-TLS |
Для каждого бита 0 означает «false», а 1 — «true». Пример можно найти в следующей таблице.
Setting | Предпочитать IPv4 по IPv6 в политиках префикса | Отключение IPv6 во всех интерфейсах без туннеля | Отключение IPv6 на всех интерфейсах туннеля | Отключение IPv6 в нетоннелических интерфейсах (за исключением обратной связи) и в туннелевом интерфейсе IPv6 |
---|---|---|---|---|
Отключение интерфейсов туннеля | 0 | 0 | 1 | 1 |
Отключение интерфейсов 6to4 | 0 | 0 | 0 | 0 |
Отключение интерфейсов Isatap | 0 | 0 | 0 | 0 |
Отключение интерфейсов Teredo | 0 | 0 | 0 | 0 |
Отключение нативных интерфейсов (также PPP) | 0 | 1 | 0 | 1 |
Предпочитать IPv4 в политике префикса по умолчанию. | 1 | 0 | 0 | 0 |
Отключение интерфейсов CP | 0 | 0 | 0 | 0 |
Отключение интерфейсов IP-TLS | 0 | 0 | 0 | 0 |
Binary | 0010 0000 | 0001 0000 | 0000 0001 | 0001 0001 |
Hexadecimal | 0x20 | 0x10 | 0x01 | 0x11 |
Использование GUI свойств сети для отключения IPv6 не поддерживается
Это значение реестра не влияет на состояние следующего контрольного окна. Даже если в реестре настроено отключение IPv6, можно установить этот элемент на вкладке «Сеть» для каждого интерфейса. Это ожидаемое поведение.
Справочные материалы
Дополнительные сведения о RFC 3484 см. в стандарте «Выбор адреса по умолчанию для протокола IPv6 версии 6».
Дополнительные сведения о том, как установить приоритет IPv4 над IPv6, см. в SIO_ADDRESS_LIST_SORT.
Сведения о RFC 4291 см. в ip-адреснойархитектуре версии 6.
Дополнительные сведения о связанных проблемах см. в статьях ниже:
Netmon 3.4 не совместим с Windows Server 2012 или более новой ОС, если включена команда сетевой сети LBFO. Вместо этого используйте анализатор сообщений.
Архив метки: IPv6
В некоторых случаях могут происходит странные ошибки, связанные со стабильностью работы платформы 1С:Предприятие 8.
Одной из рекомендаций является понизить приоритет протокола ipv6 или выключить его совсем.
В ряде случаев эти ошибки обусловлены тем, что клиент запрашивает у сервера его адрес, а сервер вместо адреса в формате IPv4 вида 192.168.1.2 возвращает адрес в формате IPv6 в формате вида ::1 или fe80::e168:38a1:5a4d:d271%40 (адреса взяты для примера, ключевое там — много групп цифр, разделённых вместо точек двоеточиями).
Увидеть это можно, выполнив в командной строке команду
ping servername
где вместо servername надо подставить имя своего сервера. Если ответ будет в формате IPv6 — ваш сервер тоже может быть подвержен такой проблеме.
Ранее в нашем блоге давалось решение вида «отключить протокол IPv6 полностью»: http://www.gilev.ru/disableipv6/, на Инфостарте проблема тоже обсуждалась: http://infostart.ru/public/160388/, решений приводилось два — полное отключение протокола IPv6 полностью, и занесение IP-адреса сервера в файл hosts.
Первое решение может быть неудобно тем, что как минимум требует перезагрузить сервер, второе может быть неудобно или даже неработоспособно в случае нахождения сервера в нескольких подсетях одновременно (например, несколько сетевых карт).
А вот теперь сообщаем более технологичное решение: просто повысить приоритет протокола IPv4 над протоколом IPv6, тем не менее сохранив работоспособность IPv6. Решение не требует перезагрузки, вступает в действие моментально. Нужно открыть командную строку в режиме администратора, и выполнить там две команды:
netsh interface ipv6 set prefix ::/96 60 3
netsh interface ipv6 set prefix ::ffff:0:0/96 55 4
Всё, работает! Проверим на примере «чистой» Windows 2012 Server (жирным выделены команды, дальше в сокращённом виде приводится ответ операционной системы):
ping gilev_test
Обмен пакетами с gilev_test [fe80::21c0:ff89:967f:955a%19] с 32 байтами данных:
Ответ от fe80::21c0:ff89:967f:955a%19: время Рубрика: Администрирование, тюнинг, Устранение ошибок | Метки: IPv4, IPv6, netsh, ping