Проверка обновления DNS

Сравните ответы семи публичных DNS-резолверов — Google, Cloudflare, Quad9, Яндекс, OpenDNS, AdGuard и Control D — и узнайте, разошлась ли новая запись и сколько ещё она может держаться в кэше.

Как проверить, обновились ли DNS-записи

После смены IP-адреса сайта, переноса почты или замены NS-серверов новая запись появляется у пользователей не сразу. Инструмент одновременно спрашивает семь крупных публичных DNS-резолверов — Google, Cloudflare, Quad9, Яндекс, OpenDNS, AdGuard и Control D — и показывает, что отвечает каждый из них прямо сейчас.

Рядом с ответом указан TTL — сколько ещё секунд резолвер будет отдавать запись из кэша. Если ответы совпадают, изменение уже видно большинству пользователей. Если расходятся, по TTL понятно, когда старое значение перестанет отдаваться.

Как пользоваться проверкой

  1. 1Введите домен без протокола, например example.ru или mail.example.ru. Кириллические домены вида пример.рф переводятся в Punycode автоматически.
  2. 2Выберите тип записи: A и AAAA — адреса сервера, CNAME — псевдоним, MX — почтовые серверы, NS — DNS-серверы домена, TXT — SPF, DKIM, подтверждения сервисов.
  3. 3Нажмите «Проверить». Каждому резолверу даётся до 3 секунд; если основной адрес не отвечает, через 0,8 секунды запрос дублируется на резервный адрес того же сервиса.
  4. 4Посмотрите итог: «одинаковый ответ» означает, что все ответившие резолверы видят одно и то же. При расхождении ответы разбиваются на варианты, и у каждого резолвера отмечено, к какому варианту он относится.
  5. 5Если видно старое значение, ориентируйтесь на TTL этого резолвера: по его истечении резолвер запросит запись заново. Повторите проверку после этого времени.

Почему DNS обновляется не сразу

Словосочетание «распространение DNS» немного вводит в заблуждение: новая запись никуда не рассылается. Как только вы сохранили её у DNS-хостинга, authoritative-серверы домена сразу отдают новое значение. Задержка возникает в кэшах — у публичных резолверов, провайдеров, роутеров и операционных систем.

Каждая запись хранится в кэше столько секунд, сколько указано в её TTL на момент запроса. Пока срок не истёк, резолвер отвечает старым значением и не обращается к authoritative-серверам. Поэтому один пользователь уже попадает на новый сервер, а другой — ещё на старый.

Есть и обратный эффект — кэширование отсутствующей записи. Если кто-то запросил поддомен до того, как вы его создали, резолвер запомнит ответ «такого имени нет» на время, заданное в SOA-записи зоны. Новая запись появится у этого резолвера только после истечения этого срока.

Какие DNS-резолверы опрашивает инструмент

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

Публичные резолверы в проверке
РезолверАдресаОсобенности
Google Public DNS8.8.8.8, 8.8.4.4Самый распространённый публичный резолвер
Cloudflare1.1.1.1, 1.0.0.1Быстрый резолвер с короткими задержками по всему миру
Quad99.9.9.9, 149.112.112.112Блокирует домены из списков угроз — для них отвечает NXDOMAIN
Яндекс DNS77.88.8.8, 77.88.8.1Базовый режим без фильтрации, популярен в Рунете
OpenDNS208.67.222.222, 208.67.220.220Резолвер Cisco, часто используется в офисных сетях
AdGuard DNS94.140.14.14, 94.140.15.15Блокирует рекламные и трекинговые домены
Control D76.76.2.0, 76.76.10.0Бесплатный резолвер без фильтрации

Как читать результат проверки

Ответы сравниваются как наборы значений: порядок записей, регистр букв и точка в конце имени не считаются различием. Резолверы, которые не ответили, в сравнении не участвуют — их статус показан отдельно.

Статусы ответа резолвера
Что показаноЧто это значит
Значения записи и TTLРезолвер вернул записи запрошенного типа; TTL — оставшееся время жизни в его кэше
Записей этого типа нетДомен существует, но записей выбранного типа у него нет — например, AAAA у сайта без IPv6
Домен не найден (NXDOMAIN)Резолвер считает, что такого имени нет: домен не делегирован, запись удалена или закэширован старый отрицательный ответ
Ошибка резолвера (SERVFAIL)Резолвер не смог получить ответ от authoritative-серверов — часто это ошибка DNSSEC или недоступные NS
Запрос отклонён (REFUSED)Резолвер отказался обрабатывать запрос
Нет ответа за 3 секундыНи основной, ни резервный адрес не ответили вовремя; повторите проверку

