Автоматическая репликация областей отказоустойчивого DHCP сервера Windows Server
Источник http://pyatilistnik.org/oshibki-20291-i-20292-na-dhcp-v-windows-server/
Как я написал выше, Microsoft до сих пор не решило проблему автоматической репликации данных, о зарезервированных IP-адресах, даже в Windows Server 2019. Тут у вас два варианта, первый самый топорный, это ручной запуск на сервере, где были изменены настройки. Для этого запустите PowerShell и введите команду:
- dc01.root.pyatilistnik.org - сервер с которого мы будем реплицировать настройки (DHCP сервер-партнер)
В этом примере реплицируются все области отработки отказа службы DHCP-сервера, работающей на компьютере с именем dc01.root.pyatilistnik.org, в одну или несколько соответствующих партнерских служб DHCP-сервера на основе одного или нескольких отношений отработки отказа, в которых включены службы DHCP-сервера. Обратите внимание, что у вас появится запрос на подтверждение данного действия. Если хотите его пропускать, то необходимо добавить ключ -Force.
Если вам необходимо произвести репликацию настроек отработки отказа относительно одной группы, то команда будет выглядеть вот так:
В этом примере реплицируется конфигурация всех областей, которые являются частью отношения отработки отказа с именем dc01.root.pyatilistnik.org-svt2019s01 в службе DHCP-сервера, работающей на компьютере с именем dc01.root.pyatilistnik.org, в службу DHCP-сервера партнера.
Предположим, что вам необходимо выполнить репликацию отработки отказа, только для определенных областей, для этого есть параметр -ScopeId, вот пример для моих областей:
Зная теперь основные команды, вы можете создать для себя автоматический сценарий при котором у вас будет происходить репликация. Тут все просто на поможет сценарий PowerShell и планировщик заданий, который будет срабатывать на определенное событие в журналах Windows.
Алгоритм действий:
- Создаете в Active Directory новую учетную запись, например dhcp-replication и делаете ее администратором на обоих DHCP серверах, кто входит в группу репликации. Как дать права на DHCP читайте по ссылке.
- Создаем небольшой скрипт dhcp-replication.ps1. Для этого вам просто нужно открыть PowerShell ISE и ввести там команду:
Далее вам просто нужно сохранить его в формате ps1.
- Создаем задание в планировщике Windows, которое по событию будет запускать ваш скрипт. Почему именно по событию, все просто, чтобы уменьшить количество бесполезного трафика и нагрузку на ваш сервер.
Когда вы производите новое резервирование IP-адреса на вашем DHCP сервере, у вас генерируется событие ID 106.
Генерируется оно журналом Microsoft-Windows-DHCP Server Events.
И так, откройте планировщик событий, самый быстрый способ, это в окне "Выполнить", ввести taskschd.msc.
Щелкаем правым кликом и создаем новую, простую задачу.
На первом шаге, вам необходимо придумать имя для вашей задачи, можно написать, что угодно, главное, чтобы вам было понятно.
Выбираем пункт "При занесении в журнал указанного события".
Далее заполняем три пункта:
- Журнал - Microsoft-Windows-DHCP Server Events/Работает
- DHCP-Server
- Код события 106
Оставляем пункт "Запустить программу".
Далее в поле:
- Программа или сценарий, вы указываете powershell.exe
- В поле "Добавить аргументы" введите текст -WindowStyle Hidden -File "C:\Scripts\dhcp-replication.ps1". Где WindowStyle - это указание не показывать диалоговое окно, а атрибут -File указывает путь до вашего скрипта PowerShell. Мы такое уже разбирали в методах запуска скрипта PowerShell.
Смотрим сводную информацию и закрываем мастер настройки простого задания.
В результате ваше новое задание появится в списке.
Далее нам необходимо открыть свойства вашего задания и в параметрах безопасности выбрать созданного ранее пользователя, от имени которого будет запускаться задание, далее выставить опцию "Выполнить для всех пользователей" и поставить галку "Выполнить с наивысшими правами".
Все теперь ждем появления события ID 106, вы его сами можете вызвать, путем резервирования IP-адреса. Как видим у меня успешно отработало мое задание и все резервированные IP-адреса на текущем сервере, благополучно отреплецировались на DHCP-партнера.
С событием установки резервирования (ID 106) мы разобрались, но еще есть и обратная операция, это удаление резервирования IP-адреса за определенным компьютером, и тут генерируется событие ID 107.
- Журнал Microsoft-Windows-DHCP Server Events/Работает
- Источник DHCP-Server
В итоге вам нужно создать такое же задание, как и в случае с ID 106, но сделать для ID 107 некоторые изменения. Теперь при включении и выключении аренды IP адреса, все области отработки будут автоматически согласованы и ошибок с ID 202091 и ID 20292 не должно быть.













