- Что подготовить до установки
- Установка DHCP-сервера (Windows Server 2012 R2)
- Авторизация DHCP-сервера в Active Directory (если домен есть)
- Создание области (scope) для раздачи адресов
- Настройка клиентов
- Проверка, что всё работает
- Если нужно много диапазонов: настройка через PowerShell
- Таблица: что где настроить
- Итог
DHCP нужен, чтобы автоматически выдавать устройствам в сети IP-адреса и параметры: маску подсети, шлюз, DNS-серверы. В итоге меньше ручной работы, меньше ошибок и проще подключать новые устройства.
Что подготовить до установки
Перед тем как начинать, соберите базу и проверьте пару вещей:
- Статический IPv4-адрес для вашего серверa (адрес, который не меняется).
- Сеть и диапазон для выдачи (scope): стартовый и конечный IP, маска подсети.
- Что раздаём дополнительно: шлюз по умолчанию, DNS-сервера, (опционально) WINS.
- Учетка с правами администратора.
Коротко про роли и сценарии
На Windows Server DHCP ставится как роль DHCP-сервера. Дальше всё настраивается через оснастку DHCP.
Если сервер в домене Active Directory, DHCP обязательно нужно авторизовать в AD. Без авторизации DHCP будет работать некорректно (или вообще не будет раздавать адреса клиентам).
Установка DHCP-сервера (Windows Server 2012 R2)
- Откройте Диспетчер серверов.
- Выберите Добавить роли и компоненты.
- В мастере установки оставьте Установка ролей или компонентов.
- Укажите сервер (или VHD, если ставите так).
- Отметьте роль DHCP-сервер.
- Согласитесь на Добавить компоненты (средства управления DHCP).
- Подтвердите установку и дождитесь завершения.
- Если мастер предложит завершить предварительную настройку и создать группы делегирования - выполните.
После установки роль появится в Диспетчере серверов, а DHCP можно будет открыть через соответствующую оснастку.
Авторизация DHCP-сервера в Active Directory (если домен есть)
Если вы в домене, выполните авторизацию DHCP в AD. Обычно это делают один раз, после установки роли.
В PowerShell (от админа) выполните:
Add-DhcpServerInDC -DnsName DHCP1.corp.contoso.com -IPAddress 10.0.0.3
Проверка:
Get-DhcpServerInDC
Создание области (scope) для раздачи адресов
- Откройте оснастку DHCP:
- Диспетчер серверов -> вкладка DHCP
- выберите сервер
- Диспетчер DHCP
- Раскройте дерево IPv4.
- ПКМ -> Создать область.
- В мастере:
- задайте имя и (по желанию) описание области
- укажите диапазон: Start IP / End IP и маску подсети
- добавьте исключения (адреса, которые не раздаём)
- настройте срок аренды (Lease duration)
- ответьте, нужно ли задать основные параметры сейчас (обычно да)
- шлюз по умолчанию
- DNS-серверы
- WINS - только если реально используете
- включите область (активировать) — Да
- Завершите работу мастера.
После этого клиенты из нужной сети начнут получать настройки автоматически.
Настройка клиентов
На клиентских 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 из базы знаний и руководств сообщества.