После установки июньских кумулятивных обновлений безопасности серверы с ролью DHCP начали массово сыпаться: служба DHCPServer останавливается уже через 20–50 секунд после запуска, клиенты теряют сеть и хватают адреса 169.254.x.x. Microsoft подтвердила проблему — под удар попали все поддерживаемые версии Windows Server.
Симптомы
- Клиентские устройства получают адреса вида
169.254.x.x(APIPA) — признак того, что DHCP недоступен - Служба
DHCPServerсамопроизвольно останавливается вскоре после запуска - Ручной перезапуск службы помогает на несколько секунд, затем снова падает
- Пользователи жалуются на отсутствие сети, невозможность войти в корпоративные ресурсы, VPN
- В Event Viewer → Windows Logs → System появляются события от источника
Microsoft-Windows-DHCP-Server - В Event Viewer → Applications and Services Logs → Microsoft → Windows → DHCP-Server — ошибки при инициализации привязок
Окружение
| Компонент | Значение |
|-----------|----------|
| ОС | Windows Server 2016, 2019, 2022, 2025 |
| Роль | DHCP Server |
| KB (Server 2016) | KB5061010 |
| KB (Server 2019) | KB5060531 |
| KB (Server 2022) | KB5060526 |
| KB (Server 2025) | KB5060842 |
| Дата выхода | Июньский Patch Tuesday |
Причина
Регрессия была внесена в состав июньских cumulative updates. Microsoft официально признала: «служба DHCP Server может нестабильно работать после установки данного обновления безопасности, что нарушает процесс обновления IP-адресов клиентов». Точная техническая причина не раскрыта, но проблема воспроизводится на всех версиях — от 2016 до 2025. Исправляющий патч готовится к выпуску.
Диагностика
1. Проверить статус службы DHCP:
Get-Service -Name DHCPServer | Select-Object Name, Status, StartType
Если Status равен Stopped — служба уже упала.
2. Найти проблемное обновление на сервере:
$kbs = @("KB5061010","KB5060531","KB5060526","KB5060842")
Get-HotFix | Where-Object { $_.HotFixID -in $kbs } |
Select-Object HotFixID, Description, InstalledOn
Если команда вернула строку с одним из этих KB — именно он и является источником проблемы.
3. Посмотреть последние события DHCP-сервера:
Get-WinEvent -LogName "DhcpAdminEvents" -MaxEvents 30 |
Select-Object TimeCreated, Id, LevelDisplayName, Message |
Format-List
4. Проверить логи DHCP-аудита:
$logDir = "$env:SystemRoot\System32\dhcp"
Get-ChildItem $logDir -Filter "DhcpSrvLog*.log" |
Sort-Object LastWriteTime -Descending |
Select-Object -First 1 | Get-Content -Tail 40
5. Проверить клиента — что реально получил от DHCP:
ipconfig /all
Если в поле IPv4 Address видишь 169.254.x.x — клиент не получил адрес от сервера.
Решение
Вариант 1 (быстрый): Официальный воркэраунд от Microsoft
Microsoft рекомендует после каждой перезагрузки сервера выполнять:
Restart-NetAdapter *
Эта команда перезапускает все сетевые адаптеры, что вынуждает DHCP-службу переинициализировать привязки. После этого служба продолжает работать стабильно до следующей перезагрузки.
⚠️ На время выполнения Restart-NetAdapter * сервер на несколько секунд теряет сетевую связность. Планируй запуск в минимальный нагрузочный период.
Чтобы не делать это вручную при каждом старте — добавь автозапуск через Планировщик задач:
$action = New-ScheduledTaskAction -Execute 'powershell.exe' `
-Argument '-NonInteractive -WindowStyle Hidden -Command "Start-Sleep 10; Restart-NetAdapter *"'
$trigger = New-ScheduledTaskTrigger -AtStartup
Register-ScheduledTask -TaskName "DHCPAdapterRestart" `
-Action $action -Trigger $trigger `
-RunLevel Highest -Force
✅ После выполненияRestart-NetAdapter *и ожидания 10–15 секунд проверь статус:Get-Service DHCPServerдолжен показатьRunning.
Вариант 2 (надёжный): Откат проблемного обновления
Это полностью устраняет проблему до выхода официального исправления.
⚠️ Откат снижает защиту сервера. Временно усиль сетевую изоляцию: ограничь доступ к серверу по портам, усиль мониторинг.
- Определи KB-номер для своей версии ОС:
- Удали обновление (от имени администратора):
# Замени номер на актуальный для твоей ОС
wusa /uninstall /kb:5060526 /quiet /norestart
- Перезагрузи сервер:
Restart-Computer -Force
- Убедись, что KB удалён:
Get-HotFix -Id KB5060526
# Пустой результат = обновление удалено
❌ Не откатывай обновления на всех DHCP-серверах одновременно. Если в инфраструктуре несколько DHCP-серверов — откатывай поочерёдно, проверяя работоспособность после каждого.
Вариант 3: Экспорт и перенос DHCP-роли
Если в инфраструктуре есть сервер без проблемного обновления — временно перенеси роль:
# Экспорт конфигурации и аренд с текущего сервера
Export-DhcpServer -ComputerName "dhcp-old" `
-File "C:\dhcp-backup.xml" -Leases -Force
# Импорт на новый сервер
Import-DhcpServer -ComputerName "dhcp-new" `
-File "C:\dhcp-backup.xml" -Leases `
-BackupPath "C:\dhcp-import-bak"
Проверка
После применения любого из вариантов:
# Статус службы
Get-Service DHCPServer
# Активные аренды (укажи свой scope-адрес)
Get-DhcpServerv4Lease -ScopeId "192.168.1.0" | Select-Object -First 10
На клиентской машине:
ipconfig /release
ipconfig /renew
ipconfig /all
✅ Если клиент получил адрес из нужного диапазона (не169.254.x.x), а полеDHCP Serverсодержит IP твоего сервера — всё работает корректно.
ℹ️ Следи за обновлениями на официальной странице Microsoft: Windows Server 2022 Known Issues и Windows Server 2025 Known Issues. Microsoft обещает выпустить standalone-патч, устраняющий регрессию без необходимости откатывать обновление безопасности целиком.
Итог
Июньский Patch Tuesday сломал DHCP Server на всех версиях Windows Server 2016–2025: служба падает через 20–50 секунд после старта, клиенты уходят на APIPA. Официальный быстрый воркэраунд от Microsoft — Restart-NetAdapter * после каждой перезагрузки (удобно автоматизировать через Планировщик задач). Для полного устранения — откати проблемный KB через wusa /uninstall и жди официального исправления.