登入變慢、GPO 不一致或新帳號只在部分據點看得到,通常要一起看 DNS、時間、RPC 與複寫。先留下完整摘要,再追單一來源 DC 和錯誤碼。
整體健康摘要
執行本機 DC 基本檢查系統管理員 CMD(DC)
dcdiag /q只顯示失敗項目,適合先快速篩選。
輸出詳細 DC 報告系統管理員 CMD(DC)
dcdiag /c /v /f:C:\Logs\dcdiag.txt報告可能含內部網域、IP 與伺服器名稱,要妥善保存。
檢查整個樹系 DC系統管理員 CMD
dcdiag /e /c /v /f:C:\Logs\dcdiag-forest.txt大型環境輸出很多,應在管理站執行並保留時間。
專查 DNS 測試系統管理員 CMD
dcdiag /test:DNS /e /v /f:C:\Logs\dcdiag-dns.txtAD 複寫異常常和 SRV、委派或 DNS 指向有關。
查看樹系複寫摘要系統管理員 CMD
repadmin /replsummary先看最大延遲、失敗數和錯誤碼。
查看所有 DC inbound 複寫系統管理員 CMD
repadmin /showrepl * /csvCSV 適合匯入 Excel 篩選 Last Failure Status。
查看指定 DC 複寫系統管理員 CMD
repadmin /showrepl DC01 /all /verbose針對摘要有錯的 DC 深挖來源 partner。
查看等待中的複寫工作系統管理員 CMD
repadmin /queue DC01有少量 queue 不一定異常,要觀察是否持續累積。
PowerShell 與事件紀錄
列出樹系複寫失敗PowerShell
Get-ADReplicationFailure -Target * -Scope Forest | Format-Table Server,FirstFailureTime,FailureCount,LastError -Auto把 LastError 對回 Microsoft 錯誤說明。
找最後一次複寫失敗的 partnerPowerShell
Get-ADReplicationPartnerMetadata -Target * -Scope Forest | Where-Object LastReplicationResult -ne 0 | Select-Object Server,Partner,Partition,LastReplicationAttempt,LastReplicationResult結果為空才表示這次查詢沒有失敗,不代表歷史上從未出錯。
查看 AD 複寫 queuePowerShell
Get-ADReplicationQueueOperation -Server DC01確認 queue 是否能逐步下降。
查看 Directory Service 錯誤PowerShell
Get-WinEvent -FilterHashtable @{LogName='Directory Service'; Level=2} -MaxEvents 100Level 2 是 Error;同時對照 DNS Server、DFSR 與 System。
查看 DFS Replication 近期錯誤PowerShell
Get-WinEvent -FilterHashtable @{LogName='DFS Replication'; Level=2,3} -MaxEvents 100SYSVOL 問題常見事件包含 2213、4012、4614、4604,但要按版本與事件內容判讀。
確認 SYSVOL 與 NETLOGON 分享命令提示字元(DC)
net share | findstr /I "SYSVOL NETLOGON"缺少分享時不要自行建空資料夾,先查 DFSR 狀態。
DNS、SYSVOL 與受控同步
尋找網域控制站命令提示字元
nltest /dsgetdc:corp.example /force確認找到的 DC、site、flags 與 DNS 名稱是否合理。
列出網域 DC命令提示字元
nltest /dclist:corp.example清單和 Sites and Services、DNS 記錄應一致。
查看 DFSR 即時複寫狀態系統管理員 CMD(DC)
dfsrdiag ReplicationState沒有 active connection 不一定是錯,要在有變更時觀察。
比較 SYSVOL backlog系統管理員 CMD
dfsrdiag backlog /rgname:"Domain System Volume" /rfname:"SYSVOL Share" /smem:DC01 /rmem:DC02方向要跑兩次;大量 backlog 先查網路與事件,不要直接重建。
查看 Up-to-dateness vector系統管理員 CMD
repadmin /showutdvec DC01 "DC=corp,DC=example" /latency用於確認 naming context 的來源 USN 與延遲。
受控觸發全分割同步系統管理員 CMD
repadmin /syncall DC01 /AdeP會主動同步;只在已釐清錯誤、連線正常且變更窗內使用。
怎麼確認有做對
- repadmin /replsummary 的 fail 欄位回到 0,最大延遲符合站點排程。
- dcdiag 重要測試通過,SYSVOL/NETLOGON 分享存在。
- 在兩台 DC 建立測試物件並確認正常複寫,再刪除測試物件。
常見錯誤
- 看到 1722 就直接關防火牆。
- 沒有讀錯誤碼就反覆 syncall。
- 只查 AD,不查 DNS、時間、RPC、DFSR 與站點子網。
- 直接照網路文章做 authoritative SYSVOL restore。
常見問題
repadmin /syncall 可以每天排程嗎?
不建議把強制同步當成治本。正常拓樸會自行複寫;若每天都靠 syncall 才正常,應追 DNS、RPC、site link、時間或損壞的 partner。
SYSVOL 沒分享能直接重建嗎?
不能先假設。先確認是尚未完成初始同步、DFSR paused、資料庫問題或 AD 複寫問題;authoritative/non-authoritative restore 要依 Microsoft 當版程序。
延伸閱讀
版本與官方文件
參數會隨工具版本與作業系統實作改變。正式環境先用 --help、-h 或系統內建說明確認,再以當版官方文件為準。
常見問題
repadmin /syncall 可以每天排程嗎?
不建議把強制同步當成治本。正常拓樸會自行複寫;若每天都靠 syncall 才正常,應追 DNS、RPC、site link、時間或損壞的 partner。
SYSVOL 沒分享能直接重建嗎?
不能先假設。先確認是尚未完成初始同步、DFSR paused、資料庫問題或 AD 複寫問題;authoritative/non-authoritative restore 要依 Microsoft 當版程序。