Как зарезервировать роль DHCP на Server 2012 R2

Posted by

Цель: И тут думая о резервировании я подумал, почему же делают два домен контроллера, да понятно что выдача билета аутентификации проходила без каких либо проблем с одним домен контроллером, но это понятно. С ролью DNS все тоже понятно, а как быть с ролью (вариант где сервис DHCP на сетевом оборудовании, к примеру Mikrotik я не рассматриваю). Открыв книги по Windows администрированию меня заинтриговала тема настройка отказоустойчивого DHCP средствами самой Windows. Вот этому я и посвятил данную реальную заметку.

Исходные данные:

  • srv-dc1 (домен контроллер с ролями AD,DNS,DHCP)

OC: Standard

IP: 10.90.90.2/24

  • srv-dc2 (домен контроллер с ролями AD,DNS)

OC: Server 2012 R2 Standard

IP: 10.90.90.3/24

srv-gw (шлюз на базе Mikrotik)

Сперва все задачу прорабатываю на тестовом окружении под Virtualbox своей домашней/рабочей системы Ubuntu 18.04 Desktop amd64 ноутбука Lenovo E555

Шаг №1: После того, как на втором домен контроллере srv-dc2 подняты роли AD,DNS следует проверить, что ошибок нет, для этого есть утилита командной строки dcdiag и также проверяем состояние репликации:

C:\Windows\system32>repadmin /syncall

CALLBACK MESSAGE: The following replication is in progress:

From: 8b2ce901-20be-462c-9989-14e9a0ece499._msdcs.polygon.local

To : fd07c239-b3de-4468-b747-28310c873ed2._msdcs.polygon.local

CALLBACK MESSAGE: The following replication completed successfully:

From: 8b2ce901-20be-462c-9989-14e9a0ece499._msdcs.polygon.local

To : fd07c239-b3de-4468-b747-28310c873ed2._msdcs.polygon.local

CALLBACK MESSAGE: SyncAll Finished.

SyncAll terminated with no errors.

Шаг №2: Поднимаем роль DHCP на втором домен контроллере srv-dc2. Заострять внимание на этом шаге нет необходимости все как обычно. Важно: не нужно настраивать область обслуживания сети, данная настройка должна будет в автоматическом режиме добавиться после настройки отказоустойчивости.

На заметку: Важно в настройках DHCP не забыть указать, что в роли DNS серверов выступают теперь два сервера, иначе зачем поднимаются два сервера.

Если домен контроллеров с ролью DNS несколько то их нужно указать

Шаг №3: Нужно определиться, как будет работать DHCPсервис: это либо разделение областей (Split Score), т. е. Один сервер с ролью DHCP использует, к примеру 50% из пула адресов, а оставшиеся 50% другой сервер. Есть еще другой способ работы — это Failover (позиционирует как Отказоустойчивый). Т.е. если один сервер с ролью DHCP отказывает, вместо него работает другой. Мне кажется в этом и суть двух и более домен контроллеров. В этом режиме работы мне интересен вариант Failover + Host Standby Mode (Режим горячей замены) — один сервер будет действующим и если что-то с ним случает пассивный (второй сервер) становится основным.

Шаг №4: Несколько серверов с ролью DHCP в одной оснастке

На заметку: В одной оснастке DHCP можно отобразить сразу несколько серверов с ролью DHCP чтобы управлять все разом, а не переключаться по RDP к каждому:

Управление несколькими сервера с ролью DHCP с одной оснастки DHCPна srv-dc1: Win + R → control.exe → Administrative Tools — и через правый клик мышью по DHCP → Add Server → This Server: Browse → Enter the object name to select: ввожу srv-dc2 и нажимаю Check Names после чего хост проверяется на соответствие и подчеркивается, нажимаю OK, OK

Шаг №5: Создаю отказоустойчивый DHCP сервис

Переключаюсь на srv-dc1: Win + R → control.exe — Administrative Tools — DHCP и по имеющейся области обслуживания сети: DHCP → srv-dc1.polygon.local — IPv4 — Scope [10.90.90.0] lan через правый клик мышью выбираю Configure Failover. Теперь двигаюсь согласно шагам запущенного мастера:

Available scopes: отмечаю галочкой Select all

у меня одна область это 10.90.90.0

и нажимаю Next, тут нужно указать дополнительный сервер с ролью DHCP который будет участвовать в режиме отказоустойчивости:

Parther Server: → Add Server → This server: Browse → ввожу srv-dc2 и нажимаю Check Names → OK (окна Select Computer) → OK (окна Add Server) — Next (окна Configure Failover) — привожу настройки к следующему виду ниже представленного скриншота:

