Настройка отказоустойчивого dhcp windows server

Обеспечение высокой отказоустойчивости DHCP протокола, используя средства резервного переключения Windows Server 2012

Обеспечение высокой отказоустойчивости DHCP протокола

Обеспечение высокой отказоустойчивости таких систем как DHCP стоит в приоритетном списке задач любой компании. В условиях, когда конфигурация сетевого оборудования и получение клиентом IP адреса происходит в автоматическом режиме, бесперебойная работа сетей зависит от степени отказоустойчивости DHCP протокола сервера. Давайте рассмотрим, какие преимущества дает бесперебойная работа DHCP:

— В любое время, любой авторизированный ПК, получает возможность автоматического присвоения IP адреса и настроек сети используя средства DHCP.

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

Windows Server 2012 обладает набором обновленных инструментов отвечающим высоким требованиям отказоустойчивости DHCP. Например, два сервера DHCP, могу быть настроены для обеспечения бесперебойной работы сети, путем взаимной подстраховки. Существуют несколько значений DHCP серверов, которые определяют методы распределения резервного переключения. Одним из важных значений DHCP, является режим (mode), в котором будет проводится переключение на резервный сервер. Другим важным пунктом в этой системе, будет выделенные общих для серверов рабочих зон для авариного переключения, находящихся как бы между ними. Таким образом DHCP сервера имеют общий буфер для хранения актуальной информации по настройкам сети и присвоенным IP адресам для каждого авторизированного пользователя. В случае авариного, либо планового отключения одного из серверов, второй сервер сможет продолжить работу т.к. имеет все необходимые (актуальные) данные по настройкам и IP адресам для каждого пользователя, что обеспечивает бесперебойную работу.

Режимы аварийного переключения

Существует два режима обеспечения аварийного переключения между DHCP серверами используя различные системы: Load Balance и Hot Standby.

Система Load Balance в действительности работает как «Active-Active» т.е. в данном случае оба DHCP сервера в равной степени активны в сети. Подробнее на данной системе остановимся далее.

Система Hot Standby работает по принципу «Active-Passive», т.е. пока один из серверов (активный) полностью обслуживает потребности пользователей сети, второй (пассивный) не принимает участия в работе сети, но постоянно получает резервные копии всех данных. Таким образом, при возникновении проблем с первым (активным) DHCP сервером, второй DHCP сервер (пассивный) включается в работу имея все актуальные настройки пользователей сети.

Следует упомянуть, что оба наших DHCP сервера могут быть частью разных подсетей и даже находится в разных географических точках.

Обеспечение работоспособности системы DHCP серверов

Для обеспечения бесперебойной работоспособности системы DHCP серверов существует ряд решений. Самый простой вариант, когда сервера работающие в режиме Load Balance или Hot Standby обслуживают сети, находящие на небольшом удалении друг от друга (географически или в сетевом пространстве, значения не имеет).

Более сложная система будет применяться в случае удаленности дублирующих DHCP серверов друг от друга, как это показано на примере ниже. В данном случае существуют две отдельных сети в двух удаленных точках Hyderabad и Redmond. Каждая из этих сетей обслуживается одним DHCP сервером, DHCP Server 1 и DHCP Server 2. Для обеспечения стабильной работы обоих сетей администратор может настроить работу серверов в режиме Hot Standby по отношению друг к другу. Получается, что DHCP сервер, обслуживающий абонентов в Hyderabad собирает актуальные данные о настройке сети и присвоении IP адресов пользователям и пересылает в выделенное пространство между двумя DHCP серверами. DHCP сервер, находящийся в точке Redmond, будет пассивным по отношению к DHCP серверу в точке Hyderabad, но будет иметь все данные для обеспечения бесперебойной работы сети в Hyderabad.

Читайте также:  Punto switcher не открывается windows

Взаимодействие двух DHCP серверов, посредством выделенного общего пространства.

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

Hub-and-Spoke еще один способ аварийного переключения между DHCP серверами, при котором существует центральный DHCP сервер. По отношению к DHCP серверам подсетей, центральный DHCP сервер находится в роли пассивного сервера, т.е. непосредственного участия в работе сетей он не принимает. Однако в случае возникновения аварийной необходимости распределения нагрузки между подчиненными DHCP серверами, центральный DHCP сервер имеет все данные по каждой подчиненной сети и может управлять процессом перераспределения нагрузки.

Лучшее решение проблем доступности DHCP серверов

Сервера на базе Windows DHCP вынуждены до сих пор отвечать требованиям отказоустойчивости путем хостинга DHCP через Windows Failover Cluster (Windows Server Failover Clustering (WSFC)), либо разделением областей размещения. Приведенные решения имеют свои недостатки. Разделение рабочих областей между серверами, например, базируется на построении идентичных рабочих пространств на двух серверах DHCP и специфичной настройкой, при которой 80% субабонентов сети будут обслуживаться первичным сервером, тогда как остальные 20% — вторичным сервером. Вторичный сервер, обычно, настраивается таким образом, чтобы выполнять свои функции с заметной задержкой, по сравнению с первичным сервером, поэтому пользователи используют IP адреса «первичного» сервера, если он работает. Разделение областей имеет два главных недостатка. Подсети, использующие IPv4, зачастую потребляют более 80% ресурсов сервера. В таких сетях нецелесообразно использовать разделение пространства на серверах по причине нехватки свободных ресурсов основного сервера. Другой проблемой является нехватка свободных IP адресов для пользователей, не получивших своевременный отклик от первичного сервера. Пользователь, изначально получив IP адрес от первичного сервера не сможет возобновить соединение с первичным сервером, если тот загружен, и будет переброшен в область вторичного сервера, где ему будет присвоен новый IP адрес. В данном случае, разделение рабочих областей DHCP серверов страдает от отсутствия синхронизации данных о резервировании IP адресов для пользователей.

