Короткий ответ
Снимите repadmin /replsummary и repadmin /showrepl * /csv до любых «починить репликацию» скриптов. Код ошибки важнее красной строки dcdiag. 1722 и 1908 — сеть и DNS; 8453 — доступ; 8606 — lingering objects; расхождение USN после отката VM — отдельный инцидент, его не лечат repadmin /syncall.
Пока репликация разъехана, не повышайте функциональный уровень, не добавляйте DC и не восстанавливайте второй контроллер из старого снимка гипервизора.
Симптомы и как отличить
Репликация сломана, если:
- объект, созданный на DC01, не появляется на DC02 за ожидаемое время сайта;
repadmin /replsummaryпоказывает ненулевой Fails;- Directory Service: 1864, 1925, 2042 (последний — очень старый партнёр).
Это не то же самое, что:
- недоступный DC целиком (нет LDAP) — сначала контроллер недоступен;
- SYSVOL красный при зелёном AD — SYSVOL не реплицируется; NTDS и DFSR — разные конвейеры;
- GPO «не применилась» при живом SYSVOL — фильтрация GPO, не NTDS.
Возможные причины
- RPC/порты между сайтами (firewall «разрешили 389 и забыли динамический RPC»).
- DNS: партнёр резолвится в старый IP или в CNAME.
- Нет маршрута или асимметрия, stateful firewall режет обратный трафик.
- Права: сломан Secure Channel между DC или учетка репликации.
- Lingering objects после долгого офлайна DC.
- USN rollback: DC вернули из snapshot/backup без процедуры restore AD.
Диагностика
Сохраните вывод. Плейсхолдеры замените на свои имена.
repadmin /replsummary
repadmin /showrepl * /csv > C:\Temp\showrepl.csv
repadmin /showrepl DC01.contoso.example /verbose
dcdiag /test:Replications /eЧитайте имя партнёра и DSA object GUID, не только «Access denied».
Частые коды (документированные Win32/AD):
| Код | Смысл | Первый шаг |
|---|---|---|
| 1722 | RPC server unavailable | сеть, порт 135, динамический RPC, имя партнёра |
| 1908 | could not find domain | DNS, _msdcs, клиентский DNS на NIC DC |
| 8453 | replication access denied | права, канал, время |
| 8524 | DSA bind, DNS lookup | SRV/A записи партнёра |
| 8606 | lingering object | не «синхронизировать насильно» |
Проверка имени и IP партнёра с каждого DC:
Resolve-DnsName DC02.contoso.example
Resolve-DnsName dc02
ipconfig /allУ DC в DNS servers NIC не должно быть только внешнего резолвера.
Сеть:
Test-NetConnection DC02.contoso.example -Port 135
Test-NetConnection DC02.contoso.example -Port 389При подозрении на rollback: сравните repadmin /showutdvec и события NTDS. Если недавно «откатили VM на час» — остановитесь и разберите этот DC как потенциально изолированный.
Решение по сценариям
Сеть и RPC (1722)
- Подтвердите, что проблема между конкретными партнёрами, не «весь лес».
- Разрешите RPC endpoint mapper и диапазон, который реально использует среда, либо ограничьте RPC AD документированным способом и откройте его.
- Повторите
repadmin /replicate DC01 DC02 "DC=contoso,DC=example"только после прохождения Test-NetConnection.
Не используйте /force как замену маршруту.
DNS (1908, 8524)
Исправление A и CNAME _msdcs — через регистрацию:
ipconfig /registerdns
Restart-Service Netlogon
nltest /dsregdnsНе удаляйте пачками записи _ldap._tcp, если не понимаете, какой DC их должен зарегистрировать заново.
Access denied (8453)
Проверьте время (w32tm /query /status на обоих) и:
nltest /sc_query:contoso.exampleна каждом DC. Если канал компьютера DC сломан, чините его как computer account, не «давая Domain Admins всем».
Lingering objects (8606)
Это объекты на отставшем DC, которых нет у партнёра с strict replication. Лечение — удаление lingering по процедуре Microsoft (repadmin /removelingeringobjects с правильным DSA GUID источника), а не repadmin /syncall /AdeP «чтобы прошло».
После снимка VM
Контроллер, возвращённый из snapshot, может иметь откат USN. Такой узел нельзя оставлять в репликации. План: изолировать NIC, не форсировать sync, планировать demote/metadata cleanup и разворачивать DC заново. Это не «перезапусти VM ещё раз».
Проверка результата
repadmin /replsummary
repadmin /showrepl * /errorsonly
repadmin /queueСоздайте тестовый контакт или OU на одном DC, дождитесь интервала сайта (или запустите репликацию явно) и проверьте появление на партнёре:
Get-ADObject -Identity "CN=repl-test,OU=IT,DC=contoso,DC=example" -Server DC02Затем удалите тестовый объект. replsummary с нулевыми fails на всех DC сайта — минимум. Для WAN-сайтов учитывайте расписание, не требуйте секунд.
Если не помогло
- Ошибки только на одном разделе (Schema vs Domain): смотрите inbound того раздела, не «весь DC».
- Большой backlog: диск, CPU, или партнёр в 2042. Для 2042 нужна процедура для long-disconnected DC, не syncall.
- SYSVOL всё ещё красный при зелёном NTDS: идите в статью про SYSVOL.
Профилактика
- Запрет snapshot/checkpoint DC как метода backup. Backup — VSS-aware system state / Windows Server Backup / поддерживаемый агент.
- Мониторинг
replsummaryи 1864. - Два DNS на NIC DC: оба внутренние.
- Перед изменениями схемы/лесом — проверка AD.
FAQ
Можно ли всегда жать «Replicate now» в Sites and Services?
Можно как тест после починки транспорта. Если RPC мёртв, GUI даст ту же 1722.
Нужен ли /syncall /AdeP после каждой ошибки?
Нет. Это маскирует направление и создаёт нагрузку. Сначала покажите конкретную пару DSA.
Репликация AD зелёная, пароли всё равно старые?
Проверьте, на какой DC смотрит клиент, и кэш Kerberos. Также PDC emulator для смены пароля: если PDC недоступен, смена может откладываться.
Как отличить 8453 от обычного Access denied в файлах?
8453 приходит в контексте репликации NTDS. Это не NTFS SYSVOL.
Стоит ли отключать firewall на DC, чтобы проверить?
Как временный эксперимент на изолированном стенде — иногда. В проде используйте правило и лог drop. Отключать firewall «навсегда» нельзя.