· 14 мин чтения

Настройка DHCP на Windows Server: шаг за шагом, без теории

Настройка DHCP на Windows Server: шаг за шагом, без теории

Привет! Это Евгений Семенов, на связи АйТи Фреш. Знаете, вместо того чтобы углубляться в бесконечные теории, я сразу перейду к делу. Хочу поделиться, как мы — я и вся наша команда — обычно поднимаем DHCP-серверы для наших клиентов. Удивительно, но даже в 2026-м, при всем изобилии корпоративных решений, старый добрый Windows DHCP для меня остаётся бесспорным фаворитом. Особенно он хорош для сетей от 20 до 1000 рабочих мест. Это же минимум головной боли с экзотикой, зато максимум бесшовной интеграции с Active Directory. А это, согласитесь, всегда ключевой момент.

Подготовка: что проверить перед установкой

Вот новичок, что первым делом делает? Сразу лезет в Server Manager и жмет «Install Roles». Мы так не работаем. У меня другой подход: сначала железный чек-лист, и только потом начинается сама установка. Я придерживаюсь этого принципа с 2015 года, и поверьте, это не просто так. Он помогает избежать, наверное, 9 из 10 типичных проблем. Просто попробуйте!

Достаточно пропустить какую-то одну, казалось бы, совсем крохотную галочку — и все, жди беды. Гарантированно! Например, вдруг перестает работать регистрация клиентов в DNS. Или, что куда страшнее, пользователи просто не могут авторизоваться в Active Directory. А это уже совсем другая история.

Установка роли

Я лично всегда за PowerShell. Да, это просто невероятно удобно! Представьте: вы один раз написали команду, сохранили ее в репозитории. А потом, если вдруг что-то пойдет не так или нужно быстро развернуть на резервный сервер, просто одной строкой запускаете — и готово. Это же сколько времени и нервов экономит! Просто бесценно.

Install-WindowsFeature -Name DHCP -IncludeManagementTools
Add-DhcpServerSecurityGroup
Restart-Service dhcpserver

# Авторизация в Active Directory
Add-DhcpServerInDC -DnsName "dhcp-srv01.corp.fresh.ru" `
  -IPAddress 10.10.0.20

# Завершение post-install
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ServerManager\Roles\12" `
  -Name ConfigurationState -Value 2

После всех настроек открываем консоль dhcpmgmt.msc. Если все ОК, увидите зеленый значок на сервере. А если значок вдруг красный, не паникуем: сразу идем в Event Viewer. Там, как правило, все подробно расписано. Прямым текстом, без загадок.

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

Что такое Scope? По сути, это тот самый диапазон IP-адресов, который наш DHCP-сервер будет раздавать устройствам в конкретной подсети. И тут без вариантов: я их создаю всегда только скриптом. Даже когда настраиваю все с нуля в первый раз, делаю это исключительно через скрипт. И вот почему:

Add-DhcpServerv4Scope `
  -Name "Main Office 10.10.10.0/24" `
  -StartRange 10.10.10.100 `
  -EndRange 10.10.10.240 `
  -SubnetMask 255.255.255.0 `
  -LeaseDuration (New-TimeSpan -Days 8) `
  -State Active

Set-DhcpServerv4OptionValue -ScopeId 10.10.10.0 `
  -Router 10.10.10.1 `
  -DnsServer 10.10.0.10, 10.10.0.11 `
  -DnsDomain "corp.fresh.ru"

Add-DhcpServerv4ExclusionRange -ScopeId 10.10.10.0 `
  -StartRange 10.10.10.2 -EndRange 10.10.10.99

Диапазон от .2 до .99 мы всегда резервируем под инфраструктуру: это все наши коммутаторы, принтеры, серверы, IP-камеры. Пользователям же достаются адреса от .100 до .240. А что насчет .241–.254? Их я оставляю пустыми — на случай, если вдруг понадобятся аварийные резервирования. Мало ли что может случиться, лучше быть готовым.

Опции и резервирования

Для большинства базовых задач нам, как правило, хватает всего трех опций. Это 003 — наш шлюз, 006 — конечно же, DNS-сервер, и 015 — имя домена. Если же у клиента есть телефония или используется PXE-загрузка, мы обязательно добавляем еще 066 и 067. Все эти опции, которые я собрал в табличке ниже, прошли боевое крещение и работают в 90% наших проектов. Проверено на собственной практике!

НомерНазначениеПример значения
003Router10.10.10.1
006DNS Servers10.10.0.10, 10.10.0.11
015DNS Domaincorp.fresh.ru
042NTP Servers10.10.0.10
066TFTP/Prov Serverftp.corp.fresh.ru
067Boot Filey000000000028.cfg

Что касается резервирований, их мы делаем по MAC-адресам. В основном это касается сетевого оборудования и, конечно же, всех принтеров. Так точно ничего не потеряется:

Add-DhcpServerv4Reservation -ScopeId 10.10.10.0 `
  -IPAddress 10.10.10.45 `
  -ClientId "00-23-AC-F4-11-02" `
  -Description "Kyocera TASKalfa 3253ci — Ресепшн"

DHCP Failover: отказоустойчивость без кластера

Failover в Windows Server — это удивительно простой, но при этом железобетонно надежный механизм. Два DHCP-сервера постоянно синхронизируют между собой Scope, все аренды и, конечно, опции. Если вдруг один из них выйдет из строя, второй моментально подхватывает работу. Клиенты вообще ничего не заметят. Никаких прерываний!

Add-DhcpServerv4Failover `
  -ComputerName "dhcp-srv01" `
  -PartnerServer "dhcp-srv02" `
  -Name "FO-Office" `
  -ScopeId 10.10.10.0 `
  -SharedSecret "Strong$ecret!42" `
  -LoadBalancePercent 50 `
  -MaxClientLeadTime (New-TimeSpan -Hours 1)

