repadmin 是什么
repadmin 用来看 Active Directory 各域控之间的复制状态:谁和谁在同步、延迟多久、有没有失败、失败原因是什么。域内数据靠多主复制保持一致,一旦某条复制链路断掉,那台域控就会「活在旧世界」——改的密码不生效、新建的账号查不到。repadmin 的价值是把这种隐性偏差显性化,并且能手动触发一次同步用于验证。
基本信息
| 适用平台 | Windows Server 域控(也可在安装 RSAT 的管理机上运行) |
|---|---|
| 汇总查看 | repadmin /replsummary 一屏看全局延迟与失败数 |
| 明细查看 | repadmin /showrepl 按分区与入站邻居列出每次复制结果 |
| 手动同步 | repadmin /syncall /AdeP 触发全林各分区复制 |
| 队列与状态 | repadmin /queue 查复制请求队列,/showutdvec 查最新向量 |
| 权限要求 | 读取状态建议域管理员;手动同步需相应权限 |
| 常见失败方向 | DNS 解析、RPC 端口与防火墙、Kerberos 时间偏差、网络不通 |
典型使用场景
- 登录异常排查:某站点用户登录慢或改密不生效,先看复制是否正常
- 变更后验证:新建 OU 或调整策略后,确认各域控已同步到位
- 故障恢复:域控离线恢复后检查复制是否重新建立
- 日常巡检:定期跑汇总,记录最大延迟与失败次数
- 拓扑调整:站点与子网改动后确认复制拓扑按预期重建
常用示例
常用示例
repadmin /replsummary # 全局汇总:最大延迟、失败计数
repadmin /replsummary /bysrc /bydest # 按源/目标域控分组看
repadmin /showrepl # 本机各分区与邻居的最新复制结果
repadmin /showrepl DC01 /csv > D:\diag\repl.csv # 导出为 CSV,便于横向对比
repadmin /queue # 查看未处理的复制请求
repadmin /showutdvec DC01 "DC=corp,DC=local" # 对比最新向量,判断哪台落后
repadmin /syncall /AdeP # 全林全分区触发一次同步(避开业务高峰)
repadmin /syncall DC01 /AdeP # 只针对某台域控触发
repadmin /kcc # 强制重算复制拓扑(必要时使用)结果怎么读
| 输出/字段 | 含义 | 异常提示 |
|---|---|---|
| DSA 与站点 | 域控标识与所属站点 | 站点错误会导致复制绕行与延迟 |
| 最大延迟(largest delta) | 入站复制延迟 | 数值异常大说明链路长期未同步 |
| 失败/错误(fails) | 复制失败次数 | 非 0 时需看 showrepl 的具体错误码 |
| 最近成功时间 | 上一次成功复制时间 | 超过常规间隔说明已中断 |
| 错误码 | 如 8524 DNS 解析失败、1256 RPC 不可用 | 错误码直接指向 DNS、网络或服务问题 |
复制失败的原因高度集中在四类:DNS 解析不到对方、RPC 端口被防火墙挡住、域控之间时间偏差导致 Kerberos 失败、以及网络本身不通。先按这四条排查,效率远高于直接重建拓扑。
看故障要区分方向:A 到 B 失败与 B 到 A 失败是两条独立链路。showrepl 的输出会标明入站(inbound)邻居与结果,判断时别把方向看反。
手工验证一次同步
手工验证一次同步
repadmin /replsummary # 1. 先看整体是否正常
repadmin /showrepl DC02 # 2. 看目标域控的失败详情
repadmin /syncall DC02 /AdeP # 3. 触发同步
repadmin /showrepl DC02 | findstr /i "error failed" # 4. 复核是否仍有错误
REM 5. 事件日志交叉验证(目录服务日志中的复制相关事件)
REM Get-WinEvent -LogName 'Directory Service' -MaxEvents 50 | Where-Object Id -in 1311,1863,1988/syncall 会在短时间内触发大范围复制流量,域控较多或跨站点带宽有限时可能造成压力峰值。业务高峰避免使用,单点排查优先只针对目标域控触发。