При использовании системы Windows Failover Cluster в качестве сервера DHCP, база данных DHCP располагается в удаленном хранилище с доступом обоих серверов к нему, в дополнении к физическому размещению данного хранилища. Каждый отдельный сервер DHCP работает с базой данных, располагающейся на отдельном носителе с общим доступом. Для обеспечения стабильности работы, хранилище должно обладать запасом ресурсов. Все это усложняет процесс обеспечения, не говоря о том, что хранилище само по себе может стать причиной нестабильной работы DHCP сети.

Сервера на базе The Windows Server 2012 обладают усовершенствованным механизмом защиты и лишены упомянутых выше недостатков и располагают большими вариациями размещения. Так же система DHCP серверов на базе Windows Server 2012 обладает техподдержкой всех доступных изданий (Foundation, Standard, Data Center). Данное решение очень бюджетно и обеспечит стабильность Ваших DHCP серверов!

DHCP failover может быть настроен с помощью DHCP MMC, либо командлетов (cmdlet) DHCP PowerShell. Все настройки, доступные в MMC так же могут быть выполнены через cmdlet в DHCP PowerShell. В DHCP MMC используется автоматический установщик, который значительно упрощает процесс установки и настройки. Вы можете вызвать меню настройки (Configure failover ) правым кликом в меню установщика по кнопке IPv4. Если Вы седлаете так, то все неразмеченное пространство разделение областей будет выбрано в качестве пространства обеспечения стабильности работы сети. С другой стороны, Вы можете сначала выбрать определенные рабочие области и уже после этого вызвать меню Configure failover, тогда только выбранное пространство будет использовано установщиком.

Читайте также:  Stop 0x000000c2 при установке windows

Ниже приведены DHCP PowerShell cmdlets:

  • AddDhcpServerv4Failover Создать новую связь (новое правило) между серверами в IPv4 сетях
  • AddDhcpServerv4FailoverScope Добавить в существующую связь (в правило) дополнительное рабочее пространство
  • GetDhcpServerv4Failover Получить информацию о настройке связей с сервера
  • RemoveDhcpServerv4Failover Удалить определенные связи (правила) между серверами
  • RemoveDhcpServerv4FailoverScope Удалить определенные рабочие пространства из связи (правил)
  • SetDhcpServerv4Failover Редактировать настройки существующих связей (правил) в сети
  • InvokeDhcpServerv4FailoverReplication Дублировать настройки общего рабочего пространства между серверами

В дополнении к вышеупомянутым, есть еще одна команда — GetDhcpServerv4ScopeStatistics, данная команда имеет свич “-failover”, прописав который, Вы получите отчет о выделенных под обеспечение бесперебойной работы сети рабочих пространствах.

В заключении, система обеспечения бесперебойной работы DHCP серверов на базе Windows Server 2012 обладает высоко востребованными механизмами по обеспечению стабильной работы, размещения и отвечает современным требованиям к DHCP серверам, а также обеспечивает стабильное количество IP адресов для всех авторизированных пользователей.

blog.eaglenn.ru | Заметки IT инженера

Microsoft, Linux, Lync и etc……

Автоматическая репликация областей отказоустойчивого DHCP сервера Windows Server 2012

С выходом Windows Server 2012 у администратора DHCP сервера появилась возможность использования DHCP сервера в режиме отказоустойчивости с репликацией зарезервированных адресов на вторичный DHCP сервер в режиме балансировки нагрузки либо в режиме горячей замены. Это большой шаг вперед, который позволил добиться высокой доступности DHCP серверов, снижения времени простоя на обслуживание, установку обновлений и прочие операции. Как водиться среди огромного количества плюсов не обошлось без небольшого, но неудобного минуса. Проблема заключается в том, что после создания резервирования на одной из нод отказоустойчивого кластера DHCP, обновленные данные, автоматически не реплицируются на вторичный сервер. Для репликации данных приходится использовать ручной режим, для этого необходимо щелкнуть правой кнопкой мыши по области в которую были внесены изменения и из выпадающего меню выбрать «Репликация отношений»

Для репликации можно использовать командную строку, а именно оболочку PowerShell запущенную в режиме Администратора, в которой необходимо выполнить команду:

Invoke-DhcpServerv4FailoverReplication -ComputerName « имя dhcp сервера с которого необходимо реплицировать данные «

Пример использования команды Invoke-DhcpServerv4FailoverReplication

