Diagnose Active Directory replication problems between domain controllers.
Repadmin may be installed if you select the Active Directory Domain Services Tools as part of the RSAT feature or
by default, with the AD DS or AD LDS server roles.
The syntax for Repadmin does vary by server version, so it is important to check using the help available locally.
Syntax
repadmin command args [/u:{domain\user}] [/pw:{password | *}]
[/retry[:retries][:delay]] [/csv]
repadmin /experthelp Displays commands that are available for advanced users only.
repadmin /listhelp Display the variations of syntax that are available for the
DSA_NAME, DSA_LIST, NCNAME and OBJ_LIST strings.
repadmin /oldhelp Display help for the Windows 2000/2003 Server versions of Repadmin.
repadmin /? Display commands that are available.
repadmin /?:command Display possible arguments args, appropriate syntaxes, and examples for command.
Commands:
/kcc Force the KCC on targeted domain controller(s) to immediately
recalculate its inbound replication topology.
/prp Allows an admin to view or modify the password replication
policy for RODCs.
/queue dc_name Display inbound replication requests that the DC needs to issue to
become consistent with its source replication partners.
/replicate Trigger the immediate replication of the specified directory partition
to the destination domain controller from the source DC.
/replsingleobj Replicate a single object between any two domain controllers
that have common directory partitions.
/replsummary dc_name Quickly and concisely summarize the replication state and relative
health of a forest.
/rodcpwdrepl Trigger replication of passwords for the specified user(s)
from the source (Hub DC) to one or more Read Only DC's.
/showattr Display the attributes of an object.
/showobjmeta Display the replication metadata for a specified object stored in Active
Directory, such as attribute ID, version number, originating and local
Update Sequence Number (USN), and originating server's GUID and
Date and Time stamp.
/showrepl dc_name Display the GUID of each object and display the replication status when
specified domain controller last attempted to inbound replicate
Active Directory partitions.
/showutdvec Display the highest committed Update Sequence Number (USN) that the
targeted DC's copy of Active Directory shows as committed for itself
and its transitive partners.
/SyncAll [/adehijpPsS] Dest_DSA [Naming_Context]
Synchronize a specified domain controller with all replication partners.
/a: Abort if any server is unavailable
/A: Perform /SyncAll for all NC's held by Dest_DSA (ignores Naming_Context)
/d: ID servers by DN in messages (instead of GUID DNS)
/e: Enterprise, cross sites (default: only home site)
/h: Print help
/i: Iterate indefinitely
/I: Perform showreps on each server pair in path instead of syncing
/j: Sync adjacent servers only
/p: Pause for possible user abort after every message
/P: Push changes outward from home server (default: pull changes)
/q: Quiet mode, suppress callback messages
/Q: Very quiet, report fatal errors only
/s: Do not sync (just analyze topology and generate messages)
/S: Skip initial server-response check (assume all servers are available)
If Naming_Context is omitted DsReplicaSyncAll defaults to the Configuration NC.
DC = Domain Controller.
DN = An LDAP Distinguished Name, [RFC2251] section 4.1.3
DSA = Directory Service Agent, a component that maintains and communicates directory information.
NC = Naming Context: An NC is a set of objects organized as a tree. It is referenced by a DSName.
Starting with Windows Server 2012, Microsoft has also included the ability to check AD replication status using Windows PowerShell.
Get-ADDomainController Get-ADReplicationFailure Get-ADReplicationAttributeMetadata Get-ADReplicationPartnerMetadata Get-ADReplicationQueueOperation Get-ADReplicationUpToDatenessVectorTable Sync-ADObject
Sync any server changes inwards to the domain controller dc_name:
C:\> repadmin dc_name /syncall /Adeq
Sync outwards from the domain controller dc_name to all other DCs:
C:\> repadmin dc_name /syncall /AdeqP
“One resolution I have made, and try always to keep, is this: To rise above little things” ~ John Burroughs
Active directory PowerShell cmdlets - in particular the -adReplication* cmdlets.