Un controller di dominio di Windows Server registra l'evento 2095 di Servizi directory quando rileva un rollback USN

Questo articolo descrive come rilevare e ripristinare se un controller di dominio Windows Server viene sottoposto a rollback non corretto usando un'installazione basata su immagini del sistema operativo.

Si applica a: Windows Server 2019, Windows Server 2016, Windows Server 2012 R2
Numero KB originale: 875495

Nota

Questo articolo è destinato solo agli agenti di supporto tecnico e ai professionisti IT. Se si sta cercando assistenza per un problema, rivolgersi alla community Microsoft.

Riepilogo

Questo articolo descrive un errore di replica di Active Directory invisibile all'utente causato dal rollback di un numero di sequenza di aggiornamento (USN). Un rollback USN si verifica quando una versione precedente di un database di Active Directory viene ripristinata o incollata in modo non corretto.

Quando si verifica un rollback USN, le modifiche agli oggetti e agli attributi che si verificano in un controller di dominio non vengono replicate in altri controller di dominio nella foresta. Poiché i partner di replica ritengono di avere una copia aggiornata del database di Active Directory, gli strumenti di monitoraggio e risoluzione dei problemi, ad esempio Repadmin.exe non segnalano errori di replica.

I controller di dominio registrano l'evento 2095 di Servizi directory nel registro eventi di Servizi directory quando rilevano un rollback USN. Il testo del messaggio di evento indirizza gli amministratori a questo articolo per informazioni sulle opzioni di ripristino.

Esempio di voce di log evento 2095

Log Name:      <Service name> Service  
Source:        Microsoft-Windows-ActiveDirectory_DomainService  
Date:          <DateTime>
Event ID:      2095  
Task Category: Replication  
Level:         Error  
Keywords:      Classic  
User:          <USER NAME>  
Computer:      SERVER.contoso.com  
Description:

During an Active Directory Domain Services replication request, the local domain controller (DC) identified a remote DC which has received replication data from the local DC using already-acknowledged USN tracking numbers.

Because the remote DC believes it is has a more up-to-date Active Directory Domain Services database than the local DC, the remote DC will not apply future changes to its copy of the Active Directory Domain Services database or replicate them to its direct and transitive replication partners that originate from this local DC.

If not resolved immediately, this scenario will result in inconsistencies in the Active Directory Domain Services databases of this source DC and one or more direct and transitive replication partners. Specifically the consistency of users, computers and trust relationships, their passwords, security groups, security group memberships and other Active Directory Domain Services configuration data may vary, affecting the ability to log on, find objects of interest and perform other critical operations.

To determine if this misconfiguration exists, query this event ID using http://support.microsoft.com or contact your Microsoft product support.

The most probable cause of this situation is the improper restore of Active Directory Domain Services on the local domain controller.

User Actions:

If this situation occurred because of an improper or unintended restore, forcibly demote the DC.

Gli argomenti seguenti illustrano come rilevare e ripristinare da un rollback USN in un controller di dominio basato su Windows Server.

Metodi supportati per eseguire il backup di Active Directory nei controller di dominio che eseguono Windows Server 2012 e versioni successive

Windows Server 2012 aggiunge il supporto per Hyper-Visor Generation ID (GenID). In questo modo il guest virtuale può rilevare i volumi del disco con un nuovo ID e rispondere al nuovo GenID. In Active Directory, Servizi directory reagisce come se il controller di dominio fosse stato ripristinato da un backup. Genera quindi un nuovo ID chiamata. Usando il nuovo ID chiamata, l'istanza del database può immettere nuovamente la replica nella foresta in modo sicuro.

Questo è uno degli scenari descritti in Distribuzione e configurazione del controller di dominio virtualizzato.

Metodi supportati per eseguire il backup di Active Directory nei controller di dominio che eseguono Windows Server 2003 o versioni successive di Windows Server

Nel corso del ciclo di vita di un controller di dominio, potrebbe essere necessario ripristinare, o "eseguire il rollback", il contenuto del database di Active Directory a un punto valido noto nel tempo. In alternativa, potrebbe essere necessario eseguire il rollback degli elementi del sistema operativo host di un controller di dominio, incluso Active Directory, a un punto valido noto.

