Проверка DNS домена
Проверьте DNS домена целиком: делегирование в реестре, каждый NS-сервер, опрошенный напрямую, SOA, DNSSEC и почтовые записи. 40 проверок, и у каждой есть исправление.
Идём от корневого сервера к реестру .nl, затем напрямую спрашиваем каждый DNS-сервер домена sidn.nl · 40 проверок · около 3 среестр .nl → каждый DNS-сервер · 40 проверок
sidn.nl проходит все выполненные проверки, включая DNSSEC
регистратор: SIDN·2,9 с
A+: ничего выше уровня «инфо». Каждый DNS-сервер ответил авторитетно и согласуется с остальными, таймеры в пределах диапазона Zonemaster, а Google Public DNS успешно проверяет цепочку DNSSEC от корня.
Запросы по TCP с нашего сервера на периферии Cloudflare: корневой сервер, реестр .nl и каждый DNS-сервер напрямую; Google Public DNS и Cloudflare — для почтовых записей и валидации. Мы не ведём журнал того, что вы проверяете.
Что входит в проверку DNS домена?
Проверка DNS домена проходит тот путь, которым домен находит резолвер, и тестирует каждый шаг: делегирование в реестре, каждый DNS-сервер, опрошенный напрямую, согласие этих серверов между собой, запись SOA, DNSSEC и почтовые записи. Здесь выполняется 40 проверок в семи группах, и каждая оценивается на уровне, который задаёт её источник.
Большинство сервисов проверки спрашивают резолвер и оценивают то, что он вернул. Так серверы за ним остаются невидимыми: резолвер отвечает с того DNS-сервера, который работает, и сломанный сервер незаметен, пока не откажут и остальные. Здесь каждый DNS-сервер опрашивается по TCP с выключенной рекурсией, копия NS-записей в реестре сравнивается с собственной копией зоны, а цепочка DNSSEC проверяется от DS в реестре до подписей в зоне.
Используйте её как аудит DNS после любого изменения: она проверяет DNS-записи, от которых зависит домен, а не только то, открывается ли его сайт (сам сайт проверяет проверка доступности сайта). Кнопка Копировать отчёт превращает результат в текстовый отчёт о DNS, который можно вставить в заявку.

