И снова о DHCP. В предыдущей статье мы рассмотрели базовые принципы работы этого протокола. Сегодня перейдем к практике и настроим DHCP-сервер на базе Windows Server 2016.
Служба DHCP входит в состав Windows Server и является одной из серверных ролей, поэтому первое, что нам надо сделать — эту роль установить.
Установка
Открываем оснастку Server Manager, запускаем мастер добавления ролей и компонентов (Add Roles and Features Wizard) и выбираем тип установки «Role-based or feature-based installation».
Указываем сервер, на котором будет производиться установка.
В разделе «Server Roles» отмечаем отмечаем для установки пункт «DHCP Server».
В процессе установки мастер напомнит о необходимости заранее спланировать структуру сети, а также о том, что для работы DHCP на сервере должен быть хотя бы один статический IP адрес.
Проверяем список устанавливаемых компонентов и и запускаем установку.
По завершении установки не надо сразу закрывать окно мастера, поскольку в нем будет предложено произвести первоначальную настройку DHCP. Для этого надо кликнуть по ссылке «Complete DHCP configuration».
Если же вы поторопились и закрыли окно, то найти ссылку можно в главном окне Server Manager, кликнув на значок уведомления.
Переход по ссылке запускает еще один мастер первоначальной настройки DHCP (DHCP Post-Install configuration wizard). В процессе первоначальной настройки производится два действия:
1. Создание групп безопасности, которым будет разрешено управлять данным DHCP сервером. Всего создаются 2 группы:
DHCP Administrators — члены этой группы имеют полные права на DHCP сервер и могут изменять его настройки;
DHCP Users — членам этой группы даны права только на чтение. Они могут просматривать текущие настройки DHCP и статистику подключений.
2. Авторизация DHCP сервера в домене Active Directory. Авторизация необходима для того, чтобы предотвратить появление в сети ″левых″ DHCP серверов. Если сервер является членом домена, то при запуске служба DHCP обращается к AD для того, чтобы просмотреть список авторизованных серверов. Если она не обнаруживает в списке свой адрес, то считает себя неавторизованной и останавливает работу. Таким образом, пока сервер не пройдет авторизацию, служба DHCP на нем просто не запустится.
Сама процедура настройки заключается в том, чтобы указать учетные данные пользователя, от имени которого будет производится настройка, нажать кнопку «Commit»
и дождаться завершения процесса.
Все то же самое можно сделать с помощью PowerShell, нужно выполнить всего несколько команд. Установка роли DHCP:
Add-WindowsFeature -Name DHCP -IncludeManagementTools
Авторизация в AD. Здесь указываем DNS-имя сервера и IP-адрес, с которого он будет обслуживать клиентов:
Add-DhcpServerInDC -DnsName SRV1.test.local -IPAddress 10.0.0.1
Создание групп безопасности:
Add-DhcpSecurityGroup
Изменение состояния конфигурации сервера. Без этого он считается несконфигурированным и Server Manager будет постоянно выдавать предупреждение о необходимости настройки:
Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\ServerManager\Roles\12 -Name ConfigurationState -Value 2
Ну и в завершение необходимо рестартовать службу DHCP:
Restart-Service -Name DHCPServer -Force
Примечание. По умолчанию авторизовывать DHCP сервера в AD имеют право только члены группы Администраторы предприятия (Enterprise Admins). Поэтому пользователь, от имени которого производится настройка, должен входить в группу Enterprise Admins, иначе будет выдана ошибка с отказом в доступе.
Настройка
Для настройки сервера нам понадобится оснастка DHCP. Запустить ее можно из меню «Tools» в Server Manager, либо нажав клавиши Win+R и выполнив команду dhcpmgmt.msc.
Первым делом нам надо создать область (Scope) — диапазон IP-адресов, которые будут выдаваться клиентам. Поскольку наш DHCP-сервер будет выдавать только IPv4 адреса, то переходим к разделу IPv4, кликаем по нему правой клавишей мыши и в открывшемся меню выбираем пункт «New Scope».
Запускается очередной мастер.
Задаем имя области и, при необходимости, ее описание.
Затем указываем диапазон IP адресов и префикс\маску подсети. На всякий случай напомню, что маска определяет возможное количество адресов в сети, например сеть с префиксом 24 содержит 254 адреса. Кстати, вовсе не обязательно выделять под область все имеющиеся адреса, можно оставить десяток-другой на всякий случай, например для серверов или сетевых устройств.
При необходимости можно исключить один или несколько IP-адресов из создаваемой области, добавив их в исключения (Exclusions). Исключения могут потребоваться в том случае, если в указанной подсети уже имеются адреса, выданные вручную.
Здесь же можно задать задержку ответа DHCP-сервера — количество миллисекунд, которое выжидает сервер перед тем, как ответить на запрос клиента.
Примечание. В DHCP существует понятие раздельной области, когда одна область разбита на две части (обычно в соотношении 80/20) и обслуживается двумя DHCP-серверами. Такая конфигурация нужна для того, чтобы в случае недоступности первого сервера второй продолжал выдачу адресов из данной области. Но поскольку необходимо, чтобы все запросы по возможности обслуживал первый (основной) сервер, на втором выставляется задержка, чтобы он не смог ответить раньше первого.
На следующем шаге указываем время аренды (Lease Duration) — срок, на который клиенту выдается IP адрес. Выбор этого параметра напрямую зависит от особенностей обслуживаемой сети, так при наличии большого числа часто меняющихся клиентов (напр. публичная сеть) время аренды нужно сделать поменьше, а если сеть статична и редко изменяется (сеть предприятия), то время аренды можно увеличить. По умолчанию в Windows установлено 8 дней.
Теперь перейдем к настройке дополнительных параметров области.
Сначала указываем адрес шлюза по умолчанию (Default Gateway).
Затем вводим имя домена и добавляем DNS-сервера. Для добавления можно указать имя сервера и нажать «Resolve», либо указать IP адрес.
По аналогии с DNS можно добавить WINS сервера, если конечно они у вас есть.
Можем сразу активировать область, либо отложить это действие.
На этом настройка DHCP сервера завершена, остается только проверить работу сервера.
Посмотреть клиентов, получивших адреса из данной области, можно в разделе «Address Leases». В моей тестовой сети есть всего один клиент, который успешно получил свой IP адрес.
Ну и на всякий случай зайдем на клиента и проверим, что он успешно получил свой адрес.
Все настройки можно произвести с помощью PowerShell. Cоздаем область (неактивную):
Add-DhcpServerv4Scope -Name Workstations -StartRange 10.0.0.20 -EndRange 10.0.0.200 -SubnetMask 255.255.255.0 -LeaseDuration 00:30 -State InActive
Добавляем исключения:
Add-DhcpServerv4ExclusionRange -ScopeID 10.0.0.0 -StartRange 10.0.0.90 -EndRange 10.0.0.100
Добавляем доп. опции (DNS, gateway и т.п.):
Set-DhcpServerv4OptionValue -ScopeID 10.0.0.0 -DnsDomain test.local -DnsServer 10.0.0.1 -Router 10.0.0.1
И активируем область:
Set-DhcpServerv4Scope -ScopeID 10.0.0.0 -State Active
Посмотреть список клиентов можно также из консоли, командой:
Get-DhcpServerv4Lease -ScopeID 10.0.0.0
Стоит уточнить, что хотя в статье использовался Windows Server 2016, настройка для Windows Server 2008-2012 ничем особо не отличается.
На этом все, на сегодня. А в следующей статье мы рассмотрим развертывание двух DHCP-серверов в отказоустойчивой конфигурации.
Add-DhcpSecurityGroup — исправьте на Add-DhcpServerSecurityGroup (на скриншоте правильно, в тексте нет)