распространение DNS

Неофициальное название задержки, после которой изменение DNS система доменных имен Справочник интернета, который связывает доменные имена с адресами компьютеров. Полное определение термина DNS становится видно всем. На самом деле ничего по интернету не распространяется: резолвер DNS-сервер, который ищет доменные имена по запросам пользователей. Полное определение термина резолвер просто хранят старые ответы, пока не истечет срок их сохраненных копий. Время ожидания зависит от TTL время жизни Сколько времени резолверы могут хранить сохраненную копию записи DNS. Полное определение термина TTL записей, а при смене DNS-сервер Сервер, который хранит записи DNS домена и отвечает на запросы. Полное определение термина DNS-сервер также от собственных настроек TLD домен верхнего уровня Последняя часть доменного имени, после последней точки. Полное определение термина TLD.

категория
DNS и технические основы

Обновлено 4 мин чтения

Когда меняются настройки DNS домена, например при переносе сайта или переходе на новые DNS-серверы, не все пользователи видят изменение одновременно. Какое-то время одни попадают на старую конфигурацию, а другие на новую. Это ожидание и называют распространением DNS.

Что понимают под распространением DNS

«Распространение» – неформальное слово. Оно наводит на мысль, что изменение расходится по интернету, но на самом деле никуда ничего не рассылается. Резолверы, то есть серверы, которые ищут имена для пользователей, хранят копии уже полученных ответов и используют их, пока не истечет срок. Только после этого они запрашивают данные снова. В RFC Request for Comments Пронумерованный документ из серии, в которой фиксируются технические стандарты и практики интернета. Полное определение термина RFC 9499, документе IETF Инженерный совет интернета Открытая организация, которая разрабатывает интернет-стандарты, такие как DNS, EPP и RDAP. Полное определение термина IETF с терминологией DNS, понятия «propagation» нет.

Обычно этим словом обозначают изменения двух видов:

  • Изменение записи в собственной зоне домена, например новая A-запись запись DNS, которая связывает доменное имя с IPv4-адресом. Полное определение термина A-запись, которая направляет имя на новый веб-сервер.
  • Смена DNS-серверов. Ее выполняют у регистратор Компания, которая регистрирует доменные имена в регистратуре для своих клиентов. Полное определение термина регистратор, который передает изменение в регистратуру; затем регистратура Центральная база данных и система домена верхнего уровня или, в широком смысле, организация, которая ими управляет. Полное определение термина регистратура публикует новое делегирование в зоне TLD.

Почему изменения происходят не сразу: кэширование и TTL

Основные кэши находятся на рекурсивных резолверах, которые работают у интернет-провайдеров, компаний и общедоступных сервисов. stub-резолвер Простой DNS-клиент на устройстве, который передает запросы рекурсивному резолверу. Полное определение термина stub-резолвер (stub resolver) на телефоне или компьютере обычно обращается к одному из них.

Каждая запись DNS Одна запись в зоне DNS, состоящая из имени, типа, TTL и данных. Полное определение термина запись DNS содержит TTL: число секунд, которое задает тот, кто управляет зоной, и которое определяет, как долго можно хранить копию. Время жизни копии в кэше отсчитывается вниз, на нуле копия удаляется, и при следующем запросе запись загружается заново. TTL, равный 0, означает, что запись кэшировать нельзя.

TTL – это максимум, а не гарантия. Резолверы могут ограничивать слишком длинные TTL (RFC 8767 рекомендует предел в семь дней), а многие хранят ответы хотя бы несколько десятков секунд, даже если TTL меньше. А главное, никто не может удалить кэшированную копию с чужого резолвера. Именно поэтому и приходится ждать.

Сколько это занимает на самом деле и как сократить ожидание перед изменением

Единой универсальной цифры нет: все зависит от используемых TTL.

При изменении записи старый ответ может сохраняться в резолвере не дольше старого TTL записи, считая с момента, когда этот резолвер последний раз ее получил. При TTL 3 600 резолвер может выдавать старый ответ до одного часа после изменения.