Di seguito sono riportati i metodi supportati che è possibile usare per eseguire il rollback del contenuto di Active Directory:

  • Usare un'utilità di backup e ripristino compatibile con Active Directory che usa API fornite da Microsoft e testate da Microsoft. Queste API ripristinano in modo non autorevole o autorevole un backup dello stato del sistema. Il backup ripristinato deve provenire dalla stessa installazione del sistema operativo e dallo stesso computer fisico o virtuale da ripristinare.

  • Usare un'utilità di backup e ripristino compatibile con Active Directory che usa le API del servizio Copia Shadow del volume Microsoft. Queste API consentono di eseguire il backup e il ripristino dello stato del sistema del controller di dominio. Il servizio Copia shadow del volume supporta la creazione di copie shadow temporizzate singole di volumi singoli o multipli nei computer che eseguono Windows Server 2003, Windows Server 2008 o Windows Server 2008 R2. Le singole copie shadow temporizzate sono note anche come snapshot. Per altre informazioni, cercare "Servizio copia shadow del volume" in supporto tecnico Microsoft.

  • Ripristinare lo stato del sistema. Valutare se esistono backup dello stato del sistema validi per questo controller di dominio. Se è stato eseguito un backup dello stato del sistema valido prima del ripristino non corretto del controller di dominio di cui è stato eseguito il rollback e se il backup contiene le modifiche recenti apportate al controller di dominio, ripristinare lo stato del sistema dal backup più recente.

Comportamento tipico che si verifica quando si ripristina un backup dello stato del sistema compatibile con Active Directory

I controller di dominio di Windows Server usano gli USN insieme agli ID chiamata per tenere traccia degli aggiornamenti che devono essere replicati tra i partner di replica in una foresta di Active Directory.

I controller di dominio di origine usano gli USN per determinare quali modifiche sono già state ricevute dal controller di dominio di destinazione che richiede modifiche. I controller di dominio di destinazione usano gli USN per determinare quali modifiche devono essere richieste dai controller di dominio di origine.

L'ID chiamata identifica la versione o l'istanza del database di Active Directory in esecuzione in un determinato controller di dominio.

Quando Active Directory viene ripristinato in un controller di dominio usando le API e i metodi progettati e testati da Microsoft, l'ID chiamata viene reimpostato correttamente nel controller di dominio ripristinato. I controller di dominio nella foresta ricevono la notifica della reimpostazione della chiamata. Pertanto, regolano di conseguenza i valori di filigrana elevati.

Software e metodologie che causano rollback USN

Quando vengono usati gli ambienti, i programmi o i sottosistemi seguenti, gli amministratori possono ignorare i controlli e le convalide progettati da Microsoft quando viene ripristinato lo stato del sistema del controller di dominio:

  • Avvio di un controller di dominio Active Directory il cui file di database Active Directory è stato ripristinato (copiato) sul posto usando un programma di creazione di immagini, ad esempio Norton Ghost.

  • Avvio di un'immagine del disco rigido virtuale salvata in precedenza di un controller di dominio. Lo scenario seguente può causare un rollback USN:

    1. Alzare di livello un controller di dominio in un ambiente di hosting virtuale.
    2. Creare uno snapshot o una versione alternativa dell'ambiente di hosting virtuale.
    3. Consentire al controller di dominio di continuare a eseguire la replica in ingresso e la replica in uscita.
    4. Avviare il file di immagine del controller di dominio creato nel passaggio 2.
  • Esempi di ambienti di hosting virtualizzati che causano questo scenario includono Microsoft Virtual PC 2004, Microsoft Virtual Server 2005 ed EMC VMWARE. Anche altri ambienti di hosting virtualizzati possono causare questo scenario.

  • Per altre informazioni sulle condizioni di supporto per i controller di dominio negli ambienti di hosting virtuale, vedere Aspetti da considerare quando si ospitano controller di dominio Active Directory in ambienti di hosting virtuale.

  • Avvio di un controller di dominio Active Directory che si trova in un volume in cui il sottosistema del disco viene caricato usando le immagini salvate in precedenza del sistema operativo senza richiedere il ripristino dello stato del sistema di Active Directory.

    • Scenario A: Avvio di più copie di Active Directory che si trovano in un sottosistema del disco in cui sono archiviate più versioni di un volume

      1. Alzare di livello un controller di dominio. Individuare il file Ntds.dit in un sottosistema del disco in grado di archiviare più versioni del volume che ospita il file Ntds.dit.
      2. Usare il sottosistema del disco per creare uno snapshot del volume che ospita il file Ntds.dit per il controller di dominio.
      3. Continuare a consentire al controller di dominio di caricare Active Directory dal volume creato nel passaggio 1.
      4. Avviare il controller di dominio salvato dal database di Active Directory nel passaggio 2.
    • Scenario B: Avvio di Active Directory da altre unità in un mirror interrotto

      1. Alzare di livello un controller di dominio. Individuare il file Ntds.dit in un'unità con mirroring.
      2. Interrompere lo specchio.
      3. Continuare a eseguire la replica in ingresso e la replica in uscita usando il file Ntds.dit nella prima unità nel mirroring.
      4. Avviare il controller di dominio usando il file Ntds.dit nella seconda unità nel mirroring.

