В этой статье рассмотрим полный процесс установки и настройки DHCP сервера на Windows Server 2019. Мы подробно опишем процесс установки роли DHCP, создание и настройку областей, а также резервирование статических IP-адресов. Покажем настройку DHCP через графическую консоль и PowerShell. Протокол DHCP (Dynamic Host Configuration Protocol) используется для автоматического назначения сетевых параметров, таких как IP-адреса, маска подсети, шлюз и DNS сервера. DHCP помогает централизованно управлять настройками сетевых устройств и избегать конфликта IP-адресов в сети.
Данная инструкция подойдет для Windows Server 2012 R2, Windows Server 2016, Windows Server 2019 и Windows Server 2022.
Приобрести Windows Server можно у нас в магазине от 1190 ₽.
Скачать оригинальные дистрибутивы Windows Server можно в нашем каталоге.
Для начала, установим роль DHCP на сервере Windows Server 2019. В данном примере сервер будет иметь статический IP-адрес 192.168.13.4. Важно использовать статический IP для сервера с ролью DHCP, чтобы избежать проблем при выдаче адресов клиентам.
Процесс установки можно выполнить как через графическую консоль, так и через PowerShell. Важно, чтобы сервер имел статический IP-адрес перед установкой роли DHCP, иначе появится предупреждение:
WARNING: The following recommended condition is not met for DHCP: No static IP addresses were found on this computer.
1. Откройте консоль Server Manager, перейдите в раздел Add Roles and Features, выберите DHCP Server в списке ролей.
2. После завершения установки выполните Post-Deployment Configuration — щелкните по уведомлению и выберите Complete DHCP configuration.
3. На экране авторизации необходимо предоставить права учетной записи для авторизации сервера в Active Directory.
Если у вас нет прав на авторизацию DHCP в AD, вы можете указать, чтобы ваш DHCP сервер запускался без проверки авторизации в домене:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\DHCPServer\Parameters" -Name DisableRogueDetection -Value 1 -Force
4. Установка роли через PowerShell выполняется командой:
Install-WindowsFeature DHCP –IncludeManagementTools
5. Чтобы убедиться, что роль установлена корректно, используйте:
Get-WindowsFeature -Name *DHCP* | Where Installed
6. Авторизуйте DHCP сервер в Active Directory (укажите DNS имя сервера и IP адрес, который будет использоваться DHCP клиентами):
Add-DhcpServerInDC -DnsName hq-dc01.contoso.com -IPAddress 192.168.13.4
7. Создайте локальные групп безопасности DHCP:
Add-DhcpServerSecurityGroup
8. После этого можно завершить настройку роли, выполнив команду:
Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\ServerManager\Roles\12 -Name ConfigurationState -Value 2
9. Перезапустите службу DHCP:
Restart-Service -Name DHCPServer -Force
База данных и логи DHCP сервера по умолчанию находятся в каталоге %systemroot%\system32\dhcp. Важные файлы:
— dhcp.mdb — файл базы данных DHCP;
— j50.log — транзакционный журнал;
— j50.chk — файл контрольной точки;
— tmp.edb — временный рабочий файл.
После установки роли DHCP необходимо создать одну или несколько областей (Scopes). Область определяет диапазон IP-адресов, которые сервер будет выдавать клиентам, а также другие сетевые настройки.
1. Откройте консоль dhcpmgmt.msc, разверните сервер и выберите IPv4.
2. Щелкните правой кнопкой мыши и выберите New Scope.
3. Укажите название области, например в нашем случае это CetralOffice.
4. Установите диапазон IP-адресов. Например, для сети 192.168.100.0/24 можно указать диапазон 192.168.100.50 — 192.168.100.250.
5. Установите параметры исключений, если необходимо. Например, исключите диапазон 192.168.100.1 — 192.168.100.10, чтобы эти адреса не выдавались.
6. Укажите длительность аренды IP-адреса (по умолчанию 8 дней).
7. Укажите, что вы хотите настроить дополнительный параметры DHCP области.
8. Укажите IP-адрес шлюза, который должен назначаться клиентам (например, 192.168.100.1).
9. Затем укажите имя домена и адреса DNS серверов, которые будут назначены клиентам DHCP.
10. После завершения активируйте область.
DHCP сервер может выдавать различные параметры, такие как:
— 003 Router — шлюз;
— 006 DNS Server — DNS серверы;
— 015 DNS Domain Name — домен.
Эти параметры можно настроить как для каждой области (Scope Options), так и глобально для сервера (Server Options). Глобальные параметры будут применяться ко всем областям, но их можно переопределить для каждой области отдельно.
По умолчанию DHCP сервер выдает динамические адреса, но для определенных устройств можно зарезервировать статические адреса. Это полезно для сетевых принтеров и других устройств, которым необходим постоянный IP-адрес.
1. Откройте консоль DHCP, перейдите в раздел Reservations.
2. Выберите New Reservation.
3. Укажите IP-адрес, MAC-адрес устройства и его имя.
MAC-адрес устройства можно узнать с помощью команды:
ipconfig /all
Или через PowerShell:
Get-NetAdapter | Select-Object Name, MacAddress
4. Чтобы зарезервировать текущий динамический адрес, найдите его в Address Leases и выберите Add to Reservation.
Все настройки DHCP сервера можно выполнить через PowerShell с помощью модуля DHCPServer. Для начала необходимо импортировать модуль:
Import-Module DHCPServer
1. Для отображения списка доступных команд:
Get-Command -Module DHCPServer
— Следующая команда выведет список авторизованных DHCP серверов в Active Directory:
Get-DhcpServerInDC
— Вывести список DHCP областей на указанном сервере:
Get-DhcpServerv4Scope –ComputerName msk-dhcp1
— Если нужно показать все параметры области (Delay, Description, Name и т.д.):
Get-DhcpServerv4Scope –ComputerName msk-dhcp1| FL *
— Если нужно отобразить данные о IPv6 областях:
Get-DHCPServerv6Scope
— Получить настройки для конкретной области:
Get-DhcpServerv4Scope –ComputerName msk-dhcp1 –ScopeID 10.10.1.0
2. Создание новой области:
Add-DhcpServerv4Scope -Name “Branch1 192.168.113.0” -StartRange 192.168.113.50 -EndRange 192.168.113.250 -SubnetMask 255.255.255.0 -State InActive
3. Настроить следующие параметры DHCP сервера: DNS сервер, домен и адрес шлюза по-умолчанию:
Set-DhcpServerv4OptionValue -ScopeID 192.168.113.0 -DnsDomain contoso.com -DnsServer 192.168.13.4 -Router 192.168.113.1
4. Добавление исключений:
Add-DhcpServerv4ExclusionRange -ScopeID 192.168.113.0 -StartRange 192.168.113.90 -EndRange 192.168.113.100
5. Активировать область можно с помощью команды:
Set-DhcpServerv4Scope -ScopeID 192.168.113.0 -State Active
Для удобства можно использовать хеш-таблицу аргументов:
$HashArgs = @{
'Name' = 'EKB Office Scope';
'Description' = 'workstations';
'StartRange' = '192.168.140.10';
'EndRange' = '192.168.140.200';
'SubnetMask' = '255.255.255.0';
'State' = 'Active';
'LeaseDuration' = '1.00:00:00';
}
Add-DhcpServerv4Scope @HashArgs
Опции для DHCP сервера добавляется так (к примеру, WPAD):
Add-DhcpServerv4OptionDefinition -ComputerName msk-dhcp1 -Name WPAD -OptionId 252 -Type String
Вывести список настроенных опций DHCP сервера можно так:
Get-DHCPServerv4OptionValue -ComputerName msk-dhcp1 | Format-List
Выведем список настроенных параметров зоны:
Get-DHCPServerv4OptionValue -ComputerName msk-dhcp1 -ScopeId 10.10.1.0 | Format-List
Показать текущий список арендованных адресов для области 10.10.1.0:
Get-DHCPServerv4Lease -ScopeId 10.10.1.0 -ComputerName msk-dhcp1
Создать DHCP резервацию для клиента, которому назначен динамический IP адрес 10.10.1.88 (конвертировать выданный адрес в зарезервированный):
Get-DhcpServerv4Lease -ComputerName msk-dhcp1 -IPAddress 10.10.1.88| Add-DhcpServerv4Reservation -ComputerName msk-dhcp1
Можно массово зарезервировать IP адреса для компьютеров по списку из csv файла. Для этого создайте текстовый файл в формате:
ScopeId,IPAddress,Name,ClientId,Description
10.10.1.0,10.10.1.88,Client1,ba-ab-5c-3d-4e-6f,Reservation PC-msk-s1
10.10.1.0,10.10.1.89,Client2,ba-ab-5c-5d-2e-3f,Reservation PC-msk-s2Сохраните файл с именем c:\dhcp\DHCPReservations.csv и запустите следующую команду, которая импортирует данные из csv файла и создаст DHCP резервации для клиентов:
Import-Csv –Path c:\dhcp\DHCPReservations.csv | Add-DhcpServerv4Reservation -ComputerName msk-dhcp1
Отключить область на DHCP сервере:
Set-DhcpServerv4Scope -ComputerName msk-dhcp1-ScopeId 10.10.1.0-State InActive
Удалить область с DHCP сервера:
Remove-DHCPServerv4Scope -ComputerName msk-dhcp1-ScopeId 10.10.1.0 -Force
Возможно получить статистику DHCP сервера (количество областей, резерваций, процент использования адресов и пр.):
Get-DhcpServerv4Statistics -ComputerName msk-dhcp1
Для регулярного резервного копирования конфигурации DHCP в указанный XML файл, можно использовать следующую команду:
Export-DhcpServer -ComputerName msk-dhcp1 -File C:\dhcp\dhcp-export.xml
В дальнейшем эти настройки DHCP сервера можно импортировать (перенести) на другой DHCP сервер:
Import-DhcpServer -ComputerName msk-dhcp2 -File C:\dhcp\dhcp-export.xml -BackupPath C:\dhcpbackup\
Настройка DHCP сервера на Windows Server 2019 позволяет автоматизировать управление IP-адресами в сети и облегчает централизованное управление сетевыми устройствами. Мы рассмотрели как установку и настройку через графический интерфейс, так и работу с DHCP с помощью PowerShell, что позволяет более гибко управлять сервером.