При смене DNS-серверов складываются три задержки:

  1. Регистратор отправляет изменение в регистратуру.
  2. Регистратура публикует его в зоне TLD. Для gTLD общий домен верхнего уровня Домен верхнего уровня, не привязанный к стране и работающий по договорам с ICANN. Полное определение термина gTLD, работающих по базовому Соглашению об администрировании реестра ICANN Интернет-корпорация по присвоению имен и номеров Некоммерческая организация, которая координирует глобальную DNS и политику в отношении gTLD. Полное определение термина ICANN (редакция от 21 января 2024 года), уровень обслуживания по состоянию на октябрь 2026 года составляет 60 минут не менее чем для 95% проверочных зондов ICANN. Эта цифра не относится ни к старым gTLD, например .com, у которых свои соглашения, ни к ccTLD национальный домен верхнего уровня Домен верхнего уровня страны или территории, обычно из двух букв. Полное определение термина ccTLD.
  3. Истекает срок кэшированных записей NS. Зона TLD хранит собственную копию записей NS домена с TTL, который владелец домена изменить не может.

Стандартный способ сократить ожидание, описанный в RFC 1034 в 1987 году, – заранее снизить TTL, как минимум за один полный период старого TTL до изменения, внести изменение, а затем снова повысить TTL. Для зон .es Red.es Испанская государственная организация, которая управляет доменом .es через свое подразделение Dominios.es. Полное определение термина Red.es рекомендует обычные значения TTL и Minimum в записи SOA 3 600 секунд и временные значения вплоть до 900 секунд (15 минут) перед крупными изменениями (по состоянию на октябрь 2026 года). Снижение собственных TTL не сокращает срок хранения копии записей NS в зоне TLD.

Негативное кэширование: почему новое имя может оставаться «несуществующим»

Резолверы запоминают и то, что чего-то не существует. Если имя запросили до того, как для него создали записи, резолвер может закэшировать ответ NXDOMAIN несуществующий домен Ответ DNS, означающий, что запрошенное имя не существует. Полное определение термина NXDOMAIN (имя не существует) или NODATA (имя существует, но записи такого типа у него нет).

Отрицательный ответ хранится в течение меньшего из двух значений в записи SOA зоны: ее собственного TTL и поля Minimum. При обычных значениях Red.es 3 600 и 3 600 (по состоянию на октябрь 2026 года) это до одного часа. RFC 2308 предлагает резолверам по умолчанию ограничивать негативное кэширование Хранение DNS-ответа «не существует» в течение заданного времени. Полное определение термина негативное кэширование сроком от одного до трех часов.

Практический вывод: записи нужно создать до того, как проверять или объявлять новое имя. Слишком ранняя проверка может сделать имя «несуществующим» на все время негативного кэширования.

Как проверить, видно ли изменение

  • Запросить напрямую авторитативный сервер DNS-сервер, который дает официальные ответы о домене или зоне. Полное определение термина авторитативный сервер домена. Они отвечают из зоны, а не из кэша.
  • Затем запросить один или несколько рекурсивных резолверов. Если они все еще возвращают старые данные, показанный ими TTL означает время, оставшееся до следующего запроса.
  • При смене DNS-серверов проверить, что серверы TLD возвращают новые записи NS. Именно этот момент измеряет время обновления ICANN.

Как спланировать переезд без простоя

  1. Сначала подготовить новый хостинг или DNS-серверы и убедиться, что новые серверы уже правильно и авторитативно отвечают для домена. Red.es рекомендует это для .es.
  2. Заранее снизить TTL, как описано выше.
  3. Внести изменение: отредактировать записи или сменить DNS-серверы через регистратора. Для .es изменения делегирования запрашиваются у Red.es по установленной процедуре.
  4. Держать старые серверы или хостинг работающими с правильными данными как минимум в течение большего из двух сроков: TTL в зоне TLD и собственного TTL домена.
  5. Проверить результат, затем снова повысить TTL.

Пример с условными значениями: у example.com есть запись A с TTL 86 400 секунд (одни сутки). За два дня до переноса сайта владелец снижает TTL до 900. Когда истекают сутки старого TTL, владелец меняет запись A, и примерно через 15 минут резолверы, соблюдающие TTL, получают новый адрес.

Источники