Dcdiag не пройдена проверка dns

Обновлено: 07.07.2024

Администрирование инфраструктуры Active Directory — это непростой процесс. От правильного взаимодействия серверов зависит работа всей корпоративной сети, даже если у вас всего парочка контроллеров домена и один локальный сайт.

Утилита dcdiag позволяет выполнять различные тесты над инфраструктурой Active Directory и запрашивать диагностическую информацию о контроллерах домена.

Синтаксис dcdiag

Общий синтаксис

  • /s:<DomainController>
    Указывает контроллер домена. Если не указано, то используется локальный контроллер домена. Не используется в тестах DcPromo и RegisterInDns, которые можно выполнить только локально.
  • /n:<NamingContext>
    Контекст именования в форматах NetBIOS, DNS (FQDN), DN.
  • /u:<Domain>\<UserName> /p:
    Запускает dcdiag от имени другого пользователя. По умолчанию dcdiag выполняется от имени текущего пользователя.
  • /a
    Тестировать все серверы указанного сайта.
  • /e
    Тестировать все серверы леса, перекрывает /a.
  • /q
    Тихий режим. Выводятся только ошибки.
  • /v
    Подробный режим. Выводится дополнительная информация.
  • /i
    Игнорировать некритичные ошибки.
  • /fix
    Только для теста MachineAccount. Исправление некорректных Service Principal Names (SPNs) на контроллере домена.
  • /f:<LogFile>
    Вывод результатов в лог.
  • /c
    Выполняет все тесты, кроме DCPromo и RegisterInDNS. Включает тесты не по умолчанию: Topology, CutoffServers, OutboundSecureChannels. Можно использовать совместно со /skip для пропуска определённых тестов.

  • Помощь.
  • /test:<Test>
    Выполнить указанный тест. Дополнительно выполняется тест Connectivity.
  • /ReplSource:<SourceDomainController>
    Только для теста CheckSecurityError. Проверяет соединение между контроллером домена, на котором выполняется команда, и исходным контроллером домена. SourceDomainController — это NetBIOS, DNS (FQDN) или DN имя сервера, который будет исходным контроллером домена для репликации.

Синтаксис для теста DNS

Параметры dcdiag для теста DNS:

Тесты dcdiag

Тесты, которые нельзя пропустить

  • Connectivity
    Проверяет регистрацию DNS, ping, LDAP RPC для каждого контроллера домена.

Тесты, которые можно пропустить

Тесты, которые не выполняются по умолчанию

  • Topology
    Проверяет, что KCC генерирует правильную топологию для всех контроллеров домена.
  • CheckSecurityError
    Отчет об общем состоянии репликации в отношении безопасности Active Directory на контроллерах домена под управлением Windows Server 2003 SP1. Вы можете выполнить этот тест для одного или всех контроллеров домена на предприятии. По завершении теста dcdiag представляет сводку результатов, а также подробную информацию по каждому протестированному контроллеру домена и диагностику ошибок безопасности, о которых сообщил тест.
    Cледующий аргумент является необязательным:
    **/ReplSource:**SourceDomainController
    Этот аргумент проверяет возможность создания связи репликации между реальным или потенциальным контроллером домена-источника (SourceDomainController) и локальным контроллером домена.
  • CutoffServers
    Проверяет есть ли серверы репликации без партнёра.
  • DNS
    Включает шесть дополнительных тестов. Имеет отдельный синтаксис, См. выше.

Тесты не для контроллеров домена

  • DcPromo
    Проверяет инфраструктуру DNS для любого компьютера, который вы хотите сделать контроллером домена. Если инфраструктура достаточна, вы можете сделать компьютер контроллером домена, указанном в параметре **/DnsDomain:**Active_Directory_Domain_DNS_Name. Этот параметр сообщает, требуются ли какие-либо изменения в существующей инфраструктуре DNS. Обязательным аргументом является **/DnsDomain:**Active_Directory_Domain_DNS_Name. Требуется один из следующих аргументов: /NewForest, /NewTree, /ChildDomain, /ReplicaDC. Если указан аргумент /NewTree, необходимо также указать аргумент **/ForestRoot:**Forest_Root_Domain_DNS_Name.
  • RegisterInDNS
    Проверяет, может ли этот контроллер домена зарегистрировать Domain Controller Locator DNS записи. Эти записи должны присутствовать в DNS для других компьютеров, чтобы найти этот контроллер домена для домена Active_Directory_Domain_DNS_Name. Этот параметр сообщает, требуются ли какие-либо изменения в существующей инфраструктуре DNS. Обязательным аргументом является **/DnsDomain:**Active_Directory_Domain_DNS_Name.

