Короткий ответ

Снимите 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 (последний — очень старый партнёр).

Это не то же самое, что:

Возможные причины

  1. RPC/порты между сайтами (firewall «разрешили 389 и забыли динамический RPC»).
  2. DNS: партнёр резолвится в старый IP или в CNAME.
  3. Нет маршрута или асимметрия, stateful firewall режет обратный трафик.
  4. Права: сломан Secure Channel между DC или учетка репликации.
  5. Lingering objects после долгого офлайна DC.
  6. 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):

КодСмыслПервый шаг
1722RPC server unavailableсеть, порт 135, динамический RPC, имя партнёра
1908could not find domainDNS, _msdcs, клиентский DNS на NIC DC
8453replication access deniedправа, канал, время
8524DSA bind, DNS lookupSRV/A записи партнёра
8606lingering 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)

  1. Подтвердите, что проблема между конкретными партнёрами, не «весь лес».
  2. Разрешите RPC endpoint mapper и диапазон, который реально использует среда, либо ограничьте RPC AD документированным способом и откройте его.
  3. Повторите 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 «навсегда» нельзя.