IPv6 — сломать значение реестра DisabledComponents

Недавно я получил большое количество запросов на «как отключить IPv6» или «как лучше всего настроить IPv6 в моей среде». Я не совсем уверен, почему я получил так много в последнее время, и я не уверен, является ли это совпадением или есть что-то еще.

Однако я обнаружил, что большинство ИТ-отделов, с которыми я сталкивался в течение многих лет, просто переходят на IPv6 и устанавливают его полностью отключенным, устанавливая значение реестра disabledcomponents равным 0xffffffff. Хотя это действительно полностью отключает IPv6, я должен предупредить всех, с кем сталкивался с этим набором, что Microsoft вообще не тестирует этот параметр, и поддержка для решения проблем с этим набором обычно прибегает к установке отключенных компонентов обратно в 0x0 и повторному тестированию, где вещи волшебным образом работают, и это степень того, что делается по очевидным причинам. Это может (а иногда и делает) нарушать функциональность в Windows, и большинство клиентов в конечном итоге сталкиваются с DirectAccess (с удаленным помощником во втором).

С появлением многих моих корпоративных клиентов, недавно начавших развертывать DirectAccess для своих клиентов Windows 7 и (все чаще) Windows 8.1, это, конечно, сейчас пересматривается с учетом передового опыта (или, по крайней мере, лучших рекомендаций от парня Microsoft), так как DA требует, чтобы IPv6 был включен в большинстве случаев, по крайней мере, каким-то образом, особенно в Windows 7. Я сделал удобную разбивку параметров отключенных компонентов, чтобы удовлетворить запрос только для этого вопроса, и решил, что я буду размещать здесь свои рекомендации, и почему.

В значении реестра отключенных компонентов содержится 8 бит, и каждый бит представляет функцию или конфигурацию функциональности стека IPv6 в Windows.

  • Бит 0 управляет ВСЕМИ туннельными интерфейсами IPv6, включая Teredo, ISATAP, 6to4 и IP-HTTPS. Установка этого значения в 1 отключит ВСЕ туннельные интерфейсы, что также нарушит полную остановку DirectAccess. Это * должно * всегда быть 0, если вы используете переходные туннели IPv6 (и каждый интерфейс туннеля может управляться отдельно, что является правильным способом их обработки). Обычно я не рекомендую устанавливать значение 0, даже если вы ими не пользуетесь, поскольку каждый из них можно настроить отдельно. Может быть, это ОКР, может быть, это хорошая практика, я не знаю, но я никогда не изменю это с 0, если смогу помочь, потому что есть другие рычаги для этого, и я не люблю рисовать широкими кистями, когда дело доходит до Конфигурация, так как иногда бывает сложно отследить настройку, в которой я сохраняю настройку, которую я пытаюсь включить в будущем.
  • Бит 1 контролирует 6to4
  • Бит 2 контролирует ISATAP
  • Бит 3 контролирует Тередо
  • Бит 4 управляет IPv6 для не туннельных интерфейсов, которые могут включать реальные физические (или виртуальные, в виртуальной машине) сетевые интерфейсы, интерфейсы удаленного доступа / PPP и т. д.
  • Бит 5 управляет настройкой IPv6 или IPv4 в таблице префиксов — установка этого значения в 1 приведет к тому, что IPv4 будет предпочтительным при создании нового сетевого подключения, и я рекомендую устанавливать его в смешанных сетях IPv4 / IPv6, по крайней мере, на стороне клиента (сервера — сторона немного мрачнее, и я вообще не рекомендую возиться с IPv6 на бэкэнде вообще, если это вообще возможно).
  • Бит 6 указан как «зарезервированный», поэтому… да, не трогай это.
  • Бит 7 контролирует IP-HTTPS

