Ошибка ldap 81 0x51 сервер отключен ошибка win32 58

  • Remove From My Forums
  • Вопрос

  • Всем добрый день!

    Такая проблема,  был один старый престарый контроллер домена, который родился еще на 2003 версии оси, потом вырос до 2008, и наконец повзрослел до 2012. Сейчас у нас все
    контроллеры предприятия на 2016 стандарте, а этот старый еще и зависать начал что-то, какие то ошибки выдавать, в общем мы его устранили. удаляли его по правильному, все по инструкции. Но! Какая сейчас ситуация. Если поднимать
    новый контроллер, и на этапе выбора репликации, в списке всех АД есть тот самый старый! Откуда он берется??

    Смотрим в AD Site and Services там его нет, все чисто везде. Делали вывод по всем сайтам NTDSUTIL, его там нет.

    В АД центре нет ни одной записи по нему. в ADSI тоже шерстили — нету. Вот скрины, vm-knp, тот кого нельзя называть!

    https://social.technet.microsoft.com/Forums/getfile/1146706

    https://social.technet.microsoft.com/Forums/getfile/1146705

    https://social.technet.microsoft.com/Forums/getfile/1146705

     

    Куда еще посмотреть подскажите пожалуйста.

    • Изменено

      19 октября 2017 г. 3:43

Ответы

  • Ищите, где и почему не идёт репликация — repadmin /showrepl *

    Если предыдущая команда не сможет выполниться на каком-то контроллере  — repadmin /showrepl на нём.

    Если захотите получиь помощь — нужны сведения о вашей топологии репликации: сайты и контроллеры в них, связи сайтов, мосты связей(если есть) или включен ли автоматический мост для всех связей в свойствах протокола IP.

    PS Содержимое окна командной строки лучше вставлять не скриншотом, а в виде текста (забрать текст в буфер обмена можно с помощью локального меню по правой кнопке мыши). Заодно так и имя домена проще
    скрыть.


    Слава России!

    • Изменено
      M.V.V. _
      19 октября 2017 г. 4:07
    • Помечено в качестве ответа
      Vladimir Sizasko
      23 октября 2017 г. 10:51

  • Значит так.

    Сначала по данным: я не увидел, как у вас настроены связи сайтов. Далее, нет информации, к какому сайту принадлежит DC9 (DrainPoint?). И не отключали ли вы, случаем KCC, чтобы создать все подключения вручную (если не в курсе, посмотрите
    в описании процедуры включения , какие биты поля Options в NTDS Site Settings за это отвечают)?

    Далее, по резульатам. Реальная схема подключений у вас выглядит не так, как вы описываете — кольца нет. Возможно — из-за проблем с контроллерами доменов в периферийных сайтах (см. ниже).

    Реально реплицируются у вас между собой следующие контроллеры домена: PDC, DC3, DC4, DC5, DC7, DC10, DC12, DC99. Контроллеры домена DC11 и DC8 ни с чем не реплицируются. Информации по DC9 не увидел (и вообще — зря вы его дёргали
    при неработающей репликации в лесу), но, скорее всего, он тоже ни с чем не реплицируется.

    Поэтому смотрите в журналах событий службы каталогов на контроллерах домена DC11, DC8, DC9 какие у KCC есть проблемы при попытке создания подключений к другим контроллерам домена. Имеет смысл
    также посмотреть на других контролерах домена, которые должны реплицироваться с указанными (прежде всего — PDC и DC5) есть ли, а если есть, то какие, проблемы при создании подключений к этим контроллерам домена.

    PS И постарайтесь не называть контроллеры домена «доменами» — это разные вещи.


    Слава России!

    • Помечено в качестве ответа
      Vladimir Sizasko
      23 октября 2017 г. 10:51

  • Вы мне так ничего не рассказали про связи сайтов у вас и про ошибки/предупреждения в журнале событий службы каталогов. А без этой информации вам помочь трудно. Сведения о ваших экспериментах её не заменят.

    Подключение к контроллерам со «странными» именами — следы разрешения конфликта одновременного добавления записей на разных КД. Т.к. с DC12 репликация не идёт — только то обратил внимание — то надо её восстановить,
    а потом уже смотреть, что там и как. Восстановите репликацию — тогда они, может быть, исчезнут, если не исчезнут и если созданы вручную — тогда удалите. Во всяком случае в сторону на DC12 изменения реплицируются,
    так что эти подключения пока не мешают. А потому пока не трогайте.

    PS Насчёт Options — всё так.

    PPS Чисто для информации: при выводе компьютера из домена его учётная запись не удаляется, а отключается. А если вы хотите ввести в домен новый компьютер и переименовать его в это же самое имя — тогда только
    эта запись будет удаляться. А если она защищена от случайного удаления — её и удалить не поучится. В любом случае, сначала восстанавливайте репликацию, а потом уж разбирайтесь со всем остальным.


    Слава России!

    • Помечено в качестве ответа
      Vladimir Sizasko
      23 октября 2017 г. 10:51

  • Вы по-прежнему так и не дали информацию о том,  как у вас настроены связи сайтов. А проблема, похоже, именно там, судя по содержимому журнала событий службы каталогов.

    PS Меня больше всего интересовал журнал не на DC12, где есть входящие подключения, а на DC8 или DC11 — где их нет. И на PDC.

    PPS Данные журналов событий FRS,DFS,DNS пока не нужны: тамошние ошибки — следствие неработающей репликации.


    Слава России!

    • Помечено в качестве ответа
      Vladimir Sizasko
      23 октября 2017 г. 10:50

  • Я до сих пор так и не увидел, как у вас настроены связи сайтов (Site Link). Вы в курсе, что это такое, надеюсь? Точнее, я почти уверен, что у вас они настроены неправильно.

    Давайте сделаем так: выполните вот эту команду в Powershell и приведите её результат:

    Get-ADReplicationSiteLink -Filter * | Foreach-Object { $_.Name;$_|Select-Object -Expand SitesIncluded}


    Слава России!

    • Помечено в качестве ответа
      Vladimir Sizasko
      23 октября 2017 г. 10:50

При неудачном подключении к LDAPs  определить причину проблемы со стороны клиента крайне затруднительно по причине «информативности» вывода:

ld = ldap_sslinit("DC.domain", 636, 1);
Error 0 = ldap_set_option(hLdap, LDAP_OPT_PROTOCOL_VERSION, 3);
Error 81 = ldap_connect(hLdap, NULL);
Server error: <empty>
Error <0x51>: Fail to connect to DC.domain.

