DHCP нужен, чтобы автоматически выдавать устройствам в сети IP-адреса и параметры: маску подсети, шлюз, DNS-серверы. В итоге меньше ручной работы, меньше ошибок и проще подключать новые устройства.

Что подготовить до установки

Перед тем как начинать, соберите базу и проверьте пару вещей:

  • Статический IPv4-адрес для вашего серверa (адрес, который не меняется).
  • Сеть и диапазон для выдачи (scope): стартовый и конечный IP, маска подсети.
  • Что раздаём дополнительно: шлюз по умолчанию, DNS-сервера, (опционально) WINS.
  • Учетка с правами администратора.

Коротко про роли и сценарии

На Windows Server DHCP ставится как роль DHCP-сервера. Дальше всё настраивается через оснастку DHCP.

Если сервер в домене Active Directory, DHCP обязательно нужно авторизовать в AD. Без авторизации DHCP будет работать некорректно (или вообще не будет раздавать адреса клиентам).

Установка DHCP-сервера (Windows Server 2012 R2)

  1. Откройте Диспетчер серверов.
  2. Выберите Добавить роли и компоненты.
  3. В мастере установки оставьте Установка ролей или компонентов.
  4. Укажите сервер (или VHD, если ставите так).
  5. Отметьте роль DHCP-сервер.
  6. Согласитесь на Добавить компоненты (средства управления DHCP).
  7. Подтвердите установку и дождитесь завершения.
  8. Если мастер предложит завершить предварительную настройку и создать группы делегирования - выполните.

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

Авторизация DHCP-сервера в Active Directory (если домен есть)

Если вы в домене, выполните авторизацию DHCP в AD. Обычно это делают один раз, после установки роли.

В PowerShell (от админа) выполните:

Add-DhcpServerInDC -DnsName DHCP1.corp.contoso.com -IPAddress 10.0.0.3

Проверка:

Get-DhcpServerInDC

Создание области (scope) для раздачи адресов

  1. Откройте оснастку DHCP:
  2. Диспетчер серверов -> вкладка DHCP
  3. выберите сервер
  4. Диспетчер DHCP
  5. Раскройте дерево IPv4.
  6. ПКМ -> Создать область.
  7. В мастере:
  8. задайте имя и (по желанию) описание области
  9. укажите диапазон: Start IP / End IP и маску подсети
  10. добавьте исключения (адреса, которые не раздаём)
  11. настройте срок аренды (Lease duration)
  12. ответьте, нужно ли задать основные параметры сейчас (обычно да)
    • шлюз по умолчанию
    • DNS-серверы
    • WINS - только если реально используете
  13. включите область (активировать) — Да
  14. Завершите работу мастера.

После этого клиенты из нужной сети начнут получать настройки автоматически.

Настройка клиентов

На клиентских Windows:
1. Откройте свойства TCP/IP (IPv4).
2. Выберите Получить IP-адрес автоматически.
3. Переподключите сеть (или перезагрузите клиент).

Клиент должен получить IP из созданного диапазона. На стороне серверa появятся записи выданных адресов в оснастке DHCP (например, в списках арендованных адресов).

Проверка, что всё работает

Проверьте по месту:

  • область активна
  • в параметрах заданы шлюз и DNS
  • исключения не “съели” весь нужный диапазон
  • у клиента корректно включено получение IP автоматически
  • у серверa — статический IP
  • в домене — DHCP авторизован

Если нужно много диапазонов: настройка через PowerShell

Когда диапазонов много, ручная работа быстро превращается в боль. В Windows Server 2012 R2 это удобнее делать через командлеты: создать области, исключения, опции и резервирование.

Пример: создать много областей и исключений (идея)

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

$Vlans = 500..900
$DHCP_Server="dc0"
$DHCP_Server2="dc1"

$DHCP_Scopers = $Vlans | % {
  Add-DhcpServerv4Scope -ComputerName $DHCP_Server `
    -Name "Net VLAN $($_)" `
    -LeaseDuration 7.00:00:00 -PassThru `
    -StartRange "172.30.$($_—200).1" `
    -EndRange "172.30.$($_—200).254" `
    -SubnetMask "255.255.255.0"
}

$DHCP_IdScopers = $DHCP_Scopers | Select -ExpandProperty ScopeId

$DHCP_Scopers | % {
  Set-DhcpServerv4OptionValue -ComputerName $DHCP_Server `
    -ScopeId $_.ScopeId `
    -Router $_.StartRange.IPAddressToString
}

$DHCP_Scopers = $Vlans | % {
  Add-DhcpServerv4ExclusionRange -ComputerName $DHCP_Server -ScopeId "172.30.$($_—200).0" `
    -StartRange "172.30.$($_—200).1" -EndRange "172.30.$($_—200).32"

  Add-DhcpServerv4ExclusionRange -ComputerName $DHCP_Server -ScopeId "172.30.$($_—200).0" `
    -StartRange "172.30.$($_—200).128" -EndRange "172.30.$($_—200).254"
}

Репликация и отказоустойчивость (Failover)

Для отказоустойчивости можно настроить партнерство DHCP между двумя серверaми. Это делается через failover-командлеты.

Пример создания партнерства (балансировка/репликация):

Add-DhcpServerv4Failover -ScopeId $DHCP_IdScopers -ComputerName $DHCP_Server -Force `
  -Name "$($DHCP_Server)—$($DHCP_Server2)" `
  -PartnerServer $DHCP_Server2 `
  -SharedSecret "ajhvekf"

Также есть команды, чтобы добавить области в уже созданные отношения, и чтобы принудительно запустить репликацию изменений.

Таблица: что где настроить

Задача Где делается Что указывать
Установка role DHCP Диспетчер серверов Роль DHCP-сервер + средства администрирования
Авторизация в домене PowerShell / AD IP и DNS серверa DHCP (Add-DhcpServerInDC)
Раздача адресов DHCP оснастка (scope) Start/End IP, маска, исключения, срок аренды
Базовые параметры сети В мастере области или через опции Шлюз, DNS-сервера, WINS (если нужен)
Проверка у клиентов На клиентах Windows Получить IP автоматически (DHCP)
Масштабирование на много диапазонов PowerShell Add-DhcpServerv4Scope, Set-DhcpServerv4OptionValue, Add-DhcpServerv4ExclusionRange
Высокая доступность DHCP failover Режим, партнер, секрет, синхронизация

Итог

Для установка DHCP-сервера на Windows Server 2012 R2 обычно хватает сценария:
1) поставить роль DHCP-сервера,
2) (если домен) авторизовать сервер в AD,
3) создать и активировать область с диапазоном и параметрами,
4) включить автоматическое получение IP на клиентах.

Если диапазонов много, PowerShell сильно ускоряет настройка, а для высокой доступности пригодится windows failover через партнерство DHCP.

Источники: Microsoft Learn (quickstart по DHCP на Windows Server), материалы по установке/настройке DHCP на Windows Server 2012 R2 из базы знаний и руководств сообщества.