Esto tomará algún tiempo para solucionarlo.
Para detener toda la replicación, ejecute:
repadmin /options +DISABLE_OUTBOUND_REPL
En todos los DC. Recuerde que la configuración anterior no impide las acciones de replicación manual, como la ejecución de un administrador (usted) repadmin /syncall /APed
, etc. Pero eso es algo bueno porque le permite volver a sincronizar todos sus DC totalmente antes de volver a habilitar la replicación regular.
Repadmin determina que es un objeto persistente si el objeto existe en ServerA pero no en ServerB, donde ServerB es el DC de referencia. La diferencia entre replicar objetos recién creados y replicar actualizaciones a objetos ya existentes es la clave. Replicar objetos recién creados = bueno. Replicar actualizaciones a objetos ya existentes = bueno. Replicar actualizaciones a objetos que no existen en el destino DC = incorrecto.
Solo necesita enjabonar, enjuagar, repetir hasta que todos los DC coincidan con su único DC de referencia. Luego active la consistencia estricta en todas partes, luego vuelva a habilitar la replicación. Sí, corre el riesgo de eliminar objetos legítimos que se crearon en otros DC remotos que no se han replicado en su DC de referencia.
Del gran artículo " Cómo funciona el modelo de replicación de Active Directory ":
Configuración de coherencia de replicación
Si los atributos en un objeto persistente nunca cambian, el objeto nunca se considera para la replicación. Sin embargo, si un atributo cambia, el atributo se considera para la replicación saliente. Debido a que el controlador de dominio de destino no contiene el objeto para el atributo que se está replicando, no se puede realizar una actualización. Cómo se resuelve esta condición depende de la configuración de coherencia de replicación en el controlador de dominio.
Una configuración de registro en los controladores de dominio que ejecutan Windows Server 2003 o Windows 2000 Server con SP3 proporciona un valor de coherencia que determina si un controlador de dominio replica y reanima un objeto actualizado que se ha eliminado de todas las demás réplicas, o si la replicación de dichos objetos es obstruido. La configuración predeterminada es diferente en los controladores de dominio que ejecutan Windows 2000 Server con SP3 y Windows Server 2003.
Consistencia estricta de replicación
Para evitar problemas con la reanimación de objetos que se han eliminado, un controlador de dominio que ejecuta Windows Server 2003 en un bosque de Windows Server 2003 recién creado (no actualizado) bloquea la replicación entrante de forma predeterminada cuando recibe una actualización de un objeto que no tiene .
Nota • La replicación de Active Directory utiliza el seguimiento de actualizaciones para diferenciar entre replicar un objeto recién creado y actualizar un atributo para un objeto existente. La replicación de un objeto persistente es un intento de actualizar un atributo o atributos de un objeto que el controlador de dominio de destino no puede actualizar porque el objeto no existe.
La replicación se detiene en la partición de directorio para el objeto hasta que el objeto persistente se elimine del controlador de dominio de origen o se desactive la configuración de coherencia de replicación estricta.
Cuando ServerB le dice al ServidorA: "Hola, se han realizado algunas actualizaciones al objeto A existente". Entonces el ServidorA dice: "¿Espera qué? Ni siquiera tengo el objeto A en absoluto. ¡Envíame el objeto completo!" Si no hay consistencia estricta. Si la consistencia es estricta, ServerA dice: "¿Espera qué? ¿Cómo espera que actualice un objeto que no existe? ¡Vaya doblado!"
Para saber si tiene objetos persistentes en un controlador de dominio:
repadmin /removelingeringobjects ServerName ServerGUID DirectoryPartition /advisory_mode
ServerGUID es la buena referencia DC conocida. Sé que ya lo sabes ... y cómo escribir la línea anterior para ejecutarla en todos los DC ... ( foreach ($DC In $(Get-ADDomain).ReplicaDirectoryServers) { }
) ...
Necesita una buena fuente DC para comparar, en resumen. Si no tiene una buena fuente DC conocida o no la conoce, solo tiene que elegir una. Debería ser un GC escribible, por supuesto. Es relativo: si todos los controladores de dominio están de acuerdo en la existencia de un objeto y los atributos de ese objeto ... entonces no es un objeto persistente.
foreach($GC In $(Get-ADForest).GlobalCatalogs) { repadmin /removelingeringobjects $_.name 85d158d2-a006-4fff-b1e5-f9b6eaabab2b '$directoryPartition'
Eso es volver a sincronizar esa partición de directorio de cada GC en el bosque con la fuente buena conocida que debe especificar como GUID.
Luego, una vez que tenga todos sus controladores de dominio una vez más, todos de acuerdo, y la replicación sea feliz ... entonces vaya y comience a cambiar con una consistencia estricta en todos ellos.
Editar: Esta es la línea de partido de Microsoft sobre el tema, y lo que probablemente te dirán si los llamas.
Finalmente, esto puede ser más difícil de solucionar de lo que vale a menos que te esté causando problemas. Odio decirlo, pero AD todavía puede funcionar normalmente con objetos persistentes.