Команда ниже проведет репликацию всех областей участвующих в группе репликаций с именем MS-NN-Failover:

Этот пример запустит процесс репликации всех областей находящихся на сервере dhcpserver.example.com

Пример ниже выполнит репликацию областей имеющих ScopeID 10.10.10.0 и 20.20.20.0

Следует помнить, что ScopeID это не имя области, а именно пул адресов выделенных для области:

Автоматическая репликация областей отказоустойчивого DHCP сервера Windows Server 2012

В начале статьи мы рассмотрели возможные варианты репликации области с первичного сервера на вторичный в ручном режиме. Далее рассмотрим вариант создания автоматической репликации. Для этого нам понадобиться написать скрипт из одной строки, создать пользователя с правами локального администратора на DHCP серверах, так же добавить его в группу администраторов DHCP сервера и создать в планировщике заданий простую задачу для запуска репликации.

Скрипт репликации

Создадим на диске C:\ файл PowerShell с произвольным названием, например: DhcpServerFailoverReplication.ps1. Откроем его на редактирование и добавим строку:

Invoke-DhcpServerv4FailoverReplication -ComputerName dhcp.example.com -force

Ключ -force позволит выполнить команду без вывода подтверждения действий.

Сохраняем файл и переходим к созданию пользователя.

Читайте также:  Iperf запуск под windows

Создание пользователя

Так как мой сценарий работает в среде Active Directory я не буду использовать локального пользователя, а создам доменного. Он нам понадобиться для запуска задачи по расписанию. И так, создадим обычного пользователя с именем DhcpServerReplication, добавим его в группу локального администратора на каждом DHCP сервере участвующем в сценарии отказоустойчивости.

Далее добавим нашего пользователя в локальную группу Администраторы DHCP.

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

Создание задания в планировщике

Самое время перейти к созданию задания в планировщике. Казалось бы, можно создать простое задание и запускать его планировщиком, например, каждые 5 минут. Но такой вариант запуска будет бесполезно грузить канал трафиком репликации, не зависимо от того была обновлена запись резервирования или нет. Мы воспользуемся запуском задачи по событию. При создании нового резервирования сервер регистрирует в журнале Microsoft-Windows-DHCP Server Events/Работает событие с кодом 106.

его мы и будем использовать при создании задания:

На странице настройки триггера выберете: При занесении в журнал указанного события.

В целях безопасности PowerShell скрипты могут выполняться только интерактивно, то есть сначала надо запустить оболочку PowerShell и уже в ней указать путь к скрипту. Поэтому в поле «Action» указываем запуск powershell.exe, а в поле «Add Arguments» параметр -File и путь к нашему скрипту, вот так:

-WindowStyle Hidden -File «C:\DhcpServerFailoverReplication.ps1»

-File — путь к исполняемому файлу PowerShell

-WindowStyle Hidden — не показывать окно оболочки PowerShell

Также в поле аргументы можно указать:

-Command — выполняет указанные команды и любые другие параметры. Этот параметр тоже можно использовать для запуска скрипта, например: -Command ″& ″. Кроме того, с его помощью можно передавать в скрипт параметры: -Command ″& ″;
-ExecutionPolicy — задает политику выполнения скриптов для текущего сеанса, может принимать значения Unrestricted, RemoteSigned, AllSigned и Restricted. Заданная политика будет действовать только в текущем сеансе и имеет приоритет над любыми ранее созданными политиками;
-NonInteractive — отключить вывод интерактивных запросов к пользователю;
-WindowStyle Hidden — запуск окна PowerShell в скрытом режиме, незаметно для пользователя;
-NoProfile — предотвращает загрузку профиля, что может несколько ускорить выполнение скрипта;
-NoExit — оставить оболочку открытой после отработки скрипта. Это может понадобиться при проверке и отладке скрипта.

После создания задачи запуска скрипта по событию, откройте закладку Действия и проверьте правильность строки запуска.

На закладке Общие укажите от какого пользователя запускать задание, его пароль, установите галочку запускать для всех пользователей и выполнять с наивысшими правами.

Откройте закладку Триггеры, проверьте источник и событие запуска.

В результате этих не сложных действий, наш планировщик заданий будет реагировать на появление события с кодом 106 и выполнять репликацию базы. Но это еще не все. Мы забыли настроить автоматическую репликацию DHCP при удалении резервации из базы данных. Для этого нам понадобиться событие с кодом 107.

Откроем еще раз закладку Триггеры и нажмем кнопку Создать. В окне мастера заполним необходимые поля, как на примере ниже:

Журнал: Microsoft-Windows-DHCP Server Events/Работает
Источник: DHCP-server
Код события: 107

После создания этого триггера, при регистрации в журнале события с кодом 107, так же будет запускать репликация базы DHCP на вторичный сервер.

Послесловие

Администратор DHCP сервера создает резервацию для компьютера. В журнале событий Microsoft-Windows-DHCP Server Events/Работает возникает событие, планировщик заданий получает информацию о возникшем событие и автоматически запускает задачу, которая в свою очередь запускает команду репликации. Вот таким не хитрым способом мы настроили автоматическую репликацию отказоустойчивого DHCP сервера.

Оцените статью