Anche se non previsto, ognuno di questi scenari può causare il rollback dei controller di dominio a una versione precedente del database di Active Directory con metodi non supportati. L'unico modo supportato per eseguire il rollback del contenuto di Active Directory o dello stato locale di un controller di dominio Active Directory consiste nell'usare un'utilità di backup e ripristino compatibile con Active Directory per ripristinare un backup dello stato del sistema originato dalla stessa installazione del sistema operativo e dallo stesso computer fisico o virtuale da ripristinare.

Microsoft non supporta nessun altro processo che acquisisce uno snapshot degli elementi dello stato del sistema di un controller di dominio Active Directory e copia gli elementi di tale stato di sistema in un'immagine del sistema operativo. A meno che un amministratore non intervenga, tali processi causano un rollback USN. Questo rollback USN fa sì che i partner di replica diretta e transitiva di un controller di dominio ripristinato in modo non corretto abbiano oggetti incoerenti nei database di Active Directory.

Gli effetti di un rollback USN

Quando si verificano rollback USN, le modifiche agli oggetti e agli attributi non vengono replicate in ingresso dai controller di dominio di destinazione che hanno visto in precedenza l'USN.

Poiché questi controller di dominio di destinazione ritengono di essere aggiornati, non vengono segnalati errori di replica nei log eventi del servizio directory o dagli strumenti di monitoraggio e diagnostica.

Il rollback USN può influire sulla replica di qualsiasi oggetto o attributo in qualsiasi partizione. L'effetto collaterale più frequente è che gli account utente e gli account computer creati nel controller di dominio di rollback non esistono in uno o più partner di replica. In alternativa, gli aggiornamenti delle password originati nel controller di dominio di rollback non esistono nei partner di replica.