Пример

Давайте продиагностируем какой-нибудь контроллер домена.

Запускаю прямо на контроллере домена выполнение всех тестов по умолчанию:

DC=607UNR,DC=ru
Default-First-Site-Name\BUHSERV8 через RPC
DSA - GUID объекта: 36981e94-fe69-437d-883a-58e28f9e5583
Последняя попытка @ 2011-09-12 18:30:34 успешна.

CN=Configuration,DC=607UNR,DC=ru
Default-First-Site-Name\BUHSERV8 через RPC
DSA - GUID объекта: 36981e94-fe69-437d-883a-58e28f9e5583
Последняя попытка @ 2011-09-12 17:58:49 успешна.

CN=Schema,CN=Configuration,DC=607UNR,DC=ru
Default-First-Site-Name\BUHSERV8 через RPC
DSA - GUID объекта: 36981e94-fe69-437d-883a-58e28f9e5583
Последняя попытка @ 2011-09-12 17:58:49 успешна.

Настройка протокола IP для Windows

Настройка протокола IP для Windows

Кэш сопоставителя DNS успешно очищен.

Диагностика сервера каталогов

Выполнение начальной настройки:
Выполняется попытка поиска основного сервера.
Основной сервер = AppServ
* Идентифицирован лес AD.
Сбор начальных данных завершен.

Выполнение обязательных начальных проверок

Сервер проверки: Default-First-Site-Name\APPSERV
Запуск проверки: Connectivity
. APPSERV - пройдена проверка Connectivity

Выполнение основных проверок


Выполнение проверок разделов на: ForestDnsZones
Запуск проверки: CheckSDRefDom
. ForestDnsZones - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. ForestDnsZones - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: DomainDnsZones
Запуск проверки: CheckSDRefDom
. DomainDnsZones - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. DomainDnsZones - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: Schema
Запуск проверки: CheckSDRefDom
. Schema - пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
. Schema - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: Configuration
Запуск проверки: CheckSDRefDom
. Configuration - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. Configuration - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: 607UNR
Запуск проверки: CheckSDRefDom
. 607UNR - пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
. 607UNR - пройдена проверка
CrossRefValidation

Между registerdns и flushdns большая пауза должна была быть ? я сек 15 выждал

Авторское примечание: Статья в первую очередь написана для начинающих системных администраторов, опытные вряд ли почерпнут для себя здесь что-нибудь новое и полезное. Навеяно статьей про GPUPDATE /force (спасибо mrHobbY).

Active Directory – это большой и сложный организм (даже если он состоит и двух контроллеров домена и одного сайта), и для системного администратора очень важно в любой момент времени провести диагностику для анализа работы этого организма.
Ну, а так как по оснасткам ходить и смотреть малоэффективно, по логам системы тоже не всегда поймешь, что происходит, поэтому на помощь приходят различные утилиты. Одна из них – dcdiag от компании Microsoft.
Посмотрим на нее внимательно – ибо полезность данной утилиты трудно переоценить. Я не буду приводить многочисленные ключи данной команды – про них при желании можно и в справке прочитать — а остановлюсь только на тех, – которые использую сам при диагностике на практике.