Почему вышесказанное важно? Итак, 6to4, ISATAP, Teredo и IP-HTTPS считаются «технологиями перехода IPv6», что означает не что иное, как эти технологии, которые сервер и клиент DirectAccess могут (и будут) использовать для подключения этого туннеля, когда клиент не имеет адреса IPv6 или подключен к Интернету через туннель NAT. Для 6to4 и Teredo требуется, чтобы сервер DirectAccess был подключен напрямую к Интернету, что требовалось до использования функции DirectAccess Server 2012. Вероятность заключается в том, что если вы используете сервер 2008R2 или UAG для обслуживания DirectAccess своим клиентам, вы используете 6to4 или Teredo, поэтому не отключайте их, если хотите, чтобы DA продолжал работать. ISATAP обычно используется при «управлении» клиентами DA, поэтому, если вы делаете это, опять же, не отключайте ISATAP. IP-HTTPS позволяет DA работать, когда сервер 2012 или 2012R2 не подключен напрямую к общедоступному Интернету (и использует частный IP-адрес) и является единственным протоколом, который работает в этом сценарии. Я видел прогресс в этой конфигурации в новых установках DA, именно поэтому этот вопрос возник в первую очередь — если вы используете серверы DA, расположенные за брандмауэром или не подключенные к общедоступному Интернету, каким образом вы настраиваете IPv6 так, чтобы все работало так, как вам нужно, не оставляя других возможностей перехода IPv6 на месте?

Именно такие вопросы заставляют меня возвращаться к этой простой диаграмме, когда я определяю для кого-то, что является лучшим значением для параметра реестра disabledcomponents. Как и в случае с большинством вещей, один размер подходит не всем. Кроме того, знание — это сила, поэтому знание того, что контролирует каждый бит, поможет вам определить, что (если что-то нужно) установить, если вы собираетесь изменить поведение IPv6 в среде Windows. Опять же, лучшая практика Microsoft — сохранять настройки по умолчанию, и если вы способны это сделать, то это всегда лучшая рекомендация. Однако, если вы действительно чувствуете, что вам нужно что-то изменить, просто отключить IPv6 полностью — плохая идея — управлять им управляемым способом гораздо лучше.

Итак, без дальнейших разговоров, вот несколько примеров, которые я использовал в недавнем прошлом, которые должны помочь объяснить для более наглядного среди нас, как настроить отключенные компоненты для определенных конфигураций. Не забывая перечислять ваш двоичный файл справа налево (бит 7 будет самым левым битом, а бит 0 — самым правым, когда вы его записываете), вы увидите что-то вроде этого в качестве своего битового поля (используйте встроенный калькулятор Windows в « Режим «программист», если вы плохо умеете конвертировать двоичные файлы (bin) в шестнадцатеричные):

7 6 5 4 3 2 1 0

если вы хотите отключить туннельные интерфейсы IPv6 и предпочитаете IPv4 в своей сети (вы не используете DirectAccess и не нуждаетесь в создании туннеля), у вас будет двоичное число, которое выглядит следующим образом:

1 0 1 0 1 1 1 0 == 0xAE

Он имеет биты 7, 5, 3, 2 и 1, «включенные», таким образом отключая IP-HTTPS, устанавливая предпочтения IPv4, а также отключая Teredo, ISATAP и 6to4. Вы также можете установить бит 0, но это будет отчасти избыточно, и я предпочитаю вносить только те изменения, которые мне нужны, если это возможно, поэтому я не рекомендую его делать. Таким образом, вы бы поместили значение «0xAE» в значение реестра disabledcomponents, чтобы настроить этот параметр.

Допустим, вы используете DirectAccess с клиентами Windows 7, и вам нужно было включить 6to4 или Teredo, но вы не хотели использовать функцию ISATAP и не собирались использовать IP-HTTPS, так как ваши серверы DA подключены непосредственно к Интернету:

1 0 1 0 0 1 0 0 == 0xA4

Биты 7, 5 и 2 «включены», что отключает IP-HTTPS, устанавливает предпочтения IPv4 и отключает ISATAP, оставляя 6to4 и Teredo включенными. Таким образом, вы должны поместить значение «0xA4» в значение реестра disabledcomponents, чтобы настроить этот параметр.

В качестве последнего примера предположим, что вы используете серверы DA Server 2012 за брандмауэром и, следовательно, будете использовать IP-HTTPS для подключения внешних клиентов к вашей инфраструктуре DA. Вам не нужны никакие другие туннельные технологии (и на самом деле вы бы хотели, чтобы они были отключены):

0 0 1 0 1 1 1 0 == 2E

Это имеет биты 5, 3, 2 и 1, «включенные», таким образом устанавливая предпочтение IPv4 и отключая Teredo, ISATAP и 6to4.

Надеемся, что это поможет кому-то в следующий раз, когда он встретит запрос «отключить IPv6!» Или поможет ответить на вопрос «какие настройки IPv6 мне действительно нужно установить?». Да, это можно сделать и с помощью PowerShell и групповой политики, прежде чем комментарии взорвать об этом.

Счастливого администрирования.

Предоставлено: Cluberti.com

Ссылка на основную публикацию