Настройка отказоустойчивости для роли DHCPТеперь нужно пояснить обозначение параметров:

  1. Relationship Name (Название конфигурации)— задается уникальное название создаваемой конфигурации.
  2. Maximum Client Lead Time (Максимальное время упреждения клиента)— максимальное время аренды IP-адреса выдаваемого доступным сервером.
  3. Mode (Режим работы):
  4. Hot Standby (горячей замены) —выбираем состояние работы дополнительного сервера: Активный / Резервный и задаем количество IP-адресов в процентом отношении, для резервирования дополнительного сервера.
  5. Addressess reserved for standby server: (Процент зарезервированных адресов) ставлю 100%, т. е. в режиме горячего резервирования указывается процент диапазона адресов в области для резервного сервера. Количество адресов, соответствующее указанному проценту будет закреплено за резервным сервером.
  6. State Switchover Interval: ( Интервал автоматического переключения. ) 10 minutes → Сервер, который теряет канал связи с партнёром переходит в режим прерванной связи. Потеря связи может быть связана с проблемами в сети или с выключением сервера-партнёра.
  7. Enable Message Authentication (Включение проверки подлинности сообщений) — Для настройки проверки подлинности сообщений между серверами.
  8. Shared Secret (пароль) — Задается пароль для аутентификации серверов между собой. Я ставлю себе Aa1234567@!

И после нажимаю Next — Finish, если все успешно, то результирующая должна иметь статус Successful, если так то нажимаем Close

Шаг №6: Если проверить, а появились ли настройки на втором srv-dc2.polygon.local, то да в той же самой оснастке DHCP развернув srv-dc2.polygon.local — IPv4 — вижу область Scope [10.90.90.0] lan, открыв ее свойства и перейдя на вкладку Failover что данный сервис (DHCP) является второстепенным от главного srv-dc1.polygon.local, его режим «Hot standby», роль (Role of this Server): Standby и т. д. Повторив все тоже самое на srv-dc1.polygon.local видно что его роль (Role of this Server): Active.

На заметку: В настройках области Scope Options должны быть обязательно прописаны записи 006 DNS Server оба сервера с ролью DNS.

Итого: По умолчанию при создании области DHCP я воспользовался дефолтной настройкой жизни выданного адреса от DHCP сервера равной 8 дней, если srv-dc1 будет недоступен то его функциональные обязанности возьмет на себя srv-dc2 и статус роли сменится.

Шаг №7: Можно проверить на примере как это работает. На srv-dc1.polygon.local → DHCP — Scope [10.90.90.0] lan — через правый клик мышью выбираю Deconfigure Failover — OK — Close, после создаю отказоустойчивое соединение, но следует в этапе указания партнера не забыть снять галочку с пункта «Reuse existing failover relationships configured with this server (if any exist)» (если этого не сделать подхватятся ранее имевшие место быть настройки), как сделано выше по заметке. Отключаю сеть на srv-dc1 и через пару минут проверив статус srv-dc2 вижу что у него сменилась:

  • Mode: Hot standby
  • Max Client to Lead Time: 1 hrs 0 mins
  • State Switchover Interval: 1 mins
  • State of this Server: Lost contact with parther
  • State of Parther Server: Not available
  • Role of this Server: Standby
  • Addressess Reserved for Standby: 100%

Теперь проверяю, как поведет себя рабочая станция (в рамках этой заметки пусть это будет W7X64):

C:\Windows\system32>ipconfig /releaseудаляю сетевой адрес

C:\Windows\system32>ipconfig /renewзапрашиваю новый

C:\Windows\system32>ipconfig /all | findstr /C:"DHCP"

DHCP включен. . . . . . . . . . . : Да

DHCP-сервер. . . . . . . . . . . : 10.90.90.3 → режим отказоустойчивости успешно отработал, сейчас выдачей адресов занимается srv-dc2.polygon.local, если включить сеть на srv-dc1.polygon.local и проделать на рабочей станции все с нуля, то, сетевой адрес она получит уже с srv-dc1.polygon.local

C:\Windows\system32>ipconfig /all | findstr /C:"DHCP"

DHCP включен. . . . . . . . . . . : Да

DHCP-сервер. . . . . . . . . . . : 10.90.90.2

Получилось разобрать, мне нравится такой вид отказоустойчивости. Интересующая меня тем разобрана, на этом я прощаюсь, до новых встреч, с уважением автор блога Олло Александр aka ekzorchik.