Сколько ждать обновления DNS

Максимальное время ожидания определяет TTL, который был у старой записи. Резолвер, закэшировавший её за секунду до изменения, будет отдавать старое значение весь этот срок. Поэтому TTL стоит понижать заранее — за сутки-двое до переезда, чтобы старое длинное значение успело истечь.

Отдельный случай — смена NS-серверов у регистратора. Делегирование хранится в зоне верхнего уровня, и TTL у NS-записей там обычно большой: например, в зоне .com это 172 800 секунд, то есть двое суток. Поэтому при смене DNS-хостинга держите одинаковые записи на старых и новых NS, пока все резолверы не перейдут на новые.

TTL старой записи и максимальное время обновления
TTLСколько может отдаваться старое значение
300До 5 минут
3600До 1 часа
14400До 4 часов
86400До 24 часов

Почему ответы различаются, даже если всё настроено верно

Расхождение не всегда означает, что запись ещё обновляется. Прежде чем ждать, проверьте, нет ли у домена одной из этих особенностей.

  • CDN и GeoDNS: крупные сайты и сети доставки контента отдают разные IP в зависимости от того, откуда пришёл запрос. Для таких доменов разные A- и AAAA-записи у разных резолверов — норма.
  • Ротация адресов: сервис может отдавать каждый раз часть пула IP. Порядок записей инструмент не учитывает, но разный набор будет виден как разные варианты.
  • Фильтрующие резолверы: Quad9 и AdGuard блокируют часть доменов, и для них ответ отличается от остальных.
  • Разные значения TTL у резолверов — это нормально: каждый получил запись в своё время, и отсчёт у каждого свой.

Как ускорить обновление DNS

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

  • Понизьте TTL записи до 300 секунд за 24–48 часов до изменения, а после переезда верните прежнее значение.
  • Не выключайте старый сервер, пока проверка не покажет новый адрес у всех резолверов и не истечёт старый TTL.
  • Сбросьте локальный кэш: ipconfig /flushdns в Windows, sudo dscacheutil -flushcache в macOS, а в Chrome — кнопка Clear host cache на странице chrome://net-internals/#dns.
  • При смене почтового сервера проверьте MX и TXT (SPF) отдельно — у них могут быть свои TTL.

Частые вопросы

Сколько времени обновляются DNS-записи?

+

Не дольше TTL старой записи: при TTL 3600 — до часа, при 86400 — до суток. Смена NS-серверов может занимать до двух суток и больше, потому что TTL делегирования в зоне верхнего уровня обычно большой.

Почему у меня открывается старый сайт, а проверка показывает новый IP?

+

Старое значение закэшировано у вас: в браузере, операционной системе, роутере или DNS провайдера. Сбросьте кэш DNS, перезапустите браузер или временно переключитесь на другой резолвер, например 1.1.1.1 или 77.88.8.8.

Резолверы показывают разные IP — запись ещё не обновилась?

+

Не обязательно. Если домен работает через CDN или GeoDNS, разные адреса — нормальное поведение. Если же у одних резолверов новый IP, а у других старый, значит, у вторых ещё не истёк TTL — дождитесь его и повторите проверку.

Что значит «Домен не найден (NXDOMAIN)»?

+

Резолвер считает, что такого имени не существует. Причины: домен ещё не делегирован, запись удалена, ошибка в имени или резолвер закэшировал отрицательный ответ до того, как вы создали запись.

Можно ли проверить TXT-запись SPF или DKIM?

+

Да. Выберите тип TXT и укажите нужное имя: сам домен для SPF, _dmarc.example.ru для DMARC или selector._domainkey.example.ru для DKIM. Длинные TXT-записи получаются целиком, при необходимости — через TCP.

Почему TTL у резолверов разный?

+

TTL в ответе — это остаток времени в кэше конкретного резолвера. Каждый получил запись в свой момент, поэтому и остаток у всех разный. Исходное значение TTL задаётся в настройках DNS-зоны.

Можно ли проверить IP-адрес вместо домена?

+

Нет, инструмент работает только с доменными именами. Внутренние имена вроде .local, .lan или localhost тоже не проверяются — публичные резолверы о них не знают.

Связанные инструменты