Первое, что нужно сделать, чтобы работать с этой утилитой – это установить ее к себе на рабочую станцию или на сам сервер (тут каждый волен выбирать сам, но в последних версиях dcdiag – уже в помощи написано, что проверки необходимо запускать на самих серверах — контроллерах домена, за исключением тестов dcPromo и RegisterInDNS). Для Windows 2003 необходимо установить пакет Support Tools c дистрибутива операционной системы, для Windows 7 и 8 – необходимо установить пакет Remote System Administration Tools (они разные для win7, win7sp1, и win8 – будьте внимательны, когда будете скачивать). Кстати, RSAT — сам по себе полезный продукт – внутри много утилит, которые просто необходимы в повседневной жизни администратора домена.
После установки пакета команда уже доступна из командной строки.
Но не торопитесь запускать ее сразу, на рабочей станции ничего не получится без указания контроллера домена, к которому надо подключиться. Утилита выдаст соответствующее предупреждение:

Замечательно – мы выяснили – что желательно указать контроллер домена с помощью ключа /s: или контекст именования – /n:. Какой сервер указывать понятно – тот контроллер домена, который вы хотите проверить – а вот если указать контекст именования домена – (имя домена другими словами – можно указывать в форматах Netbios, DNS или DN.), то будет найден ближайший (в пределах сайта) контроллер домена (далее КД).
Проведем самую простую проверку: dcdiag /s:dc01-local
И опять беда, хотя кое-что уже видно:

Как мы видим, часть тестов пройдена – но части отказано в доступе. Это из-за того, что dcdiag я запускал из-под обычной учетной записи домена, без администраторских прав. Понятно – что часть проверок пройти под ней просто невозможно. Поэтому, что бы получить правильную диагностику, необходимо запускать утилиту с административными полномочиями – либо запустить командную строку от имени администратора, либо использовать ключи /u: имя домена\имя пользователя и /p: пароль. Попробуем:
dcdiag /s:dc01-local /u:local\user19 /p:Password

ак видим, проверки пройдены почти все – кроме проверки Services. Но тут у меня есть вполне логичное объяснение – я с помощью новой утилиты (из пакета для windows 7) пытаюсь проверять контроллер домена на базе win2003 – и вполне возможно, название службы может отличаться.


Лирическое отступление №1. При подготовке статьи я столкнулся с epic fail забавным феноменом, может в комментариях обсудим? :). В общем, запуская dcdiag из-под обычной учетной записи другого домена (связанного доверительными отношениями с исследуемым доменом local) и задавая параметры /u и /p – (имя пользователя и пароль административной учетной записи домена local) – утилита выдавала ошибки в части проверок — например sysvolchek (в версии dcdiag 2003 – frssysvol). Если же на рабочую станцию зайти под учетной записью с административными полномочиями в домене local — проверки прекрасно проходятся. Так что – может быть, все-таки не лишним будет проводить проверку на самом сервере. Конец лирического отступления №1.

Полностью команда выглядит так:
dcdiag /n:local /e /v /f:c:\logs\adtest.log /ferr:c:\logs\aderrors.log /u:local\user19 /p:Password

Внимание! В версиях dcdiag, начиная с windows 2008 ключ /ferr: убран из поддерживаемых (специально повторился :)).
Если у вас сложная структура леса, да еще и с медленными каналами связи приготовьтесь подождать. Да даже и если несложная – скажем у меня в одном реальном лесе – 10 КД, 5 сайтов и каналы 256 кбит/сек. Выполнение данной команды занимает в среднем до 20 минут.
Результат исполнения очень рекомендуется внимательно просмотреть на наличие проблем. Ну и очень желательно запускать данную утилиту регулярно для диагностики здоровья AD.
Для хардкора можно еще добавить ключ /fix – внесение безопасных исправлений, но бездумно все-таки этого делать не стоит.

Вот собственно и все что я хотел сегодня рассказать. А как часто вам приходится пользоваться данной утилитой на производстве? Какие альтернативы вы знаете?

запускаю с 2008 dcdiag

Выполнение начальной настройки:
Выполняется попытка поиска основного сервера.
Основной сервер = DC
* Идентифицирован лес AD.
Сбор начальных данных завершен.

Выполнение обязательных начальных проверок

Выполнение основных проверок