У нас в ITFresh, к слову, своя инфраструктура построена на восьми мощных серверах Dell Xeon Platinum 8280. И вот для DHCP-сервиса мы держим целую failover-пару: это две виртуальные машины, которые живут на разных физических нодах. Между ними — 40-гигабитный Mellanox, так что синхронизация происходит просто мгновенно. Никаких задержек!

Кейс: проектная организация в Бутово, 52 сотрудника

Вот, вспоминается один случай, это был Март 2025 года. К нам обратилось одно проектное бюро. У них 52 сотрудника, офис раскинулся на трех этажах, а DHCP-сервис — вы не поверите! — крутился на стареньком L3-коммутаторе HP 2920. И главная головная боль: каждые две-три недели принтеры внезапно получали новые IP-адреса. Сотрудники, конечно, были на грани. Постоянные жалобы: «1С не печатает накладные!» — вот такое слышали каждый день.

Что мы сделали за один рабочий день:

Итого, наши работы обошлись им в 38 000 рублей. Зато теперь принтеры уже 13 месяцев работают как часы, без единой смены IP-адреса! А еще, пока мы настраивали DHCP, клиент заодно согласовал с нами переход на современную телефонию. И знаете что? Все нужные DHCP-опции для этого у них уже оказались на месте. Удобно же!

Мониторинг и обслуживание

База DHCP, которая уютно расположилась по адресу C:\Windows\System32\dhcp, без должного ухода рано или поздно просто обрастет мусором. Чтобы избежать этого беспорядка, мы используем специальный сервисный скрипт. Он настроен на автоматический запуск раз в неделю, и вот он-то и наводит там порядок. Всегда чистота!

# Резервное копирование
Backup-DhcpServer -ComputerName "dhcp-srv01" `
  -Path "\\backup01\dhcp\dhcp-srv01-$(Get-Date -f yyyy-MM-dd)"

# Экспорт в XML — на случай перехода на новую версию
Export-DhcpServer -ComputerName "dhcp-srv01" `
  -File "\\backup01\dhcp\dhcp-srv01-full.xml" -Leases -Force

# Очистка устаревших лизов
Invoke-Command -ComputerName "dhcp-srv01" -ScriptBlock {
  Get-DhcpServerv4Scope | ForEach-Object {
    Get-DhcpServerv4Lease -ScopeId $_.ScopeId |
      Where-Object { $_.AddressState -eq "Declined" } |
      Remove-DhcpServerv4Lease
  }
}

И, конечно, куда без мониторинга! Мы используем Zabbix, он отслеживает число активных аренд и, что важно, количество свободных IP-адресов в каждом Scope. Как только занятость превышает 85%, дежурный администратор тут же получает алерт в Telegram. Это позволяет нам реагировать заранее, до того, как клиенты начнут испытывать проблемы с получением адресов. Всегда держим руку на пульсе.

Частые ошибки и их лечение

Настроим DHCP и DNS в вашем офисе

Мы готовы провести аудит вашей сетевой адресации, разработать сегментацию VLAN, развернуть DHCP Windows Server с Failover, подключить мониторинг и взять на себя полное сопровождение. Работаем по Москве и области, а наше SLA – до 2 часов.

Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш

FAQ — частые вопросы по DHCP Windows Server

Сколько памяти и CPU нужно DHCP-серверу?
Для офиса до 200 клиентов хватает 2 vCPU и 2 ГБ RAM. База лизов почти не ест ресурсы, главное — SSD под system32\dhcp.
Почему клиенты получают адреса из старого диапазона?
Скорее всего, у них ещё живая аренда. Сделайте ipconfig /release + /renew, проверьте ip helper-address на L3-коммутаторах.
Можно ли собрать Failover из разных версий Windows Server?
Microsoft поддерживает 2012 R2 и новее, но я советую обе ноды одного поколения. Меньше головной боли.
Нужно ли открывать порты DHCP в firewall?
UDP 67/68 открываются автоматически. Для Failover добавьте TCP 647 между парой серверов.
Как выдать разные DNS для гостевой и рабочей сети?
Разные scope с разными значениями опции 006. Гостевой — публичный DNS, рабочий — внутренний DC.

Подпишитесь на рассылку ITfresh

Каждую неделю мы готовим для вас порцию по-настоящему полезного контента. Это практические гайды, которые пригодятся и руководителю IT, и сисадмину. Что внутри? Всегда свежие материалы по безопасности, тонкости работы с 1С, опыт миграций, секреты надёжных бэкапов и, конечно, лайфхаки, выловленные прямо из нашей повседневной работы над реальными проектами. Не пропустите!

Реквизиты оператора персональных данных

ООО «АЙТИ-ФРЕШ», ИНН 7719418495, КПП 771901001. Юридический адрес: 105523, г. Москва, Щёлковское шоссе, д. 92, корп. 7. Контакт: info@itfresh.ru, +7 903 729-62-41. Оператор обрабатывает e-mail подписчика в целях рассылки информационных и рекламных материалов до момента отзыва согласия.