Condividi tramite


Problemi che possono verificarsi con molti controller di dominio nelle zone DNS integrate di Active Directory

Numero KB originale: 267855
Si applica a: Versioni supportate di Windows Server

Sintomi

Registrazioni di record DNS (Domain Name System) di tipo SRV e A per i localizzatori dei controller di dominio (DC) (registrati da Netlogon), e dei record NS (aggiunti dai server DNS autorevoli), in una zona DNS integrata di Active Directory per alcuni DC potrebbero non funzionare in un dominio che contiene un numero elevato di DC.

Per Windows Server 2022 e versioni precedenti, è possibile avere circa 1.200 controller di dominio e server DNS per registrare tutti i record DNS rilevanti per il funzionamento delle zone e dei domini DNS. Per Windows Server 2025, è possibile abilitare una funzionalità facoltativa che consente a circa 3.200 controller di dominio di registrare i record DNS. Per informazioni dettagliate, vedere la sezione Riferimenti .

Uno o più dei seguenti messaggi di errore potrebbero essere registrati nel registro eventi:

Event Type: Error  
Event Source: DNS  
Event Category: None  
Event ID: 4011  
Description: The DNS server was unable to add or write an update of domain name xyz in zone xyz.example.com to the Active Directory. Check that the Active Directory is functioning properly and add or update this domain name using the DNS console. The event data contains the error.  
Data: 0000: 2a 23 00 00 *#..
Event Type: Error  
Event Source: DNS  
Event Category: None  
Event ID: 4015  
Description: The DNS server has encountered a critical error from the Active Directory. Check that the Active Directory is functioning properly. The event data contains the error.  
Data: 0000: 0b 00 00 00 ....  
Event Type: Warning  
Event Source: NTDS Replication  
Event Category: Replication  
Event ID: 1093  
Description: The directory replication agent (DRA) could not apply changes to object DC=@,DC=xyz.example.com,CN=MicrosoftDNS,CN=System,DC=xyz,DC=example, DC=com (GUID <GUID>) because the incoming changes cause the object to exceed the database's record size limit. The incoming change to attribute 9017e (dnsRecord) will be backed out in an attempt to make the update fit. In addition to the change to the attribute not being applied locally, the current value of the attribute on this system will be sent out to all other systems to make that the definitive version. This has the effect of nullifying the change to the rest of the enterprise.
The reversal may be recognized as follows:
Version:
5474
Time of change:
<DateTime>
Update sequence number:
<USN>
Event Type: Information  
Event Source: NTDS Replication  
Event Category: Replication  
Event ID: 1101  
Description: The directory replication agent (DRA) was able to successfully apply the changes to object DC=@,DC=xyz.example.com,CN=MicrosoftDNS,CN=System, DC=xyz,DC=example,DC=com (GUID <GUID>) after backing out one or more of the attribute changes. Preceding messages will indicate which attributes were reversed. Please note that this will have the effect of nullifying the change where it was made, causing the original update not to take effect. The originator should be notified that their change was not accepted by the system.

Causa

In una zona DNS integrata in Active Directory (AD), i nomi DNS sono rappresentati da oggetti dnsNode e i record DNS vengono archiviati come valori nell'attributo dnsRecord multivalore sugli oggetti dnsNode, causando il verificarsi dei messaggi di errore elencati in precedenza in questo articolo.

Questo problema si verifica perché Active Directory presenta una limitazione di circa 1.200 valori che possono essere associati a un singolo oggetto in Windows Server 2022 e versioni precedenti. In Windows Server 2025, questo limite può essere aumentato a circa 3.200 valori.

Risoluzione

Per risolvere questo problema, è possibile usare i metodi seguenti.

Si è verificato il problema con i record NS di una zona

Metodo 1

Se i controller di dominio sono anche server DNS, ospitano tutte le zone integrate con Active Directory e tutte si aggiungono al record NS per la zona per impostazione predefinita. Se si supera il limite per gli attributi non collegati, gli aggiornamenti all'oggetto AD del record DNS avranno esito negativo.

