ad._dns-сервер_не_запускается_2008_r2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
ad._dns-сервер_не_запускается_2008_r2 [2025/01/20 09:05] – created jpad._dns-сервер_не_запускается_2008_r2 [2025/01/20 09:18] (current) jp
Line 1: Line 1:
 ===== AD. DNS-сервер не запускается (2008 R2) ===== ===== AD. DNS-сервер не запускается (2008 R2) =====
  
-Представим, что мы создали и включили в качестве контроллера домена новый сервер под управлением Windows Server 2008 R2. Active Directory работает нормально и репликация с новым контроллером домена происходит успешно. Однако, DNS-сервер на новом КД отказывается запускаться со следующей ошибкой:+Представим, что мы создали и включили в качестве контроллера домена новый сервер под управлением //Windows Server 2008 R2////Active Directory// работает нормально и репликация с новым контроллером домена происходит успешно. Однако, DNS-сервер на новом КД отказывается запускаться со следующей ошибкой, которую можно найти в разделе логов //приложения// в event log:
  
 <WRAP prewrap> <WRAP prewrap>
Line 17: Line 17:
 </WRAP> </WRAP>
  
- +При этом, в логе может отображаться о том, что DNS ожидает завершения синхронизации //AD DS//.  
 + 
 +<WRAP prewrap> 
 +<code> 
 +DNS-сервер ожидает от доменных служб Active Directory (AD DS) сигнала о том, что первичная синхронизация каталога завершена. Службу DNS-сервера невозможно запустить до завершения первичной синхронизации, так как критические данные DNS могут быть еще не реплицированными на этот контроллер домена. Если журнал событий AD DS показывает, что имеются проблемы с разрешением DNS-имен в адреса, рассмотрите возможность добавления IP-адреса другого DNS-сервера для этого домена в список DNS-серверов в свойствах протокола IP этого компьютера. Такое событие будет записываться в журнал каждые две минуты, пока служба AD DS не сообщит об успешном завершении первичной синхронизации. 
 +</code> 
 +</WRAP> 
 + 
 +Это событие может сбить нас с толку. Оно не имеет отношения к ошибке запуска //DNS//. Если оно пишется в лог один раз после рестарта - это нормальное событие, т.к. //DNS// ожидает синхронизации //AD//.  
 + 
 +Причиной проблем с запуском DNS-сервера, работающего под управлением //Windows Server 2008 R2// - скорее всего является наличие проблемных записей //CNAME// в рутовых зонах. Данная проблема хорошо описана в документации //Microsoft//, которую можно найти по ссылке:  
 + 
 +https://support.microsoft.com/en-us/topic/loading-dns-zones-fails-on-a-windows-server-2008-r2-based-dns-server-9ff164aa-5c2d-bf37-99a1-c1e2ad434897 
 + 
 +Там же приведен PS-скрипт поиска проблемных записей, который можно запустить, чтобы их обнаружить.  
 + 
 +<WRAP prewrap> 
 +<code> 
 +$count = 0 
 +$var = get-wmiobject -query "select * from win32_service where name = 'dns'"  
 + if ($var -ne $null) 
 + { 
 +     if ($var.state.tolower() -eq "running"
 +     { 
 +         [array] $global:badcnamedomains = $null 
 +         $var = get-wmiobject -namespace "root\microsoftdns" -query "select * from microsoftdns_zone" 
 +         if ($var -ne $null) 
 +         {  
 +             foreach ($var2 in $var) 
 +             { 
 +                 $query = "select * from microsoftdns_cnametype where containername = '" + $var2.name + "'"  
 +                 $var3 = get-wmiobject -namespace "root\microsoftdns" -query $query | where {$_.ownername -eq $var2.name} 
 +                 if ($var3 -ne $null) 
 +                 { 
 +                     $count += 1 
 +                     $global:badcnamedomains += $var3.domainname 
 +                 } 
 +             } 
 +         } 
 +         else 
 +         { 
 +             write-host "No zones returned" 
 +         } 
 +     } 
 +     else 
 +     { 
 +         Write-Host "DNS Service is not running" 
 +         break; 
 +     } 
 + } 
 + 
 +if ($count -gt 0) 
 + { 
 +     write-host "Total number of zones found: $count" 
 +     write-host "The zones are:" 
 +     write-host $global:badcnamedomains  
 + } 
 + elseif ($count -eq 0) 
 + { 
 +     write-host "No zones found with the issue" 
 + } 
 + $count = $null 
 + $global:badcnamedomains = $null 
 +</code> 
 +</WRAP> 
 + 
 +Если скрипт обнаружит такие записи - их придётся удалить, чтобы решить проблему. Через какое-то время после удаления проблемных записей - DNS-сервер должен запуститься. 
 + 
 +{{tag>ActiveDirectory Microsoft PowerShell DNS}}
ad._dns-сервер_не_запускается_2008_r2.1737363942.txt.gz · Last modified: 2025/01/20 09:05 by jp