Имея доступ к журналу событий System (Event viewer) на контроллере домена можно определить причину (коих может быть великое множество).
В данной заметке раскажу про часто встречающуюся проблему после конфигурации LDAPS, а именно ошибку аутентификации в Secure Channel (Schannel

Log Name:      System
Source:        Schannel
Date:          21.01.2016 12:28:12
Event ID:      36874
Task Category: None
Level:         Error
Keywords:      
User:          SYSTEM
Computer:      DC.domain
Description:
An TLS 1.2 connection request was received from a remote client application, but none of the cipher suites supported by the client application are supported by the server. The SSL connection request has failed.

Проблема заключается в том, что по умолчанию TLS 1.2 отключен на стороне сервера.

Конкретно в Вашем случае отключено может быть что угодно (SSL…,TLS….).

Соединение не удается и следом за Event ID:      36874 следует:

Log Name:      System
Source:        Schannel
Date:          21.01.2016 12:28:12
Event ID:      36888
Task Category: None
Level:         Error
Keywords:      
User:          SYSTEM
Computer:      DC.domain
Description:
A fatal alert was generated and sent to the remote endpoint. This may result in termination of the connection. The TLS protocol defined fatal error code is 40. The Windows SChannel error state is 1205.

Решение

Решением является включение TLS 1.2.

Оперативно это можно выполнить через правку реестра путем создания ключа TLS 1.2ClientDisabledByDefault в ветке реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocols

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocolsTLS 1.2ClientDisabledByDefault


Значение ключа DisabledByDefault должно быть выключено (1).

В случае проблем не с TLS 1.2 действия аналогичны. Более подробно параметры реестра для SCHANNEL можно посмотреть здесь.

Один из механизмов Active Directory (AD), с которым могут быть связаны всевозможные затруднения, это репликация. Репликация – критически важный процесс в работе одного или более доменов или контроллеров домена (DC), и не важно, находятся они на одном сайте или на разных. Неполадки с репликацией могут привести к проблемам с аутентификацией и доступом к сетевым ресурсам. Обновления объектов AD реплицируются на контроллеры домена, чтобы все разделы были синхронизированы. В крупных компаниях использование большого количества доменов и сайтов – обычное дело. Репликация должна происходить внутри локального сайта, так же как дополнительные сайты должны сохранять данные домена и леса между всеми DC.

В этой статье речь пойдет о методах выявления проблем с репликацией в AD. Кроме того, я покажу, как находить и устранять неисправности и работать с четырьмя наиболее распространенными ошибками репликации AD:

  • Error 2146893022 (главное конечное имя неверно);
  • Error 1908 (не удалось найти контроллер домена);
  • Error 8606 (недостаточно атрибутов для создания объекта);
  • Error 8453 (доступ к репликации отвергнут).

Вы также узнаете, как анализировать метаданные репликации с помощью таких инструментов, как AD Replication Status Tool, встроенная утилита командной строки RepAdmin.exe и Windows PowerShell.

Для всестороннего рассмотрения я буду использовать лес Contoso, который показан на рисунке. В таблице 1 перечислены роли, IP-адреса и настройки DNS-клиента для компьютеров данного леса.

Архитектура леса
Рисунок. Архитектура леса

Роли системы и настройки

Для обнаружения неполадок с репликацией AD запустите AD Replication Status Tool на рабочей станции администратора в корневом домене леса. Например, вы открываете этот инструмент из системы Win8Client, а затем нажимаете кнопку Refresh Replication Status для уверенности в четкой коммуникации со всеми контроллерами домена. В таблице Discovery Missing Domain Controllers на странице Configuration/Scope Settings инструмента можно увидеть два недостающих контроллера домена, как показано на экране 1.

Два недостающих контроллера домена
Экран 1. Два недостающих контроллера домена

В таблице Replication Status Collection Details вы можете проследить статус репликации контроллеров домена, которые никуда не пропадали, как показано на экране 2.

Статус репликации контроллеров домена
Экран 2. Статус репликации контроллеров домена

Пройдя на страницу Replication Status Viewer, вы обнаружите некоторые ошибки в репликации. На экране 3 видно, что возникает немалое число ошибок репликации, возникающих в лесу Contoso. Из пяти контроллеров домена два не могут видеть другие DC, а это означает, что репликация не будет происходить на контроллерах домена, которые не видны. Таким образом, пользователи, подключающиеся к дочерним DC, не будут иметь доступ к самой последней информации, что может привести к проблемам.

Ошибки репликации, возникающие в лесу Contoso
Экран 3. Ошибки репликации, возникающие в лесу Contoso

Поскольку ошибки репликации все же возникают, полезно задействовать утилиту командной строки RepAdmin.exe, которая помогает получить отчет о состоянии репликации по всему лесу. Чтобы создать файл, запустите следующую команду из Cmd.exe:

Repadmin /showrel * /csv > ShowRepl.csv

Проблема с двумя DC осталась, соответственно вы увидите два вхождения LDAP error 81 (Server Down) Win32 Err 58 на экране, когда будет выполняться команда. Мы разберемся с этими ошибками чуть позже. А теперь откройте ShowRepl.csv в Excel и выполните следующие шаги:

  1. Из меню Home щелкните Format as table и выберите один из стилей.
  2. Удерживая нажатой клавишу Ctrl, щелкните столбцы A (Showrepl_COLUMNS) и G (Transport Type). Правой кнопкой мыши щелкните в этих столбцах и выберите Hide.
  3. Уменьшите ширину остальных столбцов так, чтобы был виден столбец K (Last Failure Status).
  4. Для столбца I (Last Failure Time) нажмите стрелку вниз и отмените выбор 0.
  5. Посмотрите на дату в столбце J (Last Success Time). Это последнее время успешной репликации.
  6. Посмотрите на ошибки в столбце K (Last Failure Status). Вы увидите те же ошибки, что и в AD Replication Status Tool.

Таким же образом вы можете запустить средство RepAdmin.exe из PowerShell. Для этого сделайте следующее:

1. Перейдите к приглашению PowerShell и введите команду

Repadmin /showrepl * /csv | ConvertFrom-Csv | Out-GridView

2. В появившейся сетке выберите Add Criteria, затем Last Failure Status и нажмите Add.

3. Выберите подчеркнутое слово голубого цвета contains в фильтре и укажите does not equal.

4. Как показано на экране 4, введите 0 в поле, так, чтобы отфильтровывалось все со значением 0 (успех) и отображались только ошибки.

Задание фильтра
Экран 4. Задание фильтра

Теперь, когда вы знаете, как проверять статус репликации и обнаруживать ошибки, давайте посмотрим, как выявлять и устранять четыре наиболее распространенные неисправности.

Исправление ошибки AD Replication Error -2146893022

Итак, начнем с устранения ошибки -2146893022, возникающей между DC2 и DC1. Из DC1 запустите команду Repadmin для проверки статуса репликации DC2:

Repadmin /showrepl dc2

На экране 5 показаны результаты, свидетельствующие о том, что репликация перестала выполняться, поскольку возникла проблема с DC2: целевое основное имя неверно. Тем не менее, описание ошибки может указать ложный путь, поэтому приготовьтесь копать глубже.

Проблема с DC2 - целевое основное имя неверно
Экран 5. Проблема с DC2 — целевое основное имя неверно

Во-первых, следует определить, есть ли базовое подключение LDAP между системами. Для этого запустите следующую команду из DC2:

Repadmin /bind DC1

На экране 5 видно, что вы получаете сообщение об ошибке LDAP. Далее попробуйте инициировать репликацию AD с DC2 на DC1:

Repadmin /replicate dc2 dc1 «dc=root,dc=contoso,dc=com»

И на этот раз отображается та же ошибка с главным именем, как показано на экране 5. Если открыть окно Event Viewer на DC2, вы увидите событие с Event ID 4 (см. экран 6).

Сообщение о событии с Event ID 4
Экран 6. Сообщение о событии с Event ID 4

Выделенный текст в событии указывает на причину ошибки. Это означает, что пароль учетной записи компьютера DC1 отличается от пароля, который хранится в AD для DC1 в Центре распределения ключей – Key Distribution Center (KDC), который в данном случае запущен на DC2. Значит, следующая наша задача – определить, соответствует ли пароль учетной записи компьютера DC1 тому, что хранится на DC2. В командной строке на DC1 введите две команды:

Repadmin /showobjmeta dc1 «cn=dc1,ou=domain controllers,

dc=root,dc=contoso,dc=com» > dc1objmeta1.txt
Repadmin /showobjmeta dc2 «cn=dc1,ou=domain controllers,

dc=root,dc=contoso,dc=com» > dc1objmeta2.txt

Далее откройте файлы dc1objmeta1.txt и dc1objmeta2.txt, которые были созданы, и посмотрите на различия версий для dBCSPwd, UnicodePWD, NtPwdHistory, PwdLastSet и lmPwdHistory. В нашем случае файл dc1objmeta1.txt показывает версию 19, тогда как версия в файле dc1objmeta2.txt – 11. Таким образом, сравнивая эти два файла, мы видим, что DC2 содержит информацию о старом пароле для DC1. Операция Kerberos не удалась, потому что DC1 не смог расшифровать билет службы, представленный DC2.

KDC, запущенный на DC2, не может быть использован для Kerberos вместе с DC1, так как DC2 содержит информацию о старом пароле. Чтобы решить эту проблему, вы должны заставить DC2 использовать KDC на DC1, чтобы завершить репликацию. Для этого вам, в первую очередь, необходимо остановить службу KDC на DC2:

Net stop kdc

Теперь требуется начать репликацию корневого раздела Root:

Repadmin /replicate dc2 dc1 «dc=root,dc=contoso,dc=com»

Следующим вашим шагом будет запуск двух команд Repadmin /showobjmeta снова, чтобы убедиться в том, что версии совпадают. Если все хорошо, вы можете перезапустить службу KDC:

Net start kdc

Обнаружение и устранение ошибки AD Replication Error 1908

Теперь, когда мы устранили ошибку -2146893022, давайте перейдем к ошибке репликации AD 1908, где DC1, DC2 и TRDC1 так и не удалось выполнить репликацию из ChildDC1. Решить проблему можно следующим образом. Используйте Nltest.exe для создания файла Netlogon.log, чтобы выявить причину ошибки 1908. Прежде всего, включите расширенную регистрацию на DC1, запустив команду:

Nltest /dbflag:2080fff

Теперь, когда расширенная регистрация включена, запустите репликацию между DC – так все ошибки будут зарегистрированы. Этот шаг поможет запустить три команды для воспроизведения ошибок. Итак, во-первых, запустите следующую команду на DC1:

Repadmin /replicate dc1 childdc1 dc=child,dc=root,
dc=contoso,dc=com

Результат, показанный на экране 7, говорит о том, что репликация не состоялась, потому что DC домена не может быть найден.

Репликация не состоялась, потому что DC домена не может быть найден
Экран 7. Репликация не состоялась, потому что DC домена не может быть найден

Во-вторых, из DC1 попробуйте определить местоположение KDC в домене child.root.contoso.com с помощью команды:

Nltest /dsgetdc:child /kdc

Результаты на экране 7 свидетельствуют, что такого домена нет. В-третьих, поскольку вы не можете найти KDC, попытайтесь установить связь с любым DC в дочернем домене, используя команду:

Nltest /dsgetdc:child

В очередной раз результаты говорят о том, что нет такого домена, как показано на экране 7.

Теперь, когда вы воспроизвели все ошибки, просмотрите файл Netlogon.log, созданный в папке C:Windowsdebug. Откройте его в «Блокноте» и найдите запись, которая начинается с DSGetDcName function called. Обратите внимание, что записей с таким вызовом будет несколько. Вам нужно найти запись, имеющую те же параметры, что вы указали в команде Nltest (Dom:child и Flags:KDC). Запись, которую вы ищете, будет выглядеть так:

DSGetDcName function called: client PID=2176,
Dom:child Acct:(null) Flags:KDC

Вы должны просмотреть начальную запись, равно как и последующие, в этом потоке. В таблице 2 представлен пример потока 3372. Из этой таблицы следует, что поиск DNS записи KDC SRV в дочернем домене был неудачным. Ошибка 1355 указывает, что заданный домен либо не существует, либо к нему невозможно подключиться.

Пример потока 3372

Поскольку вы пытаетесь подключиться к Child.root.contoso.com, следующий ваш шаг – выполнить для него команду ping из DC1. Скорее всего, вы получите сообщение о том, что хост не найден. Информация из файла Netlogon.log и ping-тест указывают на возможные проблемы в делегировании DNS. Свои подозрения вы можете проверить, сделав тест делегирования DNS. Для этого выполните следующую команду на DC1:

Dcdiag /test:dns /dnsdelegation > Dnstest.txt

На экране 8 показан пример файла Dnstest.txt. Как вы можете заметить, это проблема DNS. Считается, что IP-адрес 192.168.10.1 – адрес для DC1.

Пример файла Dnstest.txt
Экран 8. Пример файла Dnstest.txt

Чтобы устранить проблему DNS, сделайте следующее:

1. На DC1 откройте консоль управления DNS.

2. Разверните Forward Lookup Zones, разверните root.contoso.com и выберите child.

3. Щелкните правой кнопкой мыши (как в родительской папке) на записи Name Server и выберите пункт Properties.

4. Выберите lamedc1.child.contoso.com и нажмите кнопку Remove.

5. Выберите Add, чтобы можно было добавить дочерний домен сервера DNS в настройки делегирования.

6. В окне Server fully qualified domain name (FQDN) введите правильный сервер childdc1.child.root.contoso.com.

7. В окне IP Addresses of this NS record введите правильный IP-адрес 192.168.10.11.

8. Дважды нажмите кнопку OK.

9. Выберите Yes в диалоговом окне, где спрашивается, хотите ли вы удалить связующую запись (glue record) lamedc1.child.contoso.com [192.168.10.1]. Glue record – это запись DNS для полномочного сервера доменных имен для делегированной зоны.

10. Используйте Nltest.exe для проверки, что вы можете найти KDC в дочернем домене. Примените опцию /force, чтобы кэш Netlogon не использовался:

Nltest /dsgetdc:child /kdc /force

11. Протестируйте репликацию AD из ChildDC1 на DC1 и DC2. Это можно сделать двумя способами. Один из них – выполнить команду

Repadmin /replicate dc1 childdc1 «dc=child,dc=root,
dc=contoso,dc=com»

Другой подход заключается в использовании оснастки Active Directory Sites и Services консоли Microsoft Management Console (MMC), в этом случае правой кнопкой мыши щелкните DC и выберите Replicate Now, как показано на экране 9. Вам нужно это сделать для DC1, DC2 и TRDC1.

Использование оснастки Active Directory Sites и?Services
Экран 9. Использование оснастки Active Directory Sites и?Services

После этого вы увидите диалоговое окно, как показано на экране 10. Не учитывайте его, нажмите OK. Я вкратце расскажу об этой ошибке.

Ошибка при репликации
Экран 10. Ошибка при репликации

Когда все шаги выполнены, вернитесь к AD Replication Status Tool и обновите статус репликации на уровне леса. Ошибки 1908 больше быть не должно. Ошибка, которую вы видите, это ошибка 8606 (недостаточно атрибутов для создания объекта), как отмечалось на экране 10. Это следующая трудность, которую нужно преодолеть.

Устранение ошибки AD Replication Error 8606

Устаревший объект (lingering object) – это объект, который присутствует на DC, но был удален на одном или нескольких других DC. Ошибка репликации AD 8606 и ошибка 1988 в событиях Directory Service – хорошие индикаторы устаревших объектов. Важно учитывать, что можно успешно завершить репликацию AD и не регистрировать ошибку с DC, содержащего устаревшие объекты, поскольку репликация основана на изменениях. Если объекты не изменяются, то реплицировать их не нужно. По этой причине, выполняя очистку устаревших объектов, вы допускаете, что они есть у всех DC (а не только DCs logging errors).

Чтобы устранить проблему, в первую очередь убедитесь в наличии ошибки, выполнив следующую команду Repadmin на DC1:

Repadmin /replicate dc1 dc2 «dc=root,dc=contoso,dc=com»

Вы увидите сообщение об ошибке, как показано на экране 11. Кроме того, вы увидите событие с кодом в Event Viewer DC1 (см. экран 12). Обратите внимание, что событие с кодом 1988 только дает отчет о первом устаревшем объекте, который вам вдруг встретился. Обычно таких объектов много.

Ошибка из-за наличия устаревшего объекта
Экран 11. Ошибка из-за наличия устаревшего объекта
Событие с кодом 1988
Экран 12. Событие с кодом 1988

Вы должны скопировать три пункта из информации об ошибке 1988 в событиях: идентификатор globally unique identifier (GUID) устаревшего объекта, сервер-источник (source DC), а также уникальное, или различающееся, имя раздела – distinguished name (DN). Эта информация позволит определить, какой DC имеет данный объект.

Прежде всего, используйте GUID объекта (в данном случае 5ca6ebca-d34c-4f60-b79c-e8bd5af127d8) в следующей команде Repadmin, которая отправляет результаты в файл Objects.txt:

Repadmin /showobjmeta * «e8bd5af127d8>» > Objects.txt

Если вы откроете файл Objects.txt, то увидите, что любой DC, который возвращает метаданные репликации для данного объекта, содержит один или более устаревших объектов. DC, не имеющие копии этого объекта, сообщают статус 8439 (уникальное имя distinguished name, указанное для этой операции репликации, недействительно).

Затем вам нужно, используя GUID объект Directory System Agent (DSA) DC1, идентифицировать все устаревшие объекты в разделе Root на DC2. DSA предоставляет доступ к физическому хранилищу информации каталога, находящейся на жестком диске. В AD DSA – часть процесса Local Security Authority. Для этого выполните команду:

Repadmin /showrepl DC1 > Showrepl.txt

В Showrepl.txt GUID объект DSA DC1 появляется вверху файла и выглядит следующим образом:

DSA object GUID: 70ff33ce-2f41-4bf4-b7ca-7fa71d4ca13e

Ориентируясь на эту информацию, вы можете применить следующую команду, чтобы удостовериться в существовании устаревших объектов на DC2, сравнив его копию раздела Root с разделом Root DC1.

Repadmin /removelingeringobjects DC2 70ff33ce-2f41-4bf4-
b7ca-7fa71d4ca13e «dc=root,dc=contoso,dc=com»
/Advisory_mode

Далее вы можете просмотреть журнал регистрации событий Directory Service на DC2, чтобы узнать, есть ли еще какие-нибудь устаревшие объекты. Если да, то о каждом будет сообщаться в записи события 1946. Общее число устаревших объектов для проверенного раздела будет отмечено в записи события 1942.

Вы можете удалить устаревшие объекты несколькими способами. Предпочтительно использовать ReplDiag.exe. В качестве альтернативы вы можете выбрать RepAdmin.exe.

Используем ReplDiag.exe. С вашей рабочей станции администратора в корневом домене леса, а в нашем случае это Win8Client, вы должны выполнить следующие команды:

Repldiag /removelingeringobjects
Repadmin /replicate dc1 dc2 «dc=root,dc=contoso,dc=com»

Первая команда удаляет объекты. Вторая команда служит для проверки успешного завершения репликации (иными словами, ошибка 8606 больше не регистрируется). Возвращая команды Repadmin /showobjmeta, вы можете убедиться в том, что объект был удален из всех, что объект был удален DC. Если у вас есть контроллер только для чтения read-only domain controller (RODC) и он содержал данный устаревший объект, вы заметите, что он все еще там находится. Дело в том, что текущая версия ReplDiag.exe не удаляет объекты из RODC. Для очистки RODC (в нашем случае, ChildDC2) выполните команду:

Repadmin /removelingeringobjects childdc2.child.root.
contoso.com 70ff33ce-2f41-4bf4-b7ca-7fa71d4ca13e
«dc=root,dc=contoso,dc=com» /Advisory_mode

После этого просмотрите журнал событий Directory Service на ChildDC2 и найдите событие с кодом 1939. На экране 13 вы видите уведомление о том, что устаревшие объекты были удалены.

Сообщение об удалении устаревших объектов
Экран 13. Сообщение об удалении устаревших объектов

Используем RepAdmin.exe. Другой способ, позволяющий удалить устаревшие объекты – прибегнуть к помощи RepAdmin.exe. Сначала вы должны удалить устаревшие объекты главных контроллеров домена (reference DC) с помощью кода, который видите в листинге 1. После этого необходимо удалить устаревшие объекты из всех остальных контроллеров домена (устаревшие объекты могут быть показаны или на них могут обнаружиться ссылки на нескольких контроллерах домена, поэтому убедитесь, что вы удалили их все). Необходимые для этой цели команды приведены в листинге 2.

Как видите, использовать ReplDiag.exe гораздо проще, чем RepAdmin.exe, поскольку вводить команд вам придется намного меньше. Ведь чем больше команд, тем больше шансов сделать опечатку, пропустить команду или допустить ошибку в командной строке.

Устранение ошибки AD Replication Error 8453

Предыдущие ошибки репликации AD были связаны с невозможностью найти другие контроллеры домена. Ошибка репликации AD с кодом состояния 8453 возникает, когда контроллер домена видит другие DC, но не может установить с ними связи репликации.

Например, предположим, что ChildDC2 (RODC) в дочернем домене не уведомляет о себе как о сервере глобального каталога – Global Catalog (GC). Для получения статуса ChildDC2 запустите следующие команды на ChildDC2:

Repadmin /showrepl childdc2 > Repl.txt

Данная команда отправляет результаты Repl.txt. Если вы откроете этот текстовый файл, то увидите вверху следующее:

BoulderChildDC2
DSA Options: IS_GC DISABLE_OUTBOUND_REPL IS_RODC
WARNING: Not advertising as a global catalog

Если вы внимательно посмотрите на раздел Inbound Neighbors, то увидите, что раздел DC=treeroot,DC=fabrikam,DC=com отсутствует, потому что он не реплицируется. Взгляните на кнопку файла – вы увидите ошибку:

Source: BoulderTRDC1
******* 1 CONSECTUTIVE FAILURES since 2014-01-12 11:24:30
Last error: 8453 (0x2105):
Replication access was denied
Naming Context: DC=treeroot,DC=fabrikam,DC=com

Эта ошибка означает, что ChildDC2 не может добавить связь репликации (replication link) для раздела Treeroot. Как показано на экране 14, данная ошибка также записывается в журнал регистрации событий Directory Services на ChildDC2 как событие с кодом 1926.

Отсутствие связи репликации
Экран 14. Отсутствие связи репликации

Здесь вам нужно проверить, нет ли проблем, связанных с безопасностью. Для этого используйте DCDiag.exe:

Dcdiag /test:checksecurityerror

На экране 15 показан фрагмент вывода DCDiag.exe.

Фрагмент вывода DCDiag.exe
Экран 15. Фрагмент вывода DCDiag.exe

Как видите, вы получаете ошибку 8453, потому что группа безопасности Enterprise Read-Only Domain Controllers не имеет разрешения Replicating Directory Changes.

Чтобы решить проблему, вам нужно добавить отсутствующую запись контроля доступа – missing access control entry (ACE) в раздел Treeroot. В этом вам помогут следующие шаги:

1. На TRDC1 откройте оснастку ADSI Edit.

2. Правой кнопкой мыши щелкните DC=treeroot,DC=fabrikam,DC=com и выберите Properties.

3. Выберите вкладку Security.

4. Посмотрите разрешения на этот раздел. Отметьте, что нет записей для группы безопасности Enterprise Read-Only Domain Controllers.

5. Нажмите Add.

6. В окне Enter the object names to select наберите ROOTEnterprise Read-Only Domain Controllers.

7. Нажмите кнопку Check Names, затем выберите OK, если указатель объектов (object picker) разрешает имя.

8. В диалоговом окне Permissions для Enterprise Read-Only Domain Controllers снимите флажки Allow для следующих разрешений

*Read

*Read domain password & lockout policies («Чтение политики блокировки и пароля домена»)

*Read Other domain parameters

9. Выберите флажок Allow для разрешения Replicating Directory Changes, как показано на экране 16. Нажмите OK.

10. Вручную запустите Knowledge Consistency Checker (KCC), чтобы немедленно сделать перерасчет топологии входящей репликации на ChildDC2, выполнив команду

Repadmin /kcc childdc2
Включение разрешения Replicating Directory Change
Экран 16. Включение разрешения Replicating Directory Change

Данная команда заставляет KCC на каждом целевом сервере DC незамедлительно делать перерасчет топологии входящей репликации, добавляя снова раздел Treeroot.

Состояние репликации критически важно

Репликация во всех отношениях в лесу AD имеет решающее значение. Следует регулярно проводить ее диагностику, чтобы изменения были видны всем контроллерам домена, иначе могут возникать различные проблемы, в том числе связанные с аутентификацией. Проблемы репликации нельзя обнаружить сразу. Поэтому если вы пренебрегаете мониторингом репликации (в крайнем случае, периодически делайте проверку), то рискуете столкнуться с трудностями в самый неподходящий момент. Моей задачей было показать вам, как проверять статус репликации, обнаруживать ошибки и в то же время как справиться с четырьмя типичными проблемами репликации AD.

Листинг 1. Команды для удаления устаревших объектов из Reference DC

REM Команды для удаления устаревших объектов
REM из раздела Configuration.
Repadmin /removelingeringobjects childdc1.child.root.
contoso.com 70ff33ce-2f41-4bf4-b7ca-7fa71d4ca13e
«cn=configuration,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects childdc1.child.root.
contoso.com 3fe45b7f-e6b1-42b1-bcf4-2561c38cc3a6
«cn=configuration,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects childdc1.child.root.
contoso.com 0b457f73-96a4-429b-ba81-1a3e0f51c848
«cn=configuration,dc=root,dc=contoso,dc=com»
REM Команды для удаления устаревших объектов
REM из раздела ForestDNSZones.
Repadmin /removelingeringobjects childdc1.child.root.
contoso.com 70ff33ce-2f41-4bf4-b7ca-7fa71d4ca13e
«dc=forestdnszones,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects childdc1.child.root.
contoso.com 3fe45b7f-e6b1-42b1-bcf4-2561c38cc3a6
«dc=forestdnszones,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects childdc1.child.
root.contoso.com 0b457f73-96a4-429b-ba81-
1a3e0f51c848 «dc=forestdnszones,dc=root,
dc=contoso,dc=com»
REM Команды для удаления устаревших объектов
REM из раздела домена Root.
Repadmin /removelingeringobjects dc1.root.
contoso.com 3fe45b7f-e6b1-42b1-bcf4-2561c38cc3a6
«dc=root,dc=contoso,dc=com»
REM Команды для удаления устаревших объектов
REM из раздела DomainDNSZones.
Repadmin /removelingeringobjects dc1.root.
contoso.com 3fe45b7f-e6b1-42b1-bcf4-2561c38cc3a6
«dc=root,dc=contoso,dc=com»

Листинг 2. Команды для удаления устаревших объектов из остальных DC

REM Команды для удаления устаревших объектов
REM из раздела Configuration.
Repadmin /removelingeringobjects dc1.root.
contoso.com 0c559ee4-0adc-42a7-8668-e34480f9e604
«cn=configuration,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects dc2.root.
contoso.com 0c559ee4-0adc-42a7-8668-e34480f9e604
«cn=configuration,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects childdc2.child.root.
contoso.com 0b457f73-96a4-429b-ba81-1a3e0f51c848
«cn=configuration,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects trdc1.treeroot.
fabrikam.com 0c559ee4-0adc-42a7-8668-e34480f9e604
«cn=configuration,dc=root,dc=contoso,dc=com»
REM Команды для удаления устаревших объектов
REM из раздела ForestDNSZones.
Repadmin /removelingeringobjects dc1.root.contoso.
com 0c559ee4-0adc-42a7-8668-e34480f9e604
«dc=forestdnszones,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects dc2.root.contoso.
com 0c559ee4-0adc-42a7-8668-e34480f9e604
«dc=forestdnszones,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects childdc2.child.root.
contoso.com 0b457f73-96a4-429b-ba81-1a3e0f51c848
«dc=forestdnszones,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects trdc1.treeroot.
fabrikam.com 0c559ee4-0adc-42a7-8668-e34480f9e604
«dc=forestdnszones,dc=root,dc=contoso,dc=com»
REM Команды для удаления устаревших объектов
REM из раздела DomainDNSZones–Root.
Repadmin /removelingeringobjects dc2.child.root.
contoso.com 70ff33ce-2f41-4bf4-b7ca-7fa71d4ca13e
«dc=domaindnszones,dc=root,dc=contoso,dc=com»
REM Команды для удаления устаревших объектов
REM из раздела домена Child.
Repadmin /removelingeringobjects dc1.root.contoso.
com 0c559ee4-0adc-42a7-8668-e34480f9e604
«dc=child,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects dc2.root.contoso.
com 0c559ee4-0adc-42a7-8668-e34480f9e604
«dc=child,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects childdc2.child.root.
contoso.com 0b457f73-96a4-429b-ba81-1a3e0f51c848
«dc=child,dc=root,dc=contoso,dc=com»
Repadmin /removelingeringobjects trdc1.treeroot.
fabrikam.com 0c559ee4-0adc-42a7-8668-e34480f9e604
«dc=child,dc=root,dc=contoso,dc=com»
REM Команды для удаления устаревших объектов
REM из раздела DomainDNSZones-Child.
Repadmin /removelingeringobjects childdc2.child.root.
contoso.com 0c559ee4-0adc-42a7-8668-e34480f9e604
«dc=domaindnszones,dc=child,dc=root,dc=contoso,dc=com»
REM Команды для удаления устаревших объектов
REM из раздела домена TreeRoot.
Repadmin /removelingeringobjects childdc1.child.root.
contoso.com 0b457f73-96a4-429b-ba81-1a3e0f51c848
«dc=treeroot,dc=fabrikam,dc=com»
Repadmin /removelingeringobjects childdc2.child.root.
contoso.com 0b457f73-96a4-429b-ba81-1a3e0f51c848
«dc=treeroot,dc=fabrikam,dc=com»
Repadmin /removelingeringobjects dc1.root.contoso.com
0b457f73-96a4-429b-ba81-1a3e0f51c848
«dc=treeroot,dc=fabrikam,dc=com»
Repadmin /removelingeringobjects dc2.root.contoso.com
0b457f73-96a4-429b-ba81-1a3e0f51c848
«dc=treeroot,dc=fabrikam,dc=com»

Содержание

  1. Ldap error 81 server down win32 err 58
  2. Answered by:
  3. Question
  4. Answers
  5. All replies
  6. Ldap error 81 server down win32 err 58
  7. Answered by:
  8. Question
  9. Answers
  10. All replies
  11. Выявляем неполадки с репликацией Active Directory
  12. Исправление ошибки AD Replication Error -2146893022
  13. Обнаружение и устранение ошибки AD Replication Error 1908
  14. Устранение ошибки AD Replication Error 8606
  15. Устранение ошибки AD Replication Error 8453
  16. Состояние репликации критически важно

Ldap error 81 server down win32 err 58

This forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions.

Answered by:

Question

Hi, we are migrating from windows 2003 to windows server 2008 r2.

We have installed two DC/GC with Server 2008 R2, after upgrading the schema and the AD, and now we have event id 1202 every minute. When we run the repadmin /showrepl we have a message what indicate the «ldap error 81 (server down) win32 err 58»

The replication fails from the others DC/GC windows 2003

Answers

The problem was solved, in one of the GC 2003 I’ve run replmon and forced the replication,and then the replication works!.

The last remaining issue is the ports 3268/3269 are not receiving communications, even when they are open and waiting.

please upload the following files so we get a complete overview:

ipconfig /all >c:ipconfig.txt [from each DC/DNS Server]
dcdiag /v /c /d /e /s:dcname >c:dcdiag.txt
repadmin /showrepl dc* /verbose /all /intersite >c:repl.txt [«dc* is a place holder for the starting name of the DCs if they all begin the same (if more then one DC exists)]
dnslint /ad /s «DCipaddress» (http://support.microsoft.com/kb/321045)

As the output will become large, DON’T post them into the thread, please use Windows Sky Drive (skydrive.live.com) [with open access!] and add the link from it here. Also the /e in dcdiag scans the complete forest, so better run it on COB.

Meinolf Weber
MVP, MCP, MCTS
Microsoft MVP — Directory Services
My Blog: http://msmvps.com/blogs/mweber/

Disclaimer: This posting is provided AS IS with no warranties or guarantees and confers no rights.

Источник

Ldap error 81 server down win32 err 58

This forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions.

Answered by:

Question

Our environment has a root and several child domains running W2K8 SP2. For 1.5 days a server was down that has a replication partner for the same child domain in a difference site. After network services were restored, I ran KCC * from the root. All were successful except the down child domain. There I get the error: ‘[d:longhorndsdssrcutilrepadminrepldap.c, 1415] LDAP error 81 (Server Down) Win32 Err 58.’

All of the servers are online now. Would I still need to perform a metadata clean up? Or, will AD clean itself? If I need to clean up AD I am not certain of the steps involved with the clean up.

Answers

Metadata cleanup is performed to remove the DC & its references from the domain when either DC is crashed or permanently offline, which doesn’t look to be the case from your post. Since, DC was down for 1.5 days, reconnecting should make it work as this is not the big deal.

Make sure proper DNS is specified in child domain DC & all the DC related (DNS/ FRS/KDC/ Netlogon)services are working.

How many DC’s are there in the child domain? Could you post relevant error message from the event log.

I have outlined the metadata cleanup explanation & steps, but until DC is crashed or permanently offline metadata cleanup is not required.

Metadata Cleanup of a Domain controller

Regards

This posting is provided AS-IS with no warranties/guarantees and confers no rights.

if a DC was down for that short period of time you shouldn’t have any problem after reconnection, it should automatically start replicating. Before doing anything like metadata cleanup please upload the following files, so we can get an overview:

ipconfig /all >c:ipconfig.txt [from each DC/DNS Server]
dcdiag /v /c /d /e /s:dcname >c:dcdiag.txt
repadmin /showrepl dc* /verbose /all /intersite >c:repl.txt [«dc* is a place holder for the starting name of the DCs if they all begin the same (if more then one DC exists)]
dnslint /ad /s «DCipaddress» (http://support.microsoft.com/kb/321045)

As the output will become large, DON’T post them into the thread, please use Windows Sky Drive (skydrive.live.com) [with open access!] and add the link from it here. Also the /e in dcdiag scans the complete forest, so better run it on COB.

Best regards Meinolf Weber Disclaimer: This posting is provided «AS IS» with no warranties or guarantees , and confers no rights.

Источник

Выявляем неполадки с репликацией Active Directory

Как устранить четыре общие проблемы репликации

Один из механизмов Active Directory (AD), с которым могут быть связаны всевозможные затруднения, это репликация. Репликация – критически важный процесс в работе одного или более доменов или контроллеров домена (DC), и не важно, находятся они на одном сайте или на разных. Неполадки с репликацией могут привести к проблемам с аутентификацией и доступом к сетевым ресурсам. Обновления объектов AD реплицируются на контроллеры домена, чтобы все разделы были синхронизированы. В крупных компаниях использование большого количества доменов и сайтов – обычное дело. Репликация должна происходить внутри локального сайта, так же как дополнительные сайты должны сохранять данные домена и леса между всеми DC.

В этой статье речь пойдет о методах выявления проблем с репликацией в AD. Кроме того, я покажу, как находить и устранять неисправности и работать с четырьмя наиболее распространенными ошибками репликации AD:

  • Error 2146893022 (главное конечное имя неверно);
  • Error 1908 (не удалось найти контроллер домена);
  • Error 8606 (недостаточно атрибутов для создания объекта);
  • Error 8453 (доступ к репликации отвергнут).

Вы также узнаете, как анализировать метаданные репликации с помощью таких инструментов, как AD Replication Status Tool, встроенная утилита командной строки RepAdmin.exe и Windows PowerShell.

Для всестороннего рассмотрения я буду использовать лес Contoso, который показан на рисунке. В таблице 1 перечислены роли, IP-адреса и настройки DNS-клиента для компьютеров данного леса.

Рисунок. Архитектура леса

Для обнаружения неполадок с репликацией AD запустите AD Replication Status Tool на рабочей станции администратора в корневом домене леса. Например, вы открываете этот инструмент из системы Win8Client, а затем нажимаете кнопку Refresh Replication Status для уверенности в четкой коммуникации со всеми контроллерами домена. В таблице Discovery Missing Domain Controllers на странице Configuration/Scope Settings инструмента можно увидеть два недостающих контроллера домена, как показано на экране 1.

Экран 1. Два недостающих контроллера домена

В таблице Replication Status Collection Details вы можете проследить статус репликации контроллеров домена, которые никуда не пропадали, как показано на экране 2.

Экран 2. Статус репликации контроллеров домена

Пройдя на страницу Replication Status Viewer, вы обнаружите некоторые ошибки в репликации. На экране 3 видно, что возникает немалое число ошибок репликации, возникающих в лесу Contoso. Из пяти контроллеров домена два не могут видеть другие DC, а это означает, что репликация не будет происходить на контроллерах домена, которые не видны. Таким образом, пользователи, подключающиеся к дочерним DC, не будут иметь доступ к самой последней информации, что может привести к проблемам.

Экран 3. Ошибки репликации, возникающие в лесу Contoso

Поскольку ошибки репликации все же возникают, полезно задействовать утилиту командной строки RepAdmin.exe, которая помогает получить отчет о состоянии репликации по всему лесу. Чтобы создать файл, запустите следующую команду из Cmd.exe:

Проблема с двумя DC осталась, соответственно вы увидите два вхождения LDAP error 81 (Server Down) Win32 Err 58 на экране, когда будет выполняться команда. Мы разберемся с этими ошибками чуть позже. А теперь откройте ShowRepl.csv в Excel и выполните следующие шаги:

  1. Из меню Home щелкните Format as table и выберите один из стилей.
  2. Удерживая нажатой клавишу Ctrl, щелкните столбцы A (Showrepl_COLUMNS) и G (Transport Type). Правой кнопкой мыши щелкните в этих столбцах и выберите Hide.
  3. Уменьшите ширину остальных столбцов так, чтобы был виден столбец K (Last Failure Status).
  4. Для столбца I (Last Failure Time) нажмите стрелку вниз и отмените выбор 0.
  5. Посмотрите на дату в столбце J (Last Success Time). Это последнее время успешной репликации.
  6. Посмотрите на ошибки в столбце K (Last Failure Status). Вы увидите те же ошибки, что и в AD Replication Status Tool.

Таким же образом вы можете запустить средство RepAdmin.exe из PowerShell. Для этого сделайте следующее:

1. Перейдите к приглашению PowerShell и введите команду

2. В появившейся сетке выберите Add Criteria, затем Last Failure Status и нажмите Add.

3. Выберите подчеркнутое слово голубого цвета contains в фильтре и укажите does not equal.

4. Как показано на экране 4, введите 0 в поле, так, чтобы отфильтровывалось все со значением 0 (успех) и отображались только ошибки.

Экран 4. Задание фильтра

Теперь, когда вы знаете, как проверять статус репликации и обнаруживать ошибки, давайте посмотрим, как выявлять и устранять четыре наиболее распространенные неисправности.

Итак, начнем с устранения ошибки -2146893022, возникающей между DC2 и DC1. Из DC1 запустите команду Repadmin для проверки статуса репликации DC2:

На экране 5 показаны результаты, свидетельствующие о том, что репликация перестала выполняться, поскольку возникла проблема с DC2: целевое основное имя неверно. Тем не менее, описание ошибки может указать ложный путь, поэтому приготовьтесь копать глубже.

Экран 5. Проблема с DC2 — целевое основное имя неверно

Во-первых, следует определить, есть ли базовое подключение LDAP между системами. Для этого запустите следующую команду из DC2:

На экране 5 видно, что вы получаете сообщение об ошибке LDAP. Далее попробуйте инициировать репликацию AD с DC2 на DC1:

И на этот раз отображается та же ошибка с главным именем, как показано на экране 5. Если открыть окно Event Viewer на DC2, вы увидите событие с Event ID 4 (см. экран 6).

Экран 6. Сообщение о событии с Event ID 4

Выделенный текст в событии указывает на причину ошибки. Это означает, что пароль учетной записи компьютера DC1 отличается от пароля, который хранится в AD для DC1 в Центре распределения ключей – Key Distribution Center (KDC), который в данном случае запущен на DC2. Значит, следующая наша задача – определить, соответствует ли пароль учетной записи компьютера DC1 тому, что хранится на DC2. В командной строке на DC1 введите две команды:

Далее откройте файлы dc1objmeta1.txt и dc1objmeta2.txt, которые были созданы, и посмотрите на различия версий для dBCSPwd, UnicodePWD, NtPwdHistory, PwdLastSet и lmPwdHistory. В нашем случае файл dc1objmeta1.txt показывает версию 19, тогда как версия в файле dc1objmeta2.txt – 11. Таким образом, сравнивая эти два файла, мы видим, что DC2 содержит информацию о старом пароле для DC1. Операция Kerberos не удалась, потому что DC1 не смог расшифровать билет службы, представленный DC2.

KDC, запущенный на DC2, не может быть использован для Kerberos вместе с DC1, так как DC2 содержит информацию о старом пароле. Чтобы решить эту проблему, вы должны заставить DC2 использовать KDC на DC1, чтобы завершить репликацию. Для этого вам, в первую очередь, необходимо остановить службу KDC на DC2:

Теперь требуется начать репликацию корневого раздела Root:

Следующим вашим шагом будет запуск двух команд Repadmin /showobjmeta снова, чтобы убедиться в том, что версии совпадают. Если все хорошо, вы можете перезапустить службу KDC:

Теперь, когда мы устранили ошибку -2146893022, давайте перейдем к ошибке репликации AD 1908, где DC1, DC2 и TRDC1 так и не удалось выполнить репликацию из ChildDC1. Решить проблему можно следующим образом. Используйте Nltest.exe для создания файла Netlogon.log, чтобы выявить причину ошибки 1908. Прежде всего, включите расширенную регистрацию на DC1, запустив команду:

Теперь, когда расширенная регистрация включена, запустите репликацию между DC – так все ошибки будут зарегистрированы. Этот шаг поможет запустить три команды для воспроизведения ошибок. Итак, во-первых, запустите следующую команду на DC1:

Результат, показанный на экране 7, говорит о том, что репликация не состоялась, потому что DC домена не может быть найден.

Экран 7. Репликация не состоялась, потому что DC домена не может быть найден

Во-вторых, из DC1 попробуйте определить местоположение KDC в домене child.root.contoso.com с помощью команды:

Результаты на экране 7 свидетельствуют, что такого домена нет. В-третьих, поскольку вы не можете найти KDC, попытайтесь установить связь с любым DC в дочернем домене, используя команду:

В очередной раз результаты говорят о том, что нет такого домена, как показано на экране 7.

Теперь, когда вы воспроизвели все ошибки, просмотрите файл Netlogon.log, созданный в папке C:Windowsdebug. Откройте его в «Блокноте» и найдите запись, которая начинается с DSGetDcName function called. Обратите внимание, что записей с таким вызовом будет несколько. Вам нужно найти запись, имеющую те же параметры, что вы указали в команде Nltest (Dom:child и Flags:KDC). Запись, которую вы ищете, будет выглядеть так:

Вы должны просмотреть начальную запись, равно как и последующие, в этом потоке. В таблице 2 представлен пример потока 3372. Из этой таблицы следует, что поиск DNS записи KDC SRV в дочернем домене был неудачным. Ошибка 1355 указывает, что заданный домен либо не существует, либо к нему невозможно подключиться.

Поскольку вы пытаетесь подключиться к Child.root.contoso.com, следующий ваш шаг – выполнить для него команду ping из DC1. Скорее всего, вы получите сообщение о том, что хост не найден. Информация из файла Netlogon.log и ping-тест указывают на возможные проблемы в делегировании DNS. Свои подозрения вы можете проверить, сделав тест делегирования DNS. Для этого выполните следующую команду на DC1:

На экране 8 показан пример файла Dnstest.txt. Как вы можете заметить, это проблема DNS. Считается, что IP-адрес 192.168.10.1 – адрес для DC1.

Экран 8. Пример файла Dnstest.txt

Чтобы устранить проблему DNS, сделайте следующее:

1. На DC1 откройте консоль управления DNS.

2. Разверните Forward Lookup Zones, разверните root.contoso.com и выберите child.

3. Щелкните правой кнопкой мыши (как в родительской папке) на записи Name Server и выберите пункт Properties.

4. Выберите lamedc1.child.contoso.com и нажмите кнопку Remove.

5. Выберите Add, чтобы можно было добавить дочерний домен сервера DNS в настройки делегирования.

6. В окне Server fully qualified domain name (FQDN) введите правильный сервер childdc1.child.root.contoso.com.

7. В окне IP Addresses of this NS record введите правильный IP-адрес 192.168.10.11.

8. Дважды нажмите кнопку OK.

9. Выберите Yes в диалоговом окне, где спрашивается, хотите ли вы удалить связующую запись (glue record) lamedc1.child.contoso.com [192.168.10.1]. Glue record – это запись DNS для полномочного сервера доменных имен для делегированной зоны.

10. Используйте Nltest.exe для проверки, что вы можете найти KDC в дочернем домене. Примените опцию /force, чтобы кэш Netlogon не использовался:

11. Протестируйте репликацию AD из ChildDC1 на DC1 и DC2. Это можно сделать двумя способами. Один из них – выполнить команду

Другой подход заключается в использовании оснастки Active Directory Sites и Services консоли Microsoft Management Console (MMC), в этом случае правой кнопкой мыши щелкните DC и выберите Replicate Now, как показано на экране 9. Вам нужно это сделать для DC1, DC2 и TRDC1.

Экран 9. Использование оснастки Active Directory Sites и?Services

После этого вы увидите диалоговое окно, как показано на экране 10. Не учитывайте его, нажмите OK. Я вкратце расскажу об этой ошибке.

Экран 10. Ошибка при репликации

Когда все шаги выполнены, вернитесь к AD Replication Status Tool и обновите статус репликации на уровне леса. Ошибки 1908 больше быть не должно. Ошибка, которую вы видите, это ошибка 8606 (недостаточно атрибутов для создания объекта), как отмечалось на экране 10. Это следующая трудность, которую нужно преодолеть.

Устаревший объект (lingering object) – это объект, который присутствует на DC, но был удален на одном или нескольких других DC. Ошибка репликации AD 8606 и ошибка 1988 в событиях Directory Service – хорошие индикаторы устаревших объектов. Важно учитывать, что можно успешно завершить репликацию AD и не регистрировать ошибку с DC, содержащего устаревшие объекты, поскольку репликация основана на изменениях. Если объекты не изменяются, то реплицировать их не нужно. По этой причине, выполняя очистку устаревших объектов, вы допускаете, что они есть у всех DC (а не только DCs logging errors).

Чтобы устранить проблему, в первую очередь убедитесь в наличии ошибки, выполнив следующую команду Repadmin на DC1:

Вы увидите сообщение об ошибке, как показано на экране 11. Кроме того, вы увидите событие с кодом в Event Viewer DC1 (см. экран 12). Обратите внимание, что событие с кодом 1988 только дает отчет о первом устаревшем объекте, который вам вдруг встретился. Обычно таких объектов много.

Экран 11. Ошибка из-за наличия устаревшего объекта
Экран 12. Событие с кодом 1988

Вы должны скопировать три пункта из информации об ошибке 1988 в событиях: идентификатор globally unique identifier (GUID) устаревшего объекта, сервер-источник (source DC), а также уникальное, или различающееся, имя раздела – distinguished name (DN). Эта информация позволит определить, какой DC имеет данный объект.

Прежде всего, используйте GUID объекта (в данном случае 5ca6ebca-d34c-4f60-b79c-e8bd5af127d8) в следующей команде Repadmin, которая отправляет результаты в файл Objects.txt:

Если вы откроете файл Objects.txt, то увидите, что любой DC, который возвращает метаданные репликации для данного объекта, содержит один или более устаревших объектов. DC, не имеющие копии этого объекта, сообщают статус 8439 (уникальное имя distinguished name, указанное для этой операции репликации, недействительно).

Затем вам нужно, используя GUID объект Directory System Agent (DSA) DC1, идентифицировать все устаревшие объекты в разделе Root на DC2. DSA предоставляет доступ к физическому хранилищу информации каталога, находящейся на жестком диске. В AD DSA – часть процесса Local Security Authority. Для этого выполните команду:

В Showrepl.txt GUID объект DSA DC1 появляется вверху файла и выглядит следующим образом:

Ориентируясь на эту информацию, вы можете применить следующую команду, чтобы удостовериться в существовании устаревших объектов на DC2, сравнив его копию раздела Root с разделом Root DC1.

Далее вы можете просмотреть журнал регистрации событий Directory Service на DC2, чтобы узнать, есть ли еще какие-нибудь устаревшие объекты. Если да, то о каждом будет сообщаться в записи события 1946. Общее число устаревших объектов для проверенного раздела будет отмечено в записи события 1942.

Вы можете удалить устаревшие объекты несколькими способами. Предпочтительно использовать ReplDiag.exe. В качестве альтернативы вы можете выбрать RepAdmin.exe.

Используем ReplDiag.exe. С вашей рабочей станции администратора в корневом домене леса, а в нашем случае это Win8Client, вы должны выполнить следующие команды:

Первая команда удаляет объекты. Вторая команда служит для проверки успешного завершения репликации (иными словами, ошибка 8606 больше не регистрируется). Возвращая команды Repadmin /showobjmeta, вы можете убедиться в том, что объект был удален из всех, что объект был удален DC. Если у вас есть контроллер только для чтения read-only domain controller (RODC) и он содержал данный устаревший объект, вы заметите, что он все еще там находится. Дело в том, что текущая версия ReplDiag.exe не удаляет объекты из RODC. Для очистки RODC (в нашем случае, ChildDC2) выполните команду:

После этого просмотрите журнал событий Directory Service на ChildDC2 и найдите событие с кодом 1939. На экране 13 вы видите уведомление о том, что устаревшие объекты были удалены.

Экран 13. Сообщение об удалении устаревших объектов

Используем RepAdmin.exe. Другой способ, позволяющий удалить устаревшие объекты – прибегнуть к помощи RepAdmin.exe. Сначала вы должны удалить устаревшие объекты главных контроллеров домена (reference DC) с помощью кода, который видите в листинге 1. После этого необходимо удалить устаревшие объекты из всех остальных контроллеров домена (устаревшие объекты могут быть показаны или на них могут обнаружиться ссылки на нескольких контроллерах домена, поэтому убедитесь, что вы удалили их все). Необходимые для этой цели команды приведены в листинге 2.

Как видите, использовать ReplDiag.exe гораздо проще, чем RepAdmin.exe, поскольку вводить команд вам придется намного меньше. Ведь чем больше команд, тем больше шансов сделать опечатку, пропустить команду или допустить ошибку в командной строке.

Предыдущие ошибки репликации AD были связаны с невозможностью найти другие контроллеры домена. Ошибка репликации AD с кодом состояния 8453 возникает, когда контроллер домена видит другие DC, но не может установить с ними связи репликации.

Например, предположим, что ChildDC2 (RODC) в дочернем домене не уведомляет о себе как о сервере глобального каталога – Global Catalog (GC). Для получения статуса ChildDC2 запустите следующие команды на ChildDC2:

Данная команда отправляет результаты Repl.txt. Если вы откроете этот текстовый файл, то увидите вверху следующее:

Если вы внимательно посмотрите на раздел Inbound Neighbors, то увидите, что раздел DC=treeroot,DC=fabrikam,DC=com отсутствует, потому что он не реплицируется. Взгляните на кнопку файла – вы увидите ошибку:

Эта ошибка означает, что ChildDC2 не может добавить связь репликации (replication link) для раздела Treeroot. Как показано на экране 14, данная ошибка также записывается в журнал регистрации событий Directory Services на ChildDC2 как событие с кодом 1926.

Экран 14. Отсутствие связи репликации

Здесь вам нужно проверить, нет ли проблем, связанных с безопасностью. Для этого используйте DCDiag.exe:

На экране 15 показан фрагмент вывода DCDiag.exe.

Экран 15. Фрагмент вывода DCDiag.exe

Как видите, вы получаете ошибку 8453, потому что группа безопасности Enterprise Read-Only Domain Controllers не имеет разрешения Replicating Directory Changes.

Чтобы решить проблему, вам нужно добавить отсутствующую запись контроля доступа – missing access control entry (ACE) в раздел Treeroot. В этом вам помогут следующие шаги:

1. На TRDC1 откройте оснастку ADSI Edit.

2. Правой кнопкой мыши щелкните DC=treeroot,DC=fabrikam,DC=com и выберите Properties.

3. Выберите вкладку Security.

4. Посмотрите разрешения на этот раздел. Отметьте, что нет записей для группы безопасности Enterprise Read-Only Domain Controllers.

6. В окне Enter the object names to select наберите ROOTEnterprise Read-Only Domain Controllers.

7. Нажмите кнопку Check Names, затем выберите OK, если указатель объектов (object picker) разрешает имя.

8. В диалоговом окне Permissions для Enterprise Read-Only Domain Controllers снимите флажки Allow для следующих разрешений

*Read domain password & lockout policies («Чтение политики блокировки и пароля домена»)

*Read Other domain parameters

9. Выберите флажок Allow для разрешения Replicating Directory Changes, как показано на экране 16. Нажмите OK.

10. Вручную запустите Knowledge Consistency Checker (KCC), чтобы немедленно сделать перерасчет топологии входящей репликации на ChildDC2, выполнив команду

Экран 16. Включение разрешения Replicating Directory Change

Данная команда заставляет KCC на каждом целевом сервере DC незамедлительно делать перерасчет топологии входящей репликации, добавляя снова раздел Treeroot.

Состояние репликации критически важно

Репликация во всех отношениях в лесу AD имеет решающее значение. Следует регулярно проводить ее диагностику, чтобы изменения были видны всем контроллерам домена, иначе могут возникать различные проблемы, в том числе связанные с аутентификацией. Проблемы репликации нельзя обнаружить сразу. Поэтому если вы пренебрегаете мониторингом репликации (в крайнем случае, периодически делайте проверку), то рискуете столкнуться с трудностями в самый неподходящий момент. Моей задачей было показать вам, как проверять статус репликации, обнаруживать ошибки и в то же время как справиться с четырьмя типичными проблемами репликации AD.

Листинг 1. Команды для удаления устаревших объектов из Reference DC

Листинг 2. Команды для удаления устаревших объектов из остальных DC

Источник

Обновлено 04.05.2022

Repadmin logoДобрый день! Уважаемые читатели и гости одного из лучших IT блогов Pyatilistnik.org. Не так давно я вам подробно рассказывал из каких компонентов и служб состоит Active Directory. Сегодня я хочу дополнить данную публикацию и подробно рассказать про утилиту командной строки Repadmin, благодаря ей я вас научу диагностировать репликацию между контроллерами домена, покажу как находить и решать проблемы в вашей доменной инфраструктуре. Каждый системный администратор, просто обязан ее знать и уметь ей пользоваться, если вы еще не из их числа, то давайте это исправлять.

Что такое Repadmin?

Если вы работаете с несколькими доменами Active Directory или сайтами AD, то вы обязательно столкнетесь с проблемами в какой-то момент, особенно в процессе репликации. Репликация, это самый важный жизненный цикл в доменных службах. Эта репликация важна, так как ее отсутствие может вызвать проблемы с аутентификацией. В свою очередь, это может создать проблемы с доступом к ресурсам в сети. Компания Microsoft это понимает, как никто другой и создала для этих задач отдельную утилиту Repadmin.

Repadmin — это инструмент командной строки, для диагностики и устранения проблем репликации Active Directory. Repadmin можно использовать для просмотра топологии репликации с точки зрения каждого контроллера домена. Кроме того, вы можете использовать Repadmin, чтобы вручную создать топологию репликации, инициировать события репликации между контроллерами домена и просматривать метаданные репликации и векторы актуальности (UTDVEC). Вы также можете использовать Repadmin.exe для мониторинга относительной работоспособности леса доменных служб Active Directory (AD DS).

Как установить Repadmin?

Repadmin.exe встроен в Windows Server 2008 и выше, вы легко найдете его и на Windows Server 2019. Он доступен, если у вас установлена роль AD DS или сервера AD LDS. Он также доступен в клиентских ОС, таких как Windows 10, если вы устанавливаете инструменты доменных служб Active Directory, которые являются частью средств удаленного администрирования сервера (RSAT).

Требования для использования Repadmin

использование Repadmin требует учетных данных администратора на каждом контроллере домена, на который нацелена команда. Члены группы «Администраторы домена» имеют достаточные разрешения для запуска repadmin на контроллерах домена в этом домене. Члены группы «Администраторы предприятия» по умолчанию имеют права в каждом домене леса. Если вы запустите утилиту без необходимых прав, то вы получите сообщение:

Ошибка функции DsBindWithCred для компьютера, состояние ошибки 1753 (0x6d9):
В системе отображения конечных точек не осталось доступных конечных точек.

Ошибка функции DsBindWithCred для компьютера, состояние ошибки 1753 (0x6d9)

Вы также можете делегировать конкретные разрешения, необходимые для просмотра и управления состоянием репликации.

Основные ключи Repadmin

Запустите командную строку от имени администратора или откройте PowerShell в режиме администратора и выполните команду:

В результате вы получите справку по утилите.

Теперь опишу вам за что отвечает каждый ключ:

  • /kcc — Принудительно проверяет согласованность (Knowledge Consistency Checker (KCC)) на целевых контроллерах домена, чтобы немедленно пересчитать топологию входящей репликации.
  • /prp — Можно просматривать и изменять политику репликации паролей (PRP) для контроллеров домена только для чтения (RODC).
  • /queue — Отображает запросы входящей репликации, которые необходимо обработать контроллеру домена, чтобы получить последние данные от партнеров по репликации, у которых более свежие данные.
  • /replicate — Запускает немедленную репликацию указанного раздела каталога на целевой контроллер домена с исходного контроллера домена.
  • /replsingleobj — Реплицирует один (отдельный) объект между любыми двумя контроллерами домена, которые имеют общие разделы каталога.
  • /replsummary — Операция replsummary быстро и кратко обобщает состояние репликации и относительную работоспособность леса. Определяет контроллеры домена, которые не выполняют входящую или исходящую репликацию, и суммирует результаты в отчете.
  • /rodcpwdrepl — Запускает репликацию паролей для заданных пользователей с источника (контроллера домена концентратора) на один или более доступных только для чтения контроллер домена.
  • /showattr — Отображает атрибуты объекта.
  • /showobjmeta — Отображает метаданные репликации для указанного объекта, хранящиеся в Active Directory, например, идентификатор атрибута, номер версии, исходящий и локальный USN, а также глобальный уникальный идентификатор GUID исходящего сервера (сервера-отправителя) и метку даты и времени.
  • /showrepl — Отображает состояние репликации, когда указанный контроллер домена последний раз пытался выполнить входящую репликацию разделов Active Directory.
  • /showutdvec — Отображает наибольший поддерживаемый последовательный номер обновления (USN), который в указанной копии контроллера домена Active Directory показан как поддерживаемый для этой копии и транзитивных партнеров.
  • /syncall Синхронизирует указанный контроллер домена со всеми партнерами репликации.

Основные ключи Repadmin

Дополнительные параметры

  • /u: — Указание домена и имени пользователя с обратной косой чертой в качестве разделителя {доменпользователь}, у которого имеются разрешения на выполнение операций Active Directory. UPN-вход не поддерживается.
  • /pw:— Задание пароля для пользователя, указанного в параметре /u.
  • /retry — Этот параметр вызывает повтор попытки создать привязку к конечному контроллеру домена, когда при первой попытке произошел сбой с одним из следующих состояний ошибки ( 1722 0x6ba : «Сервер RPC недоступен» или 1753 / 0x6d9 : «Отсутствуют конечные точки, доступные из сопоставителя конечных точек»)
  • /csv — Применяется с параметром /showrepl для вывода результатов в формате значений, разделенных запятыми (CSV).

Просмотр общего состояния репликации

Эта команда быстро покажет вам общее состояние репликации.

В результате вы увидите присутствуют ли у вас сбои при репликации. временные дельты, количество ошибок. Вы можете заметите, что отчет разделен на два основных раздела — DSA-источник и DSA-адресат.

repadmin Просмотр общего состояния репликации

Обратите внимание, что одни и те же серверы перечислены в обоих разделах. Причина этого заключается в том, что Active Directory использует модель с несколькими основными доменами. Другими словами, обновления Active Directory могут быть записаны на любой контроллер домена (с заметными исключениями контроллеры домена только для чтения). Эти обновления затем реплицируются на другие контроллеры домена в домене. По этой причине вы видите одинаковые контроллеры домена в списке как DSA-источника, так и получателя. Если бы мой домен содержал какие-либо контроллеры домена только для чтения, они были бы перечислены только в разделе DSA назначения.

Сводный отчет о репликации не просто перечисляет контроллеры домена, в нем также перечислены самые большие дельты репликации. Вы также можете просмотреть общее количество попыток репликации, которые были недавно предприняты, а также количество неудачных попыток и увидеть процент попыток, которые привели к ошибке.

repadmin /replsummary /bysrc

repadmin /replsummary /bysrc

Ключ /bysrc — Суммирует состояние репликации для всех контроллеров домена, на которые реплицирует данный исходный контроллер домена. В отчете вы получите данные только по исходному DSA.

repadmin /replsummary /bydest

Ключ /bydest — Суммирует состояние репликации для всех контроллеров домена, с которых реплицирует данный целевой контроллер домена. Отображает только конечный DSA.

Ключ /sort — Сортирует выходные данные по столбцам.

  • delta: сортирует результаты в соответствии с наименьшим значением дельта для каждого контроллера домена источника или назначения.
  • partners: сортирует список результатов по количеству партнеров по репликации для каждого контроллера домена.
  • failures: сортирует список результатов по количеству сбоев репликации партнеров для каждого контроллера домена.
  • error: сортирует список результатов по последнему результату репликации (коду ошибки), который блокирует репликацию для каждого контроллера домена. Это поможет вам устранить причину сбоя для контроллеров домена, которые выходят из строя с общими ошибками.
  • percent: сортирует список результатов по проценту ошибок репликации партнера для каждого контроллера домена. (Это рассчитывается путем деления количества отказов на общее количество попыток, а затем умножения на 100; то есть отказы/общее число попыток *100.) Это поможет вам расставить приоритеты в работе по устранению неполадок путем определения контроллеров домена, которые испытывают самую высокую частота ошибок репликации.
  • unresponsive: сортирует список результатов по именам партнеров, которые не отвечают на запросы репликации для каждого контроллера домена.

Repadmin и проверка репликации Active Directory

Пример применения дополнительных ключей

repadmin /replsummary /bysrc /bydest /sort:delta

Вы можете указать параметры /bysrc и /bydest одновременно. В этом случае Repadmin сначала отображает таблицу параметров /bysrc, а затем таблицу параметров /bydest. Если оба параметра / bysrc и /bydest отсутствуют, то Repadmin отображает параметр с наименьшим количеством ошибок партнеров.

Вот пример ошибки «1722: The RPC server is unavailable», которую может показать repadmin с ключом replsummary.

"1722: The RPC server is unavailable"

Просмотр топологии репликации и ошибки

Команда repadmin /showrepl помогает понять топологию и ошибки репликации. Он сообщает, о состоянии каждого исходного контроллера домена, с которого у получателя есть объект входящего соединения. Отчет о состоянии делится на разделы каталога.

repadmin Просмотр топологии репликации и ошибкиac

Административная рабочая станция, на которой вы запускаете Repadmin, должна иметь сетевое подключение удаленного вызова процедур (RPC) ко всем контроллерам домена, на которые нацелен параметр DSA_LIST. Ошибки репликации могут быть вызваны исходным контроллером домена, контроллером домена назначения или любым компонентом процесса репликации, включая базовую сеть.

Команда отображает GUID каждого объекта, который был первоначально реплицирован, а также результат репликации. Это полезно, чтобы обнаружить возможные проблемы. Как видите в моем примере, все репликации успешно пройдены. Если хотите получить максимально подробную информацию, о топологии репликации, то добавьте ключ «*».

В моем примере вы можете увидеть ошибку:

Repadmin: выполнение команды /Showrepl контроллере домена dc03.child.root.pyatilistnik.org с полным доступом
Ошибка LDAP: 82 (Локальная ошибка) ошибка Win32: 8341. (The target principal name is incorrect)

Ошибка LDAP: 82 (Локальная ошибка) ошибка Win32: 8341. (The target principal name is incorrect)

В приведенном выше примере решение проблемы заключается в остановке службы «Центр распространения ключей Kerberos (Kerberos key distribution center)«. Запустите ее. В редких случаях может потребоваться перезапустить службу «Доменные службы Active Directory«. Затем перезапустите процесс репликации через сайты и службы Active Directory. Проверьте свои журналы, и репликация должна быть успешной. Так же вы можете использовать и дополнительные ключи:

  • DSA_LIST — Задает имя хоста контроллера домена или списка контроллеров домена, разделенных в списке одним пробелом.
  • Source DSA object GUID — GUID исходного объекта DSA. Указывает уникальное шестнадцатеричное число, которое идентифицирует объект, чьи события репликации перечислены.
  • Naming Context (Контекст именования) — Определяет отличительное имя раздела каталога для репликации.
  • /verbose — Отображает дополнительную информацию об исходных партнерах, от которых контроллер домена назначения выполняет входящую репликацию. Информация включает в себя полностью уточненное CNAME, идентификатор вызова, флаги репликации и значения порядкового номера обновления (USN) для исходных обновлений и реплицированных обновлений.
  • /NoCache — Указывает, что глобально уникальные идентификаторы (GUID) остаются в шестнадцатеричной форме. По умолчанию GUID переводятся в строки.
  • /repsto — Перечисляет контроллеры домена-партнера, с которыми целевые контроллеры домена используют уведомление об изменении для выполнения исходящей репликации. (Контроллеры домена-партнера в этом случае являются контроллерами домена на том же сайте Active Directory, что и исходный контроллер домена, и контроллеры домена, которые находятся на удаленных сайтах, на которых включено уведомление об изменениях.) Этот список добавляется в разделе СОБСТВЕННЫЕ СОСЕДИ ДЛЯ УВЕДОМЛЕНИЙ ОБ ИЗМЕНЕНИЯХ (OUTBOUND NEIGHBORS FOR CHANGE NOTIFICATIONS ).
  • /conn — Добавляет раздел KCC CONNECTION OBJECTS в Repadmin, в котором перечислены все соединения и причины их создания.
  • /all — Запускается как /repsto и  Conn параметры.
  • /errorsonly — Отображает состояние репликации только для исходных контроллеров домена, с которыми конечный контроллер домена сталкивается с ошибками репликации.

repadmin /showrepl * /errorsonly

  • /intersite — Отображает состояние репликации для подключений от контроллеров домена на удаленных сайтах, с которых контроллер домена, указан в параметре DSA_LIST, выполняет входящую репликацию.
  • /CSV — Экспорт или вывод результатов в формате с разделителями-запятыми (CSV).

Repadmin и диагностика репликации Active Directory

Просмотр очереди репликации

Бывают ситуации при которых у вас может возникать очередь на входящие запросы репликации. Основными причинами могут выступать:

  • Слишком много одновременных партнеров по репликации
  • Высокая скорость изменения объектов в доменных службах Active Directory (AD DS), предположим что у вас одновременно с помощью скрипта было сформировано 1000 новых групп или создано 1000 пользователей.
  • Недостаточная пропускная способность CPU или сети, которые реплицирует контроллер домена

Чтобы посмотреть очередь репликации на контроллере домена, вам нужно воспользоваться ключом /Queue:

Repadmin Просмотр очереди репликации

Чаще всего у вас количество объектов в очереди будет нулевым, но если сайтов много, то могут быть небольшие очереди. Если вы заметили элементы, стоящие в очереди, и они никак не очищаются, у вас есть проблема. Вот пример сообщения, где очередь репликации не равна нулю.

Repadmin: выполнение команды /queue контроллере домена localhost с полным доступом
Очередь содержит 1 элементов.
Текущая задача начала выполняться в 2020-02-18 11:41:07.
Задача выполняется 0 мин 0 сек.
[[412] Поставлено в очередь 2020-02-18 11:41:07 с приоритетом 250
SYNC FROM SOURCE
NC DC=root,DC=pyatilistnik,DC=org
DSA Default-First-Site-NameDC01
GUID объекта DSA 92925497-671b-44f0-8d13-420fc4d5bbd1
адр. транспорта DSA 92925497-671b-44f0-8d13-420fc4d5bbd1._msdcs.root.pyatilistnik.org
ASYNCHRONOUS_OPERATION WRITEABLE NOTIFICATION

Repadmin запрос на количество ожидающих объектов репликации

Принудительная проверка топологии репликации

Repadmin умеет принудительно проверять топологию репликации на каждом целевом контроллере домена, чтобы немедленно пересчитать топологию входящей репликации.

По умолчанию каждый контроллер домена выполняет этот пересчет каждые 15 минут и если есть проблемы вы можете видеть в логах Windows событие с кодом 1311.

Выполните эту команду для устранения ошибок KCC или для повторной оценки необходимости создания новых объектов подключения от имени целевых контроллеров домена.

так же можно запустить для определенного сайта для этого используется параметр site:

Repadmin.exe: Принудительная проверка топологии репликации

Repadmin: выполнение команды /kcc контроллере домена dc01.root.pyatilistnik.org с полным доступом
Root
Текущий Параметры сайта: (none)
Проверка согласованности на dc01.root.pyatilistnik.org выполнена успешно.

Repadmin: выполнение команды /kcc контроллере домена dc03.child.root.pyatilistnik.org с полным доступом
Default-First-Site-Name
Текущий Параметры сайта: (none)
Проверка согласованности на dc03.child.root.pyatilistnik.org выполнена успешно.

Repadmin: выполнение команды /kcc контроллере домена dc02.root.pyatilistnik.org с полным доступом
Root
Текущий Параметры сайта: (none)
Проверка согласованности на dc02.root.pyatilistnik.org выполнена успешно.

Repadmin: выполнение команды /kcc контроллере домена dc04.child.root.pyatilistnik.org с полным доступом
Default-First-Site-Name
Текущий Параметры сайта: (none)
Проверка согласованности на dc04.child.root.pyatilistnik.org выполнена успешно.

У /kcc есть дополнительный ключ /async — Указывает, что репликация является асинхронной. То есть Repadmin запускает событие репликации, но не ожидает немедленного ответа от контроллера домена назначения. Используйте этот параметр для запуска KCC, если вы не хотите ждать окончания работы KCC. Repadmin /kcc обычно запускается без параметра /async.

Как принудительно запустить репликацию Active Directory

Бывают ситуации, когда вам необходимо произвести форсированное обновление на контроллере домена. Для этого есть специальный ключ /syncall. Для того, чтобы выполнить синхронизацию нужного контроллера домена со всеми его партнерами по репликации, вам необходимо на нем выполнить команду:

Repadmin: Как принудительно запустить репликацию Active Directory

На выходе вы получите статус репликации и количество ошибок, выглядит это вот так:

СООБЩЕНИЕ ОБРАТНОГО ВЫЗОВА: Сейчас выполняется следующая репликация:
От: 007a5ee4-a454-4029-bc9b-0c4a8b4efbd1._msdcs.root.pyatilistnik.org
Кому: 5fc9cc16-b994-426d-81c8-c9ff27f29976._msdcs.root.pyatilistnik.org
СООБЩЕНИЕ ОБРАТНОГО ВЫЗОВА: Следующая репликация успешно завершена:
От: 007a5ee4-a454-4029-bc9b-0c4a8b4efbd1._msdcs.root.pyatilistnik.org
Кому: 5fc9cc16-b994-426d-81c8-c9ff27f29976._msdcs.root.pyatilistnik.org
СООБЩЕНИЕ ОБРАТНОГО ВЫЗОВА: Сейчас выполняется следующая репликация:
От: a76336ac-2fe6-4dc8-b9d3-23a5b0d22b77._msdcs.root.pyatilistnik.org
Кому: 92925497-671b-44f0-8d13-420fc4d5bbd1._msdcs.root.pyatilistnik.org
СООБЩЕНИЕ ОБРАТНОГО ВЫЗОВА: Следующая репликация успешно завершена:
От: a76336ac-2fe6-4dc8-b9d3-23a5b0d22b77._msdcs.root.pyatilistnik.org
Кому: 92925497-671b-44f0-8d13-420fc4d5bbd1._msdcs.root.pyatilistnik.org
СООБЩЕНИЕ ОБРАТНОГО ВЫЗОВА: Сейчас выполняется следующая репликация:
От: 5fc9cc16-b994-426d-81c8-c9ff27f29976._msdcs.root.pyatilistnik.org
Кому: 92925497-671b-44f0-8d13-420fc4d5bbd1._msdcs.root.pyatilistnik.org
СООБЩЕНИЕ ОБРАТНОГО ВЫЗОВА: Следующая репликация успешно завершена:
От: 5fc9cc16-b994-426d-81c8-c9ff27f29976._msdcs.root.pyatilistnik.org
Кому: 92925497-671b-44f0-8d13-420fc4d5bbd1._msdcs.root.pyatilistnik.org
СООБЩЕНИЕ ОБРАТНОГО ВЫЗОВА: Завершена операция SyncAll.
Команда SyncAll завершена без ошибок.

Если имеются какие-то проблемы, то вы можете увидеть подобного рода ошибки:

Функция SyncAll сообщает о следующих ошибках:
Ошибка обращения к серверу 5fc9cc16-b994-426d-81c8-c9ff27f29976._msdcs.root.pyatilistnik.org (сетевая ошибка): 17
ba):
Сервер RPC недоступен.

Repadmin: Сервер RPC недоступен

так же repadmin /syncall имеет ряд флагов:

  • /a — прерывается, если какой-либо сервер недоступен.
  • /A — Синхронизирует все контексты именования, хранящиеся на домашнем сервере
  • /d — Идентифицирует серверы по отличительным именам в сообщениях.

Repadmin с ключом /d

  • /e — Синхронизирует контроллеры домена на всех сайтах предприятия. По умолчанию эта команда не синхронизирует контроллеры домена на других сайтах.
  • /h — Отображение справки.
  • /i — запускает бесконечный цикл синхронизации
  • /I — Запускает команду repadmin /showrepl на каждой паре серверов вместо синхронизации.
  • /j — Синхронизирует только соседние серверы.
  • /p — Пауза после каждого сообщения, чтобы пользователь мог прервать выполнение команды.
  • /P — Выдвигает изменения наружу от указанного контроллера домена.
  • /q — Работает в тихом режиме, который подавляет сообщения обратного вызова.
  • /Q — Работает в очень тихом режиме, который сообщает только о фатальных ошибках.

repadmin /syncall /q

  • /s — не синхронизируется.
  • /S — Пропускает начальную проверку ответа сервера.

Предположим, что вы внесли важное изменение в AD и хотите его максимально быстро распространить. для этого запустите на актуальном контроллере:

Экспорт результатов в текстовый файл

Иногда Repadmin отображает много информации. Вы можете экспортировать любой из приведенных выше примеров в текстовый файл, это немного упрощает последующее рассмотрение или сохранение для документации. Для этого используется инструкция «> путь до файла». Вот пример команд:

@echo off
chcp 855
repadmin /replsummary > c:tempreplsummary.log
repadmin /syncall > c:tempsyncall.txt
repadmin /Queue > c:tempQueue.txt
repadmin /istg * /verbose > c:tempistg.txt
repadmin /bridgeheads * /verbose > c:tempbridgeheads.txt

Repadmin: Экспорт результатов в текстовый файл

chcp 855 используется, чтобы у вас не было кракозябр вместо русского текста.

Как посмотреть количество изменений атрибутов

Хотя команда repadmin /showobjmeta отображает количество изменений атрибутов объекта и контроллер домена, которые вносили эти изменения, команда repadmin /showattr отображает фактические значения для объекта. Команда repadmin /showattr также может отображать значения для объектов, которые возвращаются запросом LDAP-протокола.

На объект может ссылаться его distinguished name или глобальный уникальный идентификатор объекта (GUID).

По умолчанию repadmin /showattr использует порт 389 LDAP для запроса доступных для записи разделов каталога. Однако repadmin /showattr может дополнительно использовать порт 3268 LDAP для запроса разделов, доступных только для чтения, на сервере глобального каталога. (Советую освежить в памяти какие порты использует Active Directory).

Основные параметры команды:

  • <DSA_LIST> — Задает имя хоста контроллера домена или списка контроллеров домена, разделенных в списке одним пробелом.
  • <OBJ_LIST> — Определяет различающееся имя или GUID объекта для объекта, атрибуты которого вы хотите перечислить. Когда вы выполняете запрос LDAP из командной строки, этот параметр формирует базовый путь различаемого имени для поиска. Заключите в кавычки отличительные имена, содержащие пробелы.
  • /atts — Возвращает значения только для указанных атрибутов. Вы можете отображать значения для нескольких атрибутов, разделяя их запятыми.
  • /allvalues — Отображает все значения атрибутов. По умолчанию этот параметр отображает только 20 значений атрибута для атрибута.
  • /gc — Указывает использование TCP-порта 3268 для запроса разделов глобального каталога только для чтения.
  • /long — Отображает одну строку для каждого значения атрибута.
  • /dumpallblob — Отображает все двоичные значения атрибута. Эта команда похожа на /allvalues, но отображает двоичные значения атрибутов.

В следующем примере выполняется запрос к конкретному контроллеру домена.

repadmin /showattr dc01 «dc=root,dc=pyatilistnik,dc=org»

Repadmin: Как посмотреть количество изменений атрибутов

В следующем примере запрашиваются все контроллеры домена, имена компьютеров которых начинаются с dc, и показывает значение для определенного атрибута msDS-Behavior-Version, который обозначает функциональный уровень домена.

Repadmin /showattr dc* «dc=root,dc=pyatilistnik,dc=org» /atts:msDS-Behavior-Version

Утилита Repadmin /showattr /atts:msDS-Behavior-Version

В следующем примере запрашивается один контроллер домена с именем dc01 и возвращается версия операционной системы и версия пакета обновления для всех компьютеров с целевым идентификатором основной группы = 516.

repadmin /showattr dc01 ncobj:domain: /filter:»(&(objectCategory=computer)(primaryGroupID=516))» /subtree /atts:
operatingSystem,operatingSystemVersion,operatingSystemServicePack

Repadmin проверка схемы репликации Active Directory

Как посмотреть время последней резервной копирования Active Directory

Как посмотреть время последней резервной копирования Active Directory

Как посмотреть RPC-вызовы, на которые еще не ответили

Как посмотреть RPC-вызовы, на которые еще не ответили

Как посмотреть топологию репликации

repadmin /bridgeheads * /verbose

Как посмотреть топологию репликации Active Directory

Если есть проблемы с репликацией, то можете получать ошибку «The remote system is not available. For information about network troubleshooting, see Windows Help.»

Как сгенерировать топологию сайтов Active Directory

repadmin /istg * /verbose

Как сгенерировать топологию сайтов Active Directory

Если есть проблемы с репликацией, то тут вы можете видеть ошибки: LDAP error 81 (Server Down) Win32 Err 58.

На этом у меня все, мы с вами разобрали очень полезную утилиту, которая позволит вам быть в курсе статуса репликации вашей Active Directory. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

so, I it’s been about week since my last update — sorry.  Been stumped by this a while now obviously, but it only just now came to be pressing, as our CEO got a new Blackberry and we weren’t able to access the BES controls… likely due to this LDAP issue.  (It was configured to used windows authentication)

Following up on your last comment britv8 — the [isGlobalCatalogReady is false] was apparently false because those DCs did not have the global catalog enabled.  I’ve since enabled it on those servers for a better control group with fewer variables as I try to determine what is going on here.  I am still getting the LDAP errors.

Here’s what I’ve found thus far:

——————————————————————————————————

every DC gives the same error message response to:  repadmin /showreps /all /verbose («LDAP error 81 (Server Down) Win32 Err 58»)

——————————————————————————————————

nltest /dsgetdc:wcnb /force /gc 

every DC passes this test, and advertises the same flags: with the exception of the PDC which includes that flag: (GC DS LDAP KDC TIMESERV WRITABLE DNS_FOREST CLOSE_SITE)

——————————————————————————————————

AD Replication Status Tool on my first scan revealed no errors in the replication status collection details, but did show a connection error of some sort — I’ve been unable to get that error message since I refreshed the replication status at any time.

——————————————————————————————————

Both my primary and secondary (at primary site) failed a [Netdiag /test:DNS].  error message as follows:

————-

DNS test . . . . . . . . . . . . . : Failed

[WARNING] Cannot find a primary authoritative DNS server for the name

‘<mydc2>.’. [WSAEADDRNOTAVAIL ]

The name ‘<mydc2>.’ may not be registered in DNS.

[WARNING] Cannot find a primary authoritative DNS server for the name

‘<mydc2>.’. [ERROR_TIMEOUT]

The name ‘<mydc2>.’ may not be registered in DNS.

[WARNING] Cannot find a primary authoritative DNS server for the name

‘<mydc2>.’. [WSAEADDRNOTAVAIL ]

The name ‘<mydc02>.’ may not be registered in DNS.

[WARNING] Cannot find a primary authoritative DNS server for the name

‘<mydc02>.’. [WSAEADDRNOTAVAIL ]

The name ‘<mydc02>.’ may not be registered in DNS.

[WARNING] Cannot find a primary authoritative DNS server for the name

‘<mydc2>.’. [ERROR_TIMEOUT]

The name ‘<mydc2>.’ may not be registered in DNS.

[WARNING] The DNS entries for this DC are not registered correctly on DNS server ‘0.0.0.0’. Please wait for 30 minutes for DNS server replication.

[FATAL] No DNS servers have the DNS records for this DC registered.

————-

an alternate site DC passed with warning as follows:

————-

DNS test . . . . . . . . . . . . . : Passed

PASS — All the DNS entries for DC are registered on DNS server ‘<alternate site DC IP>‘ and other DCs also have some of the names registered.

[WARNING] The DNS entries for this DC are not registered correctly on DNS se

rver ‘<PDC IP Address>’. Please wait for 30 minutes for DNS server replication.

————-

The other 3 DCs passed.

——————————————————————————————————

I’ve checked that each DC (IPV4) is looking to itself for primary DNS, and the PDC as it’s alternate.

In the process I notice that the PDC and the primary site alternate DC both have IPV6 enabled, and accompanying tunnel adapters.  (Some post that I have read have me leaning to this as my next direction in this investigation.)

——————————————————————————————————

While investigating DNS (which I am still learning) I noticed that one <mylocaldomain>_msdcs>GC>_sites was missing along with the tcp>_Ldap entry.

Restarting the Net Logon service seemed to resolve this missing site, without affecting the other errors already 

——————————————————————————————————

Any suggestions are greatly appreciated.  Thanks!


Was this post helpful?
thumb_up
thumb_down

  • Remove From My Forums
  • Question

  • Hi,

    I installed a new RODC in an other site and when I know try to do the replication from one of my existing DC in my site:

    Repadmin /showrepl DC

        LDAP Error 81(0x51): Server Down
        Server Win32 Error 0(0x0):
        Extended Information:

    Repadmin /bind

    LDAP Error 81(0x51): Server Down
    Server Win32 Error 0(0x0):
    Extended Information:

    I’m able to start the replication from the RODC through Sites and Services, but not from my local DC.

    I got the error rpc Server not available.

Понравилась статья? Поделить с друзьями:
  • Ошибка lci на стиральной машинке самсунг
  • Ошибка jenkins при запуске 1с
  • Ошибка lc1 в стиральной машине samsung что делать
  • Ошибка javaw exe в minecraft
  • Ошибка lc1 в стиральной машине samsung как устранить ошибку