Se si vuole ridurre l'elenco di server DNS in grado di aggiungere record NS corrispondenti a se stessi in una zona specificata, scegliere un subset di server DNS e quindi eseguire Dnscmd.exe con l'opzione /AllowNSRecordsAutoCreation . Considerare di includere controller di dominio nell'elenco che sono ben collegati alla rete e ben monitorati. Può trattarsi di un gruppo di controller di dominio in esecuzione nei data center principali.

  • Per impostare un elenco di indirizzi TCP/IP dei server DNS autorizzati a creare automaticamente record NS per una zona, usare il /AllowNSRecordsAutoCreation IPList comando . Ad esempio:

    Dnscmd NS1 /config zonename.com /AllowNSRecordsAutoCreation 10.1.1.1 10.5.4.2
    
  • Per cancellare l'elenco di indirizzi TCP/IP dei server DNS che dispongono dell'autorizzazione per creare automaticamente record NS per una zona e restituire la zona allo stato predefinito quando ogni server DNS primario aggiunge automaticamente a una zona un record NS corrispondente, usare il /AllowNSRecordsAutoCreation comando . Ad esempio:

    Dnscmd NS1 /config zonename.com /AllowNSRecordsAutoCreation
    
  • Per eseguire una query sull'elenco di indirizzi TCP/IP dei server DNS che dispongono dell'autorizzazione per creare automaticamente record NS per una zona, usare il /AllowNSRecordsAutoCreation comando . Ad esempio:

    Dnscmd NS1 /zoneinfo zonename.com /AllowNSRecordsAutoCreation
    

Note

Eseguire questo comando in un solo server DNS. La replica di Active Directory propaga le modifiche a tutti i server DNS in esecuzione nei controller di dominio nello stesso dominio.

In un ambiente in cui la maggior parte dei controller di dominio DNS per un dominio si trova nelle succursali e alcuni si trovano in una posizione centrale, è possibile usare il Dnscmd comando descritto in precedenza in questo articolo per impostare IPList in modo da includere solo i controller di dominio DNS posizionati centralmente. In questo modo, solo i controller di dominio DNS posizionati centralmente aggiungono i rispettivi record NS alla zona di dominio Active Directory.

Metodo 2

Importante

In questa sezione, metodo o attività viene illustrata la procedura per modificare il Registro di sistema. Se, tuttavia, si modifica il Registro di sistema in modo errato, possono verificarsi gravi problemi. Pertanto, assicurarsi di osservare attentamente la procedura seguente. Per una maggiore protezione, eseguire il backup del Registro di sistema prima di modificarlo. Successivamente, è possibile ripristinare il Registro di sistema se si verifica un problema. Per altre informazioni, vedere Come eseguire il backup e il ripristino del Registro di sistema in Windows.

Analogamente al metodo 1, selezionare un numero di controller di dominio che si desidera presentare con un record NS per le zone ospitate. Per i server DNS che non si desidera aggiungere record NS corrispondenti a se stessi a una qualsiasi zona DNS integrata con Active Directory, utilizzare l'Editor del Registro di sistema (Regedt32.exe) per configurare il valore del Registro di sistema seguente su ogni server DNS interessato:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters

Valore del Registro di sistema: DisableNSRecordsAutoCreation
Tipo di dati: REG_DWORD
Intervallo di dati: 0x0 | 0x1
Valore predefinito: 0x0

Questo valore influisce su tutte le zone DNS integrate in Active Directory. I valori hanno i significati seguenti:

Valore Significato
0 Il server DNS crea automaticamente record NS per tutte le zone DNS integrate in Active Directory, a meno che nessuna zona, ospitata dal server, contenga l'attributo AllowNSRecordsAutoCreation (descritto in precedenza in questo articolo) che non include il server. In questo caso, il server usa la configurazione AllowNSRecordsAutoCreation.
1 Il server DNS non crea automaticamente record NS per tutte le zone DNS integrate in Active Directory, indipendentemente dalla configurazione AllowNSRecordsAutoCreation nelle zone DNS integrate in Active Directory.

Note

Per applicare le modifiche a questo valore, è necessario riavviare il servizio server DNS.

Si è riscontrato un problema con i record SRV e A di una zona di proprietà dei controllori di dominio (DC)

