系统学习 Windows 学习路径:从 CMD 到 PowerShell、系统网络,再到 WSL 与 Server

版本信息最后核对:2026-10-25

ad-replication

诊断 Active Directory 域控之间的复制拓扑、延迟与失败原因。

补充说明

AD 复制按命名上下文进行:架构、配置、域分区,以及全局编录承载的部分属性。站点内复制通常更频繁,站点间复制受站点链接的开销、计划和桥头服务器影响。KCC 自动生成连接对象,ISTG 负责站点间拓扑;只有确认自动拓扑无法满足需求时,才考虑手工连接对象。复制健康不能只看一台域控,入站正常也不代表出站正常,必须覆盖全林。

复制元数据依赖 USN(更新序列号)和调用 ID。域控恢复自旧备份、虚拟机快照或复制的虚拟磁盘时,可能出现 USN 回滚:本机认为新的更新已被其他域控见过,复制因此静默跳过或报错。典型信号是目录服务事件日志中的 2095,以及注册表 Dsa Not Writable 值为 0x4。此时不要强行触发复制,更不要改注册表把 DC 变成可写;应先隔离该域控,再评估从有效备份恢复、降级重建或清理元数据,过程中可能丢失回滚点之后的更新。

排障顺序建议:先用 repadmin /replsummary 看全林最大延迟和失败数,再用 /showrepl 定位到具体源、目标和分区,然后用 repadmin /queue、/failcache 判断是积压还是持续失败,最后回到 DNS、RPC、时间同步和站点拓扑找根因。dcdiag 的只读测试用于单机健康和广告检查;带 /fix 的测试会改配置,必须单独评估。只读诊断先行,/syncall、/replicate 和清理 lingering object 都属于变更操作。

时间同步与 DNS 是复制故障的两大常见根因。域内时间应遵循域层次:成员和普通域控向域层次同步,PDC 模拟器对接可靠时间源;不要把每台域控都指向外部时间源。时间偏差过大会让 Kerberos 认证失败,表现为复制访问被拒。DNS 方面要确认域控的 A 记录、SRV 记录和站点子网正确,客户端能定位到可用的域控。

站点间复制慢还要看站点链接的开销、复制计划和桥头服务器负载。所有站点都通过同一个桥头时,它可能成为瓶颈;跨站点链路中断时,KCC 不一定能立刻自动改道。用 repadmin /bridgeheads 和 /istg 确认角色,再结合 /showrepl 的失败计数判断是链路问题还是单台域控问题。

PowerShell 的 Get-ADReplicationPartnerMetadata 和 Get-ADReplicationFailure 能得到对象化结果,适合批量导出和定期巡检;repadmin 的摘要更适合现场快速定位。无论用哪种工具,都要记录时间点、源和目标,避免拿不同时刻的输出直接比较。目录服务日志、DFS Replication 日志和 DNS 日志要一起看,复制错误往往只是底层网络或解析问题的表象。巡检结果要保留历史基线,才能区分偶发失败和持续恶化。

常用示例

# 1. 全林摘要:先看最大延迟、失败数和错误
C:\> repadmin /replsummary

# 2. 单台 DC 的入站伙伴、最后成功时间和失败
C:\> repadmin /showrepl DC01 /verbose

# 3. 导出所有 DC 的复制状态,横向比较
C:\> repadmin /showrepl * /csv > C:\Temp\repl.csv

# 4. 查看队列与 KCC 失败缓存
C:\> repadmin /queue DC01
C:\> repadmin /failcache DC01

# 5. 站点、桥头和 ISTG
C:\> repadmin /bridgeheads
C:\> repadmin /istg

# 6. 只读健康检查;每次只带一个 /test
C:\> dcdiag /test:replications /v
C:\> dcdiag /test:advertising /v
C:\> dcdiag /test:services /v

# 7. 对象级元数据,确认最后修改来自哪台 DC
C:\> repadmin /showobjmeta DC01 "CN=Administrator,CN=Users,DC=contoso,DC=com"

# 8. 时间状态
C:\> w32tm /query /status
C:\> w32tm /monitor

# 9. 变更操作:仅在根因排除且变更窗口内,对单台 DC 定向触发
# 影响范围:立即产生复制流量,可能扩散已有异常;复制本身没有数据回滚
# 备份/回滚:先确认系统状态备份和事件记录;失败时停止继续触发,回到根因处理
C:\> repadmin /syncall DC01

易错点与排错

相关命令

参考链接

读完自测

  1. repadmin /replsummary 显示零失败,能否说明所有域控的对象完全一致?
  2. 发现事件 2095 和 Dsa Not Writable = 0x4 时,为什么不能强制复制或改注册表?
  3. 站点内复制正常但跨站点复制持续延迟,应优先检查什么?
答案
  1. 不能。摘要只反映复制链路和最近结果,对象级差异、lingering object 和部分属性冲突仍可能存在。要继续查看 /showrepl、/showchanges、对象元数据和目录服务事件日志。
  2. 这两个信号提示可能发生了 USN 回滚,域控的更新序列号已不可信。强制复制可能把旧数据扩散到其他域控,改注册表只会掩盖检测信号。应隔离该域控,评估从有效备份恢复、降级重建或元数据清理。
  3. 先看站点链接的开销、复制计划和桥头服务器负载,再用 /queue、/showrepl 判断是否积压;同时排除跨站点防火墙、DNS 和时间同步问题,不要直接对整个站点强制复制。
微信小程序码:扫码打开命令速查小程序

小程序版

微信扫码,随时查命令