I passaggi seguenti illustrano la sequenza di eventi che possono causare un rollback USN. Un rollback USN si verifica quando viene eseguito il rollback dello stato del sistema del controller di dominio nel tempo usando un ripristino dello stato del sistema non supportato.

  1. Un amministratore promuove tre controller di dominio in un dominio. In questo esempio i controller di dominio sono DC1, DC2 e DC2 e il dominio è Contoso.com. DC1 e DC2 sono partner di replica diretta. DC2 e DC3 sono anche partner di replica diretta. DC1 e DC3 non sono partner di replica diretta, ma ricevono gli aggiornamenti di origine in modo transitivo tramite DC2.

  2. Un amministratore crea 10 account utente che corrispondono a USN da 1 a 10 in DC1. Tutti questi account vengono replicati in DC2 e DC3.

  3. Un'immagine del disco di un sistema operativo viene acquisita in DC1. Questa immagine ha un record di oggetti che corrispondono ai nomi USN locali da 1 a 10 in DC1.

  4. In Active Directory vengono apportate le modifiche seguenti:

    • Le password per tutti i 10 account utente creati nel passaggio 2 vengono reimpostate in DC1. Queste password corrispondono ai nomi USN da 11 a 20. Tutte le 10 password aggiornate vengono replicate in DC2 e DC3.
    • In DC1 vengono creati 10 nuovi account utente che corrispondono a usn da 21 a 30. Questi 10 account utente vengono replicati in DC2 e DC3.
    • In DC1 vengono creati 10 nuovi account computer che corrispondono a USN da 31 a 40. Questi 10 account computer vengono replicati in DC2 e DC3.
    • In DC1 vengono creati 10 nuovi gruppi di sicurezza che corrispondono a usn da 41 a 50. Questi 10 gruppi di sicurezza vengono replicati in DC2 e DC3.
  5. DC1 si verifica un errore hardware o un errore software. L'amministratore usa un'utilità di imaging del disco per copiare l'immagine del sistema operativo creata nel passaggio 3. DC1 inizia ora con un database di Active Directory che conosce i nomi USN da 1 a 10.

    Poiché l'immagine del sistema operativo è stata copiata sul posto e non è stato usato un metodo supportato per ripristinare lo stato del sistema, DC1 continua a usare lo stesso ID chiamata che ha creato la copia iniziale del database e tutte le modifiche fino a USN 50. DC2 e DC3 mantengono anche lo stesso ID chiamata per DC1 e un vettore aggiornato di USN 50 per DC1. Un vettore aggiornato è lo stato corrente degli aggiornamenti di origine più recenti che si verificano in tutti i controller di dominio per una determinata partizione di directory.

    A meno che un amministratore non intervenga, DC2 e DC3 non replicano in ingresso le modifiche che corrispondono all'USN locale da 11 a 50 provenienti da DC1. Inoltre, in base all'ID chiamata usato da DC2, DC1 è già a conoscenza delle modifiche che corrispondono a USN da 11 a 50. Di conseguenza, DC2 non invia tali modifiche. Poiché le modifiche apportate al passaggio 4 non esistono in DC1, le richieste di accesso hanno esito negativo con un errore di accesso negato. Questo errore si verifica perché le password non corrispondono o perché l'account non esiste quando gli account più recenti eseguono l'autenticazione casuale con DC1.

  6. Gli amministratori che monitorano l'integrità della replica nella foresta notano le situazioni seguenti:

    • Lo Repadmin /showreps strumento da riga di comando segnala che la replica bidirezionale di Active Directory tra DC1 e DC2 e tra DC2 e DC3 viene eseguita senza errori. Questa situazione rende difficile rilevare eventuali incoerenze di replica.

    • Gli eventi di replica nei registri eventi del servizio directory dei controller di dominio che eseguono Windows Server non indicano errori di replica nei log eventi del servizio directory. Questa situazione rende difficile rilevare eventuali incoerenze di replica.

    • Utenti e computer di Active Directory o lo strumento di amministrazione di Active Directory (Ldp.exe) mostrano un numero diverso di oggetti e metadati di oggetti diversi quando le partizioni della directory di dominio in DC2 e DC3 vengono confrontate con la partizione in DC1. La differenza è il set di modifiche mappate alle modifiche USN da 11 a 50 nel passaggio 4.

      Nota

      In questo esempio, il numero di oggetti diversi si applica agli account utente, agli account computer e ai gruppi di sicurezza. I diversi metadati dell'oggetto rappresentano le diverse password dell'account utente.

    • Le richieste di autenticazione utente per i 10 account utente creati nel passaggio 2 generano occasionalmente un errore "accesso negato" o "password errata". Questo errore può verificarsi perché esiste una mancata corrispondenza della password tra questi account utente in DC1 e gli account in DC2 e DC3. Gli account utente che riscontrano questo problema corrispondono agli account utente creati nel passaggio 4. Gli account utente e le reimpostazioni della password nel passaggio 4 non sono stati replicati in altri controller di dominio nel dominio.

  7. DC2 e DC3 iniziano a replicare in ingresso gli aggiornamenti di origine che corrispondono a numeri USN maggiori di 50 da DC1. Questa replica procede normalmente senza intervento amministrativo perché è stata superata la soglia del vettore di aggiornamento registrata in precedenza, USN 50. (USN 50 era il vettore aggiornato USN registrato per DC1 su DC2 e DC3 prima che DC1 venisse portato offline e ripristinato. Tuttavia, le nuove modifiche che corrispondono agli USN da 11 a 50 nel controller di dominio di origine dopo il ripristino non supportato non verranno mai replicate in DC2, DC3 o nei partner di replica transitiva.

Anche se i sintomi indicati nel passaggio 6 rappresentano alcuni degli effetti che un rollback USN può avere sugli account utente e computer, un rollback USN può impedire la replica di qualsiasi tipo di oggetto in qualsiasi partizione di Active Directory. Questi tipi di oggetto includono quanto segue:

  • Topologia e pianificazione della replica di Active Directory

  • L'esistenza di controller di dominio nella foresta e i ruoli che questi controller di dominio contengono

    Nota

    Questi ruoli includono il catalogo globale, le allocazioni di identificatori relativi (RID) e i ruoli di master operazioni. I ruoli master operazioni sono noti anche come operazioni master singole flessibili o FSMO.

  • L'esistenza di partizioni di dominio e applicazione nella foresta

  • L'esistenza dei gruppi di sicurezza e delle relative appartenenze ai gruppi correnti

  • Registrazione dei record DNS nelle zone DNS integrate in Active Directory

Le dimensioni del foro USN possono rappresentare centinaia, migliaia o addirittura decine di migliaia di modifiche a utenti, computer, trust, password e gruppi di sicurezza. Il foro USN è definito dalla differenza tra il numero USN più alto esistente quando è stato eseguito il backup dello stato del sistema ripristinato e il numero di modifiche di origine create nel controller di dominio di cui è stato eseguito il rollback prima che venisse portato offline.

Rilevare un rollback USN in un controller di dominio Windows Server

Poiché è difficile rilevare un rollback USN, un controller di dominio di Windows Server 2003 SP1 o versione successiva registra l'evento 2095 quando un controller di dominio di origine invia un numero USN riconosciuto in precedenza a un controller di dominio di destinazione senza una modifica corrispondente nell'ID chiamata.

Per impedire la creazione di aggiornamenti di origine univoci di Active Directory nel controller di dominio ripristinato in modo non corretto, il servizio Accesso rete viene sospeso. Quando il servizio Accesso rete viene sospeso, gli account utente e computer non possono modificare la password in un controller di dominio che non replica tali modifiche in uscita. Analogamente, gli strumenti di amministrazione di Active Directory favoriscono un controller di dominio integro quando eseguono aggiornamenti agli oggetti in Active Directory.

In un controller di dominio vengono registrati messaggi di evento simili ai seguenti se si verificano le condizioni seguenti:

  • Un controller di dominio di origine invia un numero USN riconosciuto in precedenza a un controller di dominio di destinazione.
  • Non esiste alcuna modifica corrispondente nell'ID chiamata.

Questi eventi possono essere acquisiti nel registro eventi del servizio directory. Tuttavia, possono essere sovrascritti prima di essere osservati da un amministratore.

Si potrebbe sospettare che si sia verificato un rollback USN. Tuttavia, gli eventi correlati non vengono visualizzati nel registro eventi del servizio directory. In questo scenario verificare la voce del Registro di sistema Dsa Non scrivibile. Questa voce fornisce prove forensi che si è verificato un rollback usn.

  • Sottochiave del Registro di sistema: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Parameters
  • Voce del Registro di sistema: Dsa non scrivibile
  • Valore: 0x4

Se si elimina o si modifica manualmente il valore della voce del Registro di sistema Dsa Non scrivibile , il controller di dominio di rollback viene gestito in modo permanente non supportato. Pertanto, tali modifiche non sono supportate. In particolare, la modifica del valore rimuove il comportamento di quarantena aggiunto dal codice di rilevamento del rollback USN. Le partizioni di Active Directory nel controller di dominio di rollback saranno definitivamente incoerenti con i partner di replica diretta e transitiva nella stessa foresta di Active Directory.

Ripristino da un rollback USN

Esistono tre approcci per il ripristino da un rollback USN.

Riferimenti