Importante

In questa sezione, metodo o attività viene illustrata la procedura per modificare il Registro di sistema. Se, tuttavia, si modifica il Registro di sistema in modo errato, possono verificarsi gravi problemi. Pertanto, assicurarsi di osservare attentamente la procedura seguente. Per una maggiore protezione, eseguire il backup del Registro di sistema prima di modificarlo. Successivamente, è possibile ripristinare il Registro di sistema se si verifica un problema. Per altre informazioni, vedere Come eseguire il backup e il ripristino del Registro di sistema in Windows.

Netlogon gestisce la registrazione del record DNS di un Domain Controller (DC). Per impedire a un controller di dominio di tentare gli aggiornamenti dinamici di determinati record DNS che per impostazione predefinita vengono aggiornati dinamicamente da Netlogon, usare Regedt32.exe per configurare il valore del Registro di sistema seguente:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters

Valore del Registro di sistema: DnsAvoidRegisterRecords
Tipo di dati: REG_MULTI_SZ

In questo valore, specificare l'elenco di mnemonici corrispondenti ai record DNS che non devono essere registrati da questo controller del dominio.

Note

Impostare il valore sull'elenco delle mnemonic delimitate da enter specificate nella tabella seguente.

L'elenco dei mnemonici include:

Mnemonico Type Record DNS
LdapIpAddress A <DnsDomainName>
LDAP SRV _ldap._tcp.<DnsDomainName>
LdapAtSite SRV _ldap._tcp.<SiteName>._sites.<DnsDomainName>
Pdc SRV _ldap._tcp.pdc._msdcs.<DnsDomainName>
Gc SRV _ldap._tcp.gc._msdcs.<DnsForestName>
GcAtSite SRV _ldap._tcp.<SiteName>._sites.gc._msdcs.<DnsForestName>
DcByGuid SRV _ldap._tcp.<DomainGuid>.domains._msdcs.<DnsForestName>
GcIpAddress A gc._msdcs.<DnsForestName>
DsaCname CNAME <DsaGuid>._msdcs.<DnsForestName>
Kdc SRV _kerberos._tcp.dc._msdcs.<DnsDomainName>
KdcAtSite SRV _kerberos._tcp.<SiteName>._sites.dc._msdcs.<DnsDomainName>
DC SRV _ldap._tcp.dc._msdcs.<DnsDomainName>
DcAtSite SRV _ldap._tcp.<SiteName>._sites.dc._msdcs.<DnsDomainName>
Rfc1510Kdc SRV _kerberos._tcp.<DnsDomainName>
Rfc1510KdcAtSite SRV _kerberos._tcp.<SiteName>._sites.<DnsDomainName>
GenericGc SRV _gc._tcp.<DnsForestName>
GenericGcAtSite SRV _gc._tcp.<SiteName>._sites.<DnsForestName>
Rfc1510UdpKdc SRV _kerberos._udp.<DnsDomainName>
Rfc1510Kpwd SRV _kpasswd._tcp.<DnsDomainName>
Rfc1510UdpKpwd SRV _kpasswd._udp.<DnsDomainName>

Note

Non è necessario riavviare il servizio Netlogon. Se il valore del DnsAvoidRegisterRecords Registro di sistema viene creato o modificato mentre il servizio Netlogon viene arrestato o entro i primi 15 minuti dall'avvio di Netlogon, gli aggiornamenti DNS appropriati vengono terminata con un breve ritardo (tuttavia, il ritardo non è successivo a 15 minuti dopo l'avvio di Netlogon).

È anche possibile impostare l'elenco di record DNS da eliminare usando criteri di gruppo:

GPS: specificare i record DNS del localizzatore dc non registrati dai controller di dominio

Le registrazioni DNS dei record A eseguite da Netlogon possono essere modificate anche usando il valore del RegisterDnsARecords Registro di sistema. Per altre informazioni, vedere Come abilitare o disabilitare gli aggiornamenti DNS in Windows.

