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

In questo articolo viene descritto come rilevare e ripristinare un controller di dominio di Windows Server in modo non corretto utilizzando un'installazione basata su immagine 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. Per informazioni su un problema, rivolgersi a Microsoft Community.

Riepilogo

In questo articolo viene descritto un errore di replica di Active Directory invisibile all'utente causato da un rollback del 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 errato.

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 disporre di una copia aggiornata del database di Active Directory, gli strumenti di monitoraggio e risoluzione dei problemi come Repadmin.exe non segnalano errori di replica.

I controller di dominio registrano l'evento 2095 dei servizi directory nel registro eventi dei 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 del registro eventi 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.

Negli argomenti seguenti viene illustrato come rilevare e ripristinare un ripristino da un rollback USN in un controller di dominio Windows basato su 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, i servizi directory reagiscono come se il controller di dominio fosse stato ripristinato da un backup. Viene quindi generato un nuovo ID chiamata. Utilizzando il nuovo ID chiamata, l'istanza del database può tranquillamente immettere nuovamente la replica nella foresta.

Questo è uno degli scenari descritti in Virtualized Domain Controller Deployment and Configuration.

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

Durante il 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 nel tempo noto. In caso contrario, potrebbe essere necessario eseguire il rollback degli elementi del sistema operativo host di un controller di dominio, incluso Active Directory, a un punto noto.

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

  • Usa un'utilità di backup e ripristino in grado di riconoscere Active Directory che usa LE 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.

  • Usa un'utilità di backup e ripristino in grado di riconoscere Active Directory che usa le API del servizio Copia Shadow del volume Microsoft. Queste API e backup e ripristino dello stato del sistema del controller di dominio. Il servizio Copia Shadow del volume supporta la creazione di copie shadow con un singolo punto nel tempo di uno o più volumi nei computer che eseguono Windows Server 2003, Windows Server 2008 o Windows Server 2008 R2. Le copie shadow point-in-time singole sono note anche come snapshot. Per ulteriori informazioni, cercare "Servizio Copia Shadow del volume" nel Supporto Tecnico Microsoft.

  • Ripristinare lo stato del sistema. Valutare se esistono backup validi dello stato del sistema 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 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 in grado di riconoscere Active Directory

Windows I controller di dominio del server utilizzano USN insieme agli ID di 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 utilizzano usn per determinare quali modifiche sono già state ricevute dal controller di dominio di destinazione che richiede modifiche. I controller di dominio di destinazione utilizzano usN per determinare quali modifiche devono essere richieste dai controller di dominio di origine.

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

Quando Active Directory viene ripristinato in un controller di dominio utilizzando 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. Di conseguenza, regolano di conseguenza i valori delle filigrane elevate.

Software e metodologie che causano rollback USN

Quando vengono utilizzati 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 di Active Directory è stato ripristinato (copiato) utilizzando 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. Lasciare che il controller di dominio continui a replicare in ingresso e a replicare 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. Questo scenario può essere causato anche da altri ambienti di hosting virtualizzati.

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

  • Avvio di un controller di dominio Active Directory che si trova in un volume in cui il sottosistema del disco viene caricato utilizzando 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. Utilizzare 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 il mirror.
      3. Continuare a replicare e replicare in uscita in ingresso utilizzando il file Ntds.dit nella prima unità nel mirror.
      4. Avviare il controller di dominio utilizzando il file Ntds.dit nella seconda unità nel mirror.

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 Di Active Directory è utilizzare un'utilità di backup e ripristino che supporta 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 altri processi che esere un'istantanea degli elementi dello stato del sistema di un controller di dominio Active Directory e copia gli elementi di tale stato del sistema in un'immagine del sistema operativo. A meno che non intervenga un amministratore, questi 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 errato presentino oggetti incoerenti nei propri 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 che siano aggiornati, non vengono segnalati errori di replica nei registri eventi del servizio directory o tramite strumenti di monitoraggio e diagnostica.

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

