Как проверить, обновились ли DNS-записи
После смены IP-адреса сайта, переноса почты или замены NS-серверов новая запись появляется у пользователей не сразу. Инструмент одновременно спрашивает семь крупных публичных DNS-резолверов — Google, Cloudflare, Quad9, Яндекс, OpenDNS, AdGuard и Control D — и показывает, что отвечает каждый из них прямо сейчас.
Рядом с ответом указан TTL — сколько ещё секунд резолвер будет отдавать запись из кэша. Если ответы совпадают, изменение уже видно большинству пользователей. Если расходятся, по TTL понятно, когда старое значение перестанет отдаваться.
Как пользоваться проверкой
- 1Введите домен без протокола, например example.ru или mail.example.ru. Кириллические домены вида пример.рф переводятся в Punycode автоматически.
- 2Выберите тип записи: A и AAAA — адреса сервера, CNAME — псевдоним, MX — почтовые серверы, NS — DNS-серверы домена, TXT — SPF, DKIM, подтверждения сервисов.
- 3Нажмите «Проверить». Каждому резолверу даётся до 3 секунд; если основной адрес не отвечает, через 0,8 секунды запрос дублируется на резервный адрес того же сервиса.
- 4Посмотрите итог: «одинаковый ответ» означает, что все ответившие резолверы видят одно и то же. При расхождении ответы разбиваются на варианты, и у каждого резолвера отмечено, к какому варианту он относится.
- 5Если видно старое значение, ориентируйтесь на TTL этого резолвера: по его истечении резолвер запросит запись заново. Повторите проверку после этого времени.
Почему DNS обновляется не сразу
Словосочетание «распространение DNS» немного вводит в заблуждение: новая запись никуда не рассылается. Как только вы сохранили её у DNS-хостинга, authoritative-серверы домена сразу отдают новое значение. Задержка возникает в кэшах — у публичных резолверов, провайдеров, роутеров и операционных систем.
Каждая запись хранится в кэше столько секунд, сколько указано в её TTL на момент запроса. Пока срок не истёк, резолвер отвечает старым значением и не обращается к authoritative-серверам. Поэтому один пользователь уже попадает на новый сервер, а другой — ещё на старый.
Есть и обратный эффект — кэширование отсутствующей записи. Если кто-то запросил поддомен до того, как вы его создали, резолвер запомнит ответ «такого имени нет» на время, заданное в SOA-записи зоны. Новая запись появится у этого резолвера только после истечения этого срока.
Какие DNS-резолверы опрашивает инструмент
Выбраны крупные бесплатные резолверы, через которые идёт значительная часть DNS-запросов в мире и в России. У каждого два адреса: запрос уходит на основной, а резервный подключается, если основной не ответил быстро.
| Резолвер | Адреса | Особенности |
|---|---|---|
| Google Public DNS | 8.8.8.8, 8.8.4.4 | Самый распространённый публичный резолвер |
| Cloudflare | 1.1.1.1, 1.0.0.1 | Быстрый резолвер с короткими задержками по всему миру |
| Quad9 | 9.9.9.9, 149.112.112.112 | Блокирует домены из списков угроз — для них отвечает NXDOMAIN |
| Яндекс DNS | 77.88.8.8, 77.88.8.1 | Базовый режим без фильтрации, популярен в Рунете |
| OpenDNS | 208.67.222.222, 208.67.220.220 | Резолвер Cisco, часто используется в офисных сетях |
| AdGuard DNS | 94.140.14.14, 94.140.15.15 | Блокирует рекламные и трекинговые домены |
| Control D | 76.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 | Сколько может отдаваться старое значение |
|---|---|
| 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 тоже не проверяются — публичные резолверы о них не знают.