Tenere presente che sia DnsAvoidRegisterRecords che i valori del RegisterDnsARecords Registro di sistema devono consentire la registrazione del record host (A):

  • RegisterDnsARecords = 0x1
    Se si elenca LdapIpAddress e GcIpAddress nelle impostazioni del valore del DnsAvoidRegisterRecords Registro di sistema, i record A non vengono registrati.
  • RegisterDnsARecords = 0x0
    Indipendentemente dal fatto che si elenchi LdapIpAddress e GcIpAddress nelle impostazioni del valore del DnsAvoidRegisterRecords Registro di sistema, i record A non vengono registrati.

Per evitare che il problema descritto in precedenza in questo articolo si verifichi in un ambiente in cui un set di controller di dominio e/o server del catalogo globale (GC) si trovano in una posizione centrale e un numero elevato di controller di dominio e/o server GC si trovano nelle succursali, l'amministratore può disabilitare la registrazione di alcuni record DNS da Netlogon nei controller di dominio/controller di dominio nelle succursali. In questa situazione, l'elenco di mnemonici che non devono essere registrati include:

Record specifici del data center:

Mnemonico Tipo Record DNS
LdapIpAddress A <DnsDomainName>
Ldap SRV _ldap._tcp.<DnsDomainName>
DcByGuid SRV _ldap._tcp.<DomainGuid>.domains._msdcs.<DnsForestName>
Kdc SRV _kerberos._tcp.dc._msdcs.<DnsDomainName>
DC SRV _ldap._tcp.dc._msdcs.<DnsDomainName>
Rfc1510Kdc SRV _kerberos._tcp.<DnsDomainName>
Rfc1510UdpKdc SRV _kerberos._udp.<DnsDomainName>
Rfc1510Kpwd SRV _kpasswd._tcp.<DnsDomainName>
Rfc1510UdpKpwd SRV _kpasswd._udp.<DnsDomainName>

Record specifici di GC:

Mnemonico Type Record DNS
Gc SRV _ldap._tcp.gc._msdcs.<DnsForestName>
GcIpAddress A gc._msdcs.<DnsForestName>
GenericGc SRV _gc._tcp.<DnsForestName>

Note

Questi elenchi non includono i record specifici del sito. Di conseguenza, i controller di dominio e i server GC nelle succursali si trovano in base a record specifici del sito usati in genere da un localizzatore di controller di dominio. Se un programma cerca un controller di dominio/GC usando record generici (non specifici del sito), ad esempio uno qualsiasi dei record negli elenchi elencati in precedenza in questo articolo, trova un controller di dominio/GC nella posizione centrale.

Per impostazione predefinita, i controller DC di sola lettura registrano record DNS specifici del loro sito.

Un amministratore può anche scegliere di limitare il numero di record del localizzatore DC, per esempio i record SRV e A registrati da Netlogon per lo stesso nome DNS generico (_ldap._tcp.dc._msdcs.<DomainName>), anche in uno scenario con meno controller di dominio rispetto al limite del valore dell'attributo non collegato nello stesso dominio, per ridurre le dimensioni delle risposte DNS alle query per tali record.

È possibile creare questa impostazione nei Criteri di gruppo collegati all'OU dei controller di dominio, inserire tutti i controller di dominio di ramo in un gruppo "Controller di dominio di ramo AD" e impostare i Criteri di gruppo da applicare solo ai membri del gruppo "Controller di dominio di ramo AD".

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Maggiori informazioni

Ogni server DNS autorevole per una zona DNS integrata in Active Directory aggiunge un record NS. Per impostazione predefinita, ogni controller di dominio in un dominio registra un record SRV per un set di nomi non specifici del sito, ad esempio "_ldap._tcp.<>domain_name" e record A che eseguono il mapping del nome di dominio DNS di Active Directory agli indirizzi TCP/IP del controller di dominio. Quando un server DNS tenta di scrivere un record con molti valori per lo stesso nome condiviso, il servizio LSASS (Local Security Authority Subsystem Service) viene eseguito su 100% utilizzo della CPU per circa 10 secondi e la registrazione non riesce. Netlogon ritenta la registrazione ogni ora; il picco di utilizzo della CPU di 100% viene visualizzato almeno una volta all'ora e le registrazioni tentate non hanno esito positivo.

Riferimenti