La procedura seguente mostra 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 utilizzando un ripristino dello stato del sistema non supportato.

  1. Un amministratore alza di livello 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 agli USN da 1 a 10 in DC1. Tutti questi account vengono replicati in DC2 e DC3.

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

  4. In Active Directory vengono apportate le modifiche seguenti:

    • Le password per tutti e 10 gli account utente creati nel passaggio 2 vengono reimpostate su DC1. Queste password corrispondono agli 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 agli USN da 21 a 30. Questi 10 account utente vengono replicati in DC2 e DC3.
    • In DC1 vengono creati 10 nuovi account computer corrispondenti agli 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 agli USN da 41 a 50. Questi 10 gruppi di sicurezza vengono replicati in DC2 e DC3.
  5. DC1 si è verificato un errore hardware o software. L'amministratore usa un'utilità di creazione di immagini del disco per copiare l'immagine del sistema operativo creata nel passaggio 3. DC1 inizia ora con un database di Active Directory con conoscenza degli USN da 1 a 10.

    Poiché l'immagine del sistema operativo è stata copiata sul posto e non è stato utilizzato un metodo supportato per ripristinare lo stato del sistema, DC1 continua a utilizzare 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 ultimi aggiornamenti di origine che verranno eseguiti in tutti i controller di dominio per una determinata partizione di directory.

    A meno che non intervenga un amministratore, DC2 e DC3 in ingresso non replicano le modifiche che corrispondono all'USN locale da 11 a 50 che hanno origine da DC1. Inoltre, in base all'ID chiamata utilizzato da DC2, DC1 è già a conoscenza delle modifiche che corrispondono a USN 11 a 50. Pertanto, 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ù nuovi eseguono l'autenticazione casuale con DC1.

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

    • Lo strumento da riga di comando segnala che la replica bidireale di Active Directory tra DC1 e DC2 e tra DC2 e DC3 si verifica Repadmin /showreps senza errori. Questa situazione rende difficile rilevare qualsiasi incoerenza 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 registri eventi del servizio directory. Questa situazione rende difficile rilevare qualsiasi incoerenza di replica.

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

      Nota

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

    • Le richieste di autenticazione utente per i 10 account utente creati nel passaggio 2 generano occasionalmente un errore di "accesso negato" o "password errata". Questo errore può verificarsi perché esiste una mancata corrispondenza tra questi account utente in DC1 e gli account in DC2 e DC3. Gli account utente che si verificano 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 di up-to-dateness USN registrato per DC1 su DC2 e DC3 prima che DC1 fosse portato offline e ripristinato. Tuttavia, le nuove modifiche corrispondenti agli USN da 11 a 50 sul DC1 di origine dopo il ripristino non supportato non verranno mai replicate in DC2, DC3 o nei partner di replica transitivi.

Sebbene i sintomi menzionati nel passaggio 6 rappresentino parte dell'effetto che un ripristino 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:

  • 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 rid (Relative Identifier) e i ruoli di master operazioni. I ruoli di master operazioni sono noti anche come FSMO (Flexible Single Master Operations).

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

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

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

Le dimensioni del foro USN possono rappresentare centinaia, migliaia o persino decine di migliaia di modifiche apportate 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 fosse disconnesso.

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 corrispondente modifica nell'ID chiamata.

Per impedire la creazione di aggiornamenti 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 replicherà in uscita tali modifiche. Analogamente, gli strumenti di amministrazione di Active Directory favoriscono un controller di dominio integro quando apportano aggiornamenti agli oggetti in Active Directory.

In un controller di dominio, i messaggi di evento simili ai seguenti vengono registrati 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, potrebbero 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 Not Writable. Questa voce fornisce la prova forense 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 Not Writable
  • Valore: 0x4

L'eliminazione o la modifica manuale del valore della voce del Registro di sistema Dsa Not Writable mette il controller di dominio di rollback in uno stato permanentemente non supportato. Di conseguenza, 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 permanentemente incoerenti con i partner di replica diretti e transitivi nella stessa foresta di Active Directory.

Ripristino da un rollback USN

Esistono tre approcci per il ripristino da un rollback USN.

  • Rimuovere il controller di dominio dal dominio. A tal fine, attenersi alla seguente procedura:

    1. Rimuovere Active Directory dal controller di dominio per forzarlo a essere un server autonomo. Per ulteriori informazioni, vedere Domain controllers do not demote gracefully when you use the Active Directory Installation Wizard to force demotion.

    2. Arrestare il server abbassato di livello.

    3. In un controller di dominio integro, pulire i metadati del controller di dominio abbassato di livello. Per ulteriori informazioni, vedere Clean up Active Directory Domain Controller server metadata.

    4. Se il controller di dominio ripristinato in modo errato ospita ruoli di master operazioni, trasferire questi ruoli in un controller di dominio integro. Per ulteriori informazioni, vedere Transfer or seize FSMO roles in Active Directory Domain Services.

    5. Riavviare il server abbassato di livello.

    6. Se necessario, installare di nuovo Active Directory nel server autonomo.

    7. Se in precedenza il controller di dominio era un catalogo globale, configurarlo come catalogo globale. Per ulteriori informazioni, vedere Come creare o spostare un catalogo globale.

    8. Se il controller di dominio ospitava in precedenza ruoli di master operazioni, trasferire di nuovo i ruoli di master operazioni al controller di dominio. Per ulteriori informazioni, vedere Transfer or seize FSMO roles in Active Directory Domain Services.

  • Ripristinare lo stato del sistema di un backup valido.

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

  • Ripristinare lo stato del sistema senza backup dello stato del sistema.

    È possibile utilizzare lo snapshot come origine di un backup. Oppure è possibile impostare il database in modo da assegnare a se stesso un nuovo ID chiamata utilizzando la procedura descritta nella sezione Per ripristinare una versione precedente di un disco rigido virtuale del controller di dominio virtuale senza backup dei dati sullo stato del sistema di Esecuzione di controller di dominio in Hyper-V.

Riferimenti