Event ID 4005 DNS: ошибка записи обновления в каталог Active Directory
Симптомы ошибки записи DNS (Event ID 4005)
В журнале DNS Server появляется ошибка: Event ID 4005: The DNS server was unable to update the Active Directory zone [Имя_зоны]. The update was rejected by the directory service.
| Симптом | Причина |
|---|---|
| Клиент получает статус REFUSED | DNS-сервер отклоняет Dynamic Update запрос клиента |
| Отказ создания SRV записей Kerberos/LDAP | Служба Netlogon не может зарегистрировать критические служебные записи |
| Ошибки доступа Access Denied в LDAP | Отсутствие прав Write Property на объект зоны |
Пошаговое решение ошибки Event ID 4005
- Восстановите системные права на зону в Active Directory:
# Восстановление стандартных прав доступа через утилиту DnsCmd:
dnscmd . /ResetSecurity "domain.local"- Проверьте разрешения безопасности для учетных записей компьютеров:
Откройте dnsmgmt.msc > Свойства зоны > Вкладка «Безопасность» (Security). Убедитесь, что группа Authenticated Users имеет разрешения на Create all child objects (Создание дочерних объектов).
- Проверьте наличие места на системном диске контроллера домена: переполнение диска с базой
ntds.ditблокирует любые операции записи. - Перезапустите Netlogon для повторной проверки регистрации записей:
# Перезапуск службы Netlogon:
Restart-Service -Name Netlogon -Force
# Проверка регистрации служебных SRV записей контроллера:
Resolve-DnsName -Name _ldap._tcp.dc._msdcs.domain.localСовет: Если на сервере включена опция «Запретить рекурсию» (Disable Recursion), убедитесь, что это не мешает перенаправлению запросов динамического обновления на мастер-сервер зоны.
Частые вопросы (FAQ)
Чем отличается Event ID 4005 от Event ID 4003?
4003 обычно указывает на недоступность каталога или таймаут связи, а 4005 — на явный отказ в правах доступа (Access Denied / Rejected) со стороны Active Directory.
Почему контроллер домена не может зарегистрировать свои SRV записи?
Если права на зону были изменены вручную и группа 'Enterprise Domain Controllers' потеряла право на запись в зону _msdcs.
Как проверить права на контейнер MicrosoftDNS через PowerShell?
Используйте командлет: (Get-Acl "AD:CN=MicrosoftDNS,DC=DomainDnsZones,DC=domain,DC=local").Access.
Как принудительно заставить Netlogon пересоздать файл netlogon.dns?
Удалите файл C:\Windows\System32\config\netlogon.dnb и перезапустите службу Netlogon.