Выполнение проверок разделов на: DomainDnsZones
Запуск проверки: CheckSDRefDom
. DomainDnsZones - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. DomainDnsZones - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: ForestDnsZones
Запуск проверки: CheckSDRefDom
. ForestDnsZones - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. ForestDnsZones - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: Schema
Запуск проверки: CheckSDRefDom
. Schema - пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
. Schema - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: Configuration
Запуск проверки: CheckSDRefDom
. Configuration - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. Configuration - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: 9000let
Запуск проверки: CheckSDRefDom
. 9000let - пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
. 9000let - пройдена проверка
CrossRefValidation

Ethernet adapter Подключение по локальной сети 2:

Состояние среды. . . . . . . . : Среда передачи недоступна.
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : Адаптер Microsoft ISATAP
Физический адрес. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP включен. . . . . . . . . . . : Нет
Автонастройка включена. . . . . . : Да

Туннельный адаптер Teredo Tunneling Pseudo-Interface:

Настройка протокола IP для Windows

запускаy с 2003 (он раньше был основной DC)

Domain Controller Diagnosis

Performing initial setup:
Done gathering initial info.

Doing initial required tests

Doing primary tests

Running partition tests on : ForestDnsZones
Starting test: CrossRefValidation
. ForestDnsZones passed test CrossRefValidatio

Starting test: CheckSDRefDom
. ForestDnsZones passed test CheckSDRefDom

Running partition tests on : DomainDnsZones
Starting test: CrossRefValidation
. DomainDnsZones passed test CrossRefValidatio

Starting test: CheckSDRefDom
. DomainDnsZones passed test CheckSDRefDom

Running partition tests on : Schema
Starting test: CrossRefValidation
. Schema passed test CrossRefValidation
Starting test: CheckSDRefDom
. Schema passed test CheckSDRefDom

Running partition tests on : Configuration
Starting test: CrossRefValidation
. Configuration passed test CrossRefValidation
Starting test: CheckSDRefDom
. Configuration passed test CheckSDRefDom

Running partition tests on : 9000let
Starting test: CrossRefValidation
. 9000let passed test CrossRefValidation
Starting test: CheckSDRefDom
. 9000let passed test CheckSDRefDom

Настройка протокола IP для Windows

Проверь доступность домена с раб станций. Судя по логам репликации у тебя нет, SYSVOL не реплицирован. Как реплицировать SYSVOL найдешь в инете, нос анчала итсправь всё в плане DNS

На обоих контроллерах в их оснастке DNS сервера укажи пересылать неразрешимые запросы на 192.168.0.1 и убедись или исправь, что нэймсерверами являются эти два
NS-серверы. . . . . . . . . . . : 192.168.0.60 и 192.168.0.248
Выполни на обоих серверах:
net stop netlogon
ipconfig /flushdns
ipconfig /registerdns
net start netlogon
На рабочих станциях DNS сервером укажи тоже эти два IP.
P.S.
На будущее: Работает - НЕ трогай! Тем более, что знаний у тебя очень мало в плане AD.

Добавлено:
А инет то как раздается? NAT или прокси через ФРЮ? NAT или проксю пашут там, проверял?

Домен достался мне в таком состоянии, настроено всё через жопу, привожу в порядок всё попутно читая камасутру и перелапачивая форумы. Но на ровном месте всё навернулось. Было бы проще развернуть новый чистый домен и там уже всё насраивать, но к сожелению очень много сервисов в компании. И да согласен знаний не шибко много по ремонтным работам в АД, как-то привык что настроил и забыл про него .

Добавлено:
У меня подозрение что "саботаж", я буквально на днях поудалял права у пользователей которые каким-то боком были админами домена.
Всё упало вчера вечером примерно в 22-00, до этого момента с утра был сбой ДНС, но я всё восстановил, после чего с помирающего 2003 решил перевести все роли. Перевёл, всё работало. Вечером всё почему-то упало и до сих пор пытаюсь разгрест
Подозреваю что-что-то накручено в самом DNS.

Настройка протокола IP для Windows

Диагностика сервера каталогов

Выполнение начальной настройки:
Выполняется попытка поиска основного сервера.
Основной сервер = DC
* Идентифицирован лес AD.
Сбор начальных данных завершен.

Выполнение обязательных начальных проверок

Выполнение основных проверок