ОценкаТолько по уровням: ни одной критической проблемы, ни одной ошибки, два предупреждения — это A. Кольцо показывает балл: 90 из 100.40 проверок, по ячейке на каждуюСгруппированы так же, как на странице. Жёлтые и синие ячейки — предупреждения и уведомления; заштрихованные выполнить не удалось.Сначала проблемыГруппы, где есть что исправить, открыты наверху, и в каждой строке указаны источник правила и исправление.ПутьКорневой сервер, реестр .com, который ведёт Verisign, затем каждый DNS-сервер, опрошенный напрямую: его ответ, серийный номер и EDNS.Цепочка доверияПолоса DNSSEC рядом с путём: зелёная там, где цепочка держится, пунктирная там, где она заканчивается, и красная там, где рвётся.Как выставляется оценка?
Буква зависит только от уровней того, что не прошло, и никогда от таблицы баллов: любая критическая проблема — это F, две ошибки и больше — D, одна ошибка или пять предупреждений и больше — C, три или четыре предупреждения — B, одно или два предупреждения (или только уведомления) — A, а если нет ничего выше уровня «инфо» — A+.
Уровни задаёт тот, на кого ссылается проверка: профиль Zonemaster по умолчанию, если тест определён там, иначе MUST или SHOULD из RFC. Число из 100 лишь ранжирует домены внутри одной буквы (100 − 30 за каждую критическую проблему, 12 за ошибку, 4 за предупреждение, 1 за уведомление). Проверки, которые наш сервер не может выполнить, никогда не засчитываются против домена; если не удаётся выполнить четверть проверок или больше, оценка помечается как частичная.
- A+100ничего выше уровня «инфо»INFO «определённо не указывает на проблему»sidn.nl100
- A90–991–2 предупреждения или только уведомленияNOTICE «администратору зоны следует об этом знать, но это вовсе не обязательно проблема»github.com90example.com95bücher.de90
- B75–893–4 предупрежденияWARNING «при некоторых обстоятельствах станет проблемой, но обычный пользователь вряд ли это заметит»cloudflare.com87google.com83
- C60–741 ошибка или 5 и более предупрежденийERROR «весьма вероятно (или наверняка) негативно скажется на работе зоны»в выборке нет
- D45–592 и более ошибкиdnssec-failed.org55
- F0–44любая критическая проблемаCRITICAL «зону можно обоснованно считать несуществующей»домен в .com44
балл = 100 − 30 × критические − 12 × ошибки − 4 × предупреждения − 1 × уведомления, в пределах диапазона буквы
частичнаячетверть проверок или больше не удалось выполнить с нашего сервера, и оценка это отмечает
Совпадают ли NS-записи родительской и дочерней зоны?
Должны: реестр (родитель) и зона (дочерняя) публикуют каждый свой набор NS, и по RFC 1912 §2.8 они должны совпадать. Когда реестр указывает на сервер, который не отвечает за зону, это lame-делегирование: сервер отвечает REFUSED или отвечает без флага авторитетности (AA).
Резолверы переходят к следующему серверу, так что один lame-сервер стоит лишь времени; когда lame все указанные серверы, домен перестаёт разрешаться. Zonemaster оценивает имена, которые есть только в реестре, как ошибку (EXTRA_NAME_PARENT), имена, которые есть только в зоне, — как уведомление, а отсутствие хотя бы одного рабочего сервера — как критическую проблему.
github.comсовпадают
- ns-520.awsdns-01.net
- ns-421.awsdns-52.com
- ns-1707.awsdns-21.co.uk
- ns-1283.awsdns-32.org
- dns1–4.p08.nsone.net
- те же 8
авторитетно (AA) отвечают 8 из 8
домен в .netрасходятся
- ns1.domaindirect.com
- ns2.domaindirect.comREFUSED
- ns3.domaindirect.com
- ns1.hover.com
- ns2.hover.com
нет общих имён · ns2.domaindirect.com: REFUSED · 2 ошибки
домен в .comlame-делегирование
- ns63.domaincontrol.comREFUSED
- ns64.domaincontrol.comREFUSED
- никто не отвечаетSERVFAIL
все серверы отвечают REFUSED · резолверы отвечают SERVFAIL · CRITICAL
Сколько NS-серверов нужно домену?
Не меньше двух, а рекомендуется три. RFC 1034 §4.1 требует, чтобы каждая зона была доступна как минимум на двух серверах, а RFC 2182 §5 рекомендует три для большинства зон уровня организации. Один DNS-сервер — это ошибка в Zonemaster; два проходят с информационной пометкой.
Где они стоят, важнее, чем сколько их, поэтому проверка NS-серверов смотрит и на их сети. Серверы в одной сети отказывают вместе: Zonemaster предупреждает, когда все адреса находятся в одной автономной системе (IPV4_ONE_ASN), даже для anycast-хостов вроде Google, Cloudflare или Akamai, где каждый адрес отвечает из многих точек. Anycast распределяет нагрузку, но оператор всё равно один.
- google.com4 NS · 1 сетьодна сеть
- github.com8 NS · 2 сетиразнесены
- sidn.nl3 NS · 2 сетиразнесены
- cloudflare.com5 NS · 1 сетьодна сеть
- nasa.gov6 NS · 1 сетьодна сеть
- example.com2 NS · 1 сетьодна сеть
AS1921 ipcomAS13335 CloudflareAS15169 GoogleAS16509 AmazonAS21342 AkamaiAS48283 SIDNAS62597 NS1
«Рекомендуется предоставлять три сервера для большинства зон уровня организации, причём по меньшей мере один из них должен быть хорошо удалён от остальных». RFC 2182 §5
Правильны ли значения записи SOA?
Если их задал крупный DNS-хостинг, они почти наверняка в порядке, даже если какой-то сервис проверки их отмечает. Refresh, retry и expire управляют только вторичными серверами, которые копируют зону передачей зоны. Minimum — это TTL отрицательного кэширования (RFC 2308): как долго резолверы помнят, что имени не существует.
RIPE-203 (1999) рекомендует refresh 86400, retry 7200, expire 3600000 и minimum 172800, причём последнее значение появилось ещё до RFC 2308. Zonemaster задаёт более низкие минимумы: refresh 14400 и retry 3600 (уведомления), expire 604800 (единственное предупреждение), minimum от 300 до 86400 (уведомление). Значения по умолчанию у Cloudflare, Route 53 и Azure ниже минимумов для refresh и retry; expire в 3 дня у Google Cloud DNS — единственное предупреждение среди крупных хостингов.
| refreshZonemaster ≥ 4 ч · ◆ 1 дн. | retryZonemaster ≥ 1 ч · ◆ 2 ч | expireZonemaster ≥ 7 дн. · ◆ 41,7 дн. | minimumZonemaster 5 мин – 1 дн. · ◆ 2 дн. | ||
|---|---|---|---|---|---|
| Cloudflare | 2,8 ч | 40 мин | 7 дн. | 30 мин | 2 уведомления |
| Amazon Route 53 | 2 ч | 15 мин | 14 дн. | 1 дн. | 2 уведомления |
| Google Cloud DNS | 6 ч | 1 ч | 3 дн. | 5 мин | 1 предупреждение |
| Azure DNS | 1 ч | 5 мин | 28 дн. | 5 мин | 2 уведомления |
| GoDaddy | 8 ч | 2 ч | 7 дн. | 1 ч | норма |
| Namecheap BasicDNS | 12 ч | 1 ч | 7 дн. | 1 ч | норма |
| google.com (собственные) | 15 мин | 15 мин | 30 мин | 1 мин | 1 предупреждение · 3 уведомления |
ниже минимума ZonemasterнормауведомлениепредупреждениеRIPE-203 (1999)
Проверка DNSSEC: DS, DNSKEY и подписи
Проверка DNSSEC проходит по цепочке доверия: запись DS в реестре должна быть хешем ключа (DNSKEY) в зоне, этот ключ должен подписывать набор ключей зоны, а каждая подпись (RRSIG) должна проходить проверку и находиться в пределах срока действия. Эта проверка сама вычисляет хеш и проверяет каждую подпись, а затем спрашивает Google Public DNS, проходит ли зона валидацию.
Порвите любое звено, и валидирующие резолверы ответят SERVFAIL: домен пропадёт для всех, кто за ними. dnssec-failed.org, тестовая зона, которую намеренно держат сломанной, показывает сразу два разрыва. Алгоритмы оцениваются по реестру IANA (RFC 9904): рекомендуются 8, 13 и 15, а 5 и 7, которые подписывают с SHA-1, больше нельзя использовать (RFC 9905), и Zonemaster оценивает их как ошибку.
cloudflare.comзащищено
- DS 2371 в .comалгоритм 13 · SHA-256 · 329968…26F2B9
- хеш совпадает с ключом 2371
- DNSKEY 2371 · KSKфлаги 257 · ECDSA P-256 (13)
- подписывает набор ключей · осталось 50,8 дня из 61 день
- DNSKEY 34505 · ZSKфлаги 256 · ECDSA P-256 (13)
- подписывает записи · SOA: осталось 1 день из 2 дня
- Google Public DNSфлаг AD установлен: защищено
dnssec-failed.orgнедействительно
- DS 42069 в .orgалгоритм 13 · SHA-256
- в зоне нет ключа 42069
- DNSKEY 50719 · KSKнастоящий KSK зоны (ключ подписи ключей)
- его подпись набора ключей истекла 112 дней назад
- DNSKEY 32784 · ZSKподписывает SOA: действует, осталось 5,7 дня из 7 дней
- до него не доходит ничего доверенного
- Google Public DNSSERVFAIL; с флагом CD ответ есть: недействительно (bogus)
Алгоритмы подписи (реестр IANA, RFC 9904)
- RECOMMENDED8 RSASHA256 · 13 ECDSAP256SHA256 · 15 ED25519используйте эти
- MAY14 ECDSAP384SHA384 · 16 ED448разрешены
- NOT RECOMMENDED10 RSASHA512Zonemaster WARNING
- MUST NOT5 RSASHA1 · 7 RSASHA1-NSEC3-SHA1 · 1 · 3 · 6 · 12RFC 9905 · Zonemaster ERROR
обе цепочки выше подписаны алгоритмом 13
DNS для почты: MX, SPF и DMARC
Почтовые проверки читают то же, что читают принимающие серверы: MX-записи (или null MX, который сообщает, что домен не принимает почту, RFC 7505), одну запись SPF в пределах лимита RFC 7208 в 10 DNS-запросов и политику DMARC (RFC 9989, который заменил RFC 7489 в мае 2026 года).
SPF не просто находится, а вычисляется: каждый include отслеживается и учитывается. Записи github.com нужно ровно 10 запросов плюс один пустой: она допустима, но запаса не осталось. Домен, который никогда не отправляет почту, должен об этом сказать: example.com публикует набор для «паркованного» домена — null MX, v=spf1 -all и p=reject. Подробнее — в проверке SPF и проверке DMARC.
github.comотправляет и принимает
example.comпаркованный набор
Как проверить DNS из командной строки (dig)
Четыре шага с dig и delv повторяют основу этой проверки: пройти делегирование от корня, спросить один DNS-сервер напрямую с выключенной рекурсией, сравнить DS в реестре с ключами зоны и дать валидирующему резолверу оценить цепочку.
Добавьте +tcp, чтобы увидеть то же, что видит наш сервер; без него вы проверяете UDP, а этого веб-инструмент в сети Cloudflare сделать не может. В заголовке ответа aa обозначает авторитетный ответ; REFUSED или отсутствие флага aa у сервера, указанного в реестре, — это lame-делегирование.
Терминал · dig 9.20
$ dig +trace +tcp github.com NS ;; (сокращено) com. 172800 IN NS a.gtld-servers.net. ;; от h.root-servers.net 1 github.com. 172800 IN NS ns-520.awsdns-01.net. ;; от h.gtld-servers.net: 8 NS 2 $ dig @ns-421.awsdns-52.com github.com SOA +norec +tcp ;; flags: qr aa; QUERY: 1, ANSWER: 1 3 github.com. 900 IN SOA ns-1707.awsdns-21.co.uk. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400 4 $ dig @a.gtld-servers.net github.com DS +norec ;; status: NOERROR, ANSWER: 0 ;; нет DS: не подписан 5 $ delv @8.8.8.8 cloudflare.com SOA ; fully validated 6 cloudflare.com. 300 IN SOA ns3.cloudflare.com. dns.cloudflare.com. 2417999975 10000 2400 604800 300
- Корень отправляет .com к его 13 серверам
- Набор NS для github.com из реестра, хранится 2 дня
- aa: авторитетный ответ, а не кэш
- SOA: серийный номер 1, затем refresh, retry, expire, minimum
- Нет DS в .com: DNSSEC проверять нечего
- delv проверил цепочку от корня
Почему разные проверки DNS дают разные результаты?
Потому что они сверяются с разными числами. Классические сервисы проверки отмечают значения провайдеров по умолчанию: intoDNS называет expire google.com в 1800 секунд «NOT OK» и выдаёт ошибку на два серийных номера github.com, хотя для двух DNS-хостингов это нормально. Zonemaster оценивает серийные номера как предупреждение и распознаёт null MX; наша собственная первая версия ошибалась в обоих случаях.
И видят сеть они из разных мест. Zonemaster (AFNIC и шведский Internetstiftelsen) спрашивает по UDP и TCP, через IPv4 и IPv6. Эта проверка работает на периферии Cloudflare: она спрашивает только по TCP, не подключается по IPv6 и не может соединиться с собственными адресами Cloudflare, поэтому такие серверы читаются через 1.1.1.1, а их проверки помечаются как не проверено, а не как проваленные. Как альтернатива intoDNS она показывает источник каждого уровня вместо голого OK или NOT OK.
| Случай | intoDNS | Zonemaster | DNS Robot v1 | Эта проверка |
|---|---|---|---|---|
| github.comдва серийных номера SOA (два DNS-хостинга) | ошибка“Looks like your nameservers do not agree on the SOA serial.” | предупреждениеMULTIPLE_ | сбой“Serial mismatch detected: 1656468023 vs 1.” | предупреждениеобъяснено: по серийному номеру на DNS-хостинг |
| google.comSOA expire 1 800 с | не OK“Your SOA EXPIRE number is: 1800. That is NOT OK” | предупреждениеEXPIRE_ | сбой“too low (min recommended: 14 days)” | предупреждениес пояснением, на что влияет expire |
| example.comнулевой MX (0 .) | ошибка“0 No A Record (no glue either)” | инфоZ09_ | норма“Found 1 MX record(s)” | нормаnull MX распознан |
| cloudflare.comSOA retry 2 400 с | —не цитируется | уведомлениеRETRY_ | сбой“too high (max recommended: 15min)” | уведомлениезначение Cloudflare по умолчанию |
| cloudflare.comподписан DNSSEC | не проверяетсянет теста DNSSEC | нормаDNSSEC02 · 05 · 08: цепочка проверена | внимание“DNSSEC does not appear to be enabled for this domain.” | нормаDS → KSK → RRSIG проверены, Google валидирует |
Проверка DNS домена: вопросы
Что такое проверка DNS домена?
Валидация домена — это то же самое, что проверка DNS?
Что такое lame-делегирование и как его исправить?
Мой DNS-хостинг работает через anycast. Почему предупреждение про одну сеть?
Таймеры SOA помечены. Нужно ли их менять?
Почему некоторые проверки помечены «не проверено»?
Почему DNS-серверы отдают разные серийные номера SOA?
Это проверка DNSSEC? И снижает ли оценку отсутствие DNSSEC?
Как часто нужно проверять DNS домена?
Вы сохраняете домены, которые я проверяю?
Другие инструменты DNS
NS Поиск
Поиск nameserver-ов для любого домена с определением провайдера
Проверка DNS
Все DNS-записи прямо с серверов имён домена рядом с кешем Google и Cloudflare
MX Поиск
Поиск записей mail exchange и данных почтового сервера
WHOIS Поиск
Поиск данных о регистрации домена, регистраторе и владельце через RDAP
Проверка SPF записи
Проверка записей SPF и подсчёт DNS запросов по RFC 7208
Проверка DMARC
Проверка политики DMARC и настроек выравнивания для любого домена
Обратный DNS
Поиск имён хостов по IP адресу через записи PTR
Проверка домена
Свободен ли домен и сколько он на самом деле стоит за 3 года