Выполнение проверок разделов на: DomainDnsZones
Запуск проверки: CheckSDRefDom
. DomainDnsZones - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. DomainDnsZones - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: ForestDnsZones
Запуск проверки: CheckSDRefDom
. ForestDnsZones - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. ForestDnsZones - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: Schema
Запуск проверки: CheckSDRefDom
. Schema - пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
. Schema - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: Configuration
Запуск проверки: CheckSDRefDom
. Configuration - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. Configuration - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: 9000let
Запуск проверки: CheckSDRefDom
. 9000let - пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
. 9000let - пройдена проверка
CrossRefValidation

Настройка протокола IP для Windows

Ethernet adapter Подключение по локальной сети 2:

Состояние среды. . . . . . . . : Среда передачи недоступна.
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : Адаптер Microsoft ISATAP
Физический адрес. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP включен. . . . . . . . . . . : Нет
Автонастройка включена. . . . . . : Да

Туннельный адаптер Teredo Tunneling Pseudo-Interface:

Domain Controller Diagnosis

Performing initial setup:
Done gathering initial info.

Doing initial required tests

Doing primary tests

Running partition tests on : ForestDnsZones
Starting test: CrossRefValidation
. ForestDnsZones passed test CrossRefValidation

Starting test: CheckSDRefDom
. ForestDnsZones passed test CheckSDRefDom

Running partition tests on : DomainDnsZones
Starting test: CrossRefValidation
. DomainDnsZones passed test CrossRefValidation

Starting test: CheckSDRefDom
. DomainDnsZones passed test CheckSDRefDom

Running partition tests on : Schema
Starting test: CrossRefValidation
. Schema passed test CrossRefValidation
Starting test: CheckSDRefDom
. Schema passed test CheckSDRefDom

Running partition tests on : Configuration
Starting test: CrossRefValidation
. Configuration passed test CrossRefValidation
Starting test: CheckSDRefDom
. Configuration passed test CheckSDRefDom

Running partition tests on : 9000let
Starting test: CrossRefValidation
. 9000let passed test CrossRefValidation
Starting test: CheckSDRefDom
. 9000let passed test CheckSDRefDom

Настройка протокола IP для Windows

Подключение по локальной сети - Ethernet адаптер:

инет работает с тачек?

Добавлено:
с 248 сервер

Диагностика сервера каталогов

Выполнение начальной настройки:
Выполняется попытка поиска основного сервера.
Основной сервер = DC
* Идентифицирован лес AD.
Сбор начальных данных завершен.

Выполнение обязательных начальных проверок

Выполнение основных проверок

. DC - не пройдена проверка SystemLog
Запуск проверки: VerifyReferences
. DC - пройдена проверка VerifyReferences


Выполнение проверок разделов на: DomainDnsZones
Запуск проверки: CheckSDRefDom
. DomainDnsZones - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. DomainDnsZones - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: ForestDnsZones
Запуск проверки: CheckSDRefDom
. ForestDnsZones - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. ForestDnsZones - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: Schema
Запуск проверки: CheckSDRefDom
. Schema - пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
. Schema - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: Configuration
Запуск проверки: CheckSDRefDom
. Configuration - пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
. Configuration - пройдена проверка
CrossRefValidation

Выполнение проверок разделов на: 9000let
Запуск проверки: CheckSDRefDom
. 9000let - пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
. 9000let - пройдена проверка
CrossRefValidation

Добавлено:
что-то 248 умирает на глазах


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


Добавлено:
в днс сервере открой св-ва любого из контроллеров.
Затем вкладка Пересылка (Forwarders) там укажи или адрес фоюхи или провайдерские или гуглевский 8.8.8.8,Я не знаю каек у тебя устроен выход в инет в том числе как переправляются днс запросы, тебе лучше знать.
Также там в днс сервере проверь вкладку Интерфейсы, проверь на каких адресах слушает, 127.0.0.1 убери, пропиши его собственный IP локальный


Добавлено:
ipmanyak
Если ты с Масквобада, то я готов приехать и проставицца пивом или чем нить покрепче. Если нет, то решаемо

Читайте также: