Перейти к содержимому
Эксплуатация

DNS-кеш и TTL: почему новый адрес появляется не сразу

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

2 мин чтенияПроверено и обновлено: 6 августа 2026 г.

Главное за минуту

  • TTL ограничивает время хранения DNS-записи в кеше.
  • Одно имя может временно возвращать старые и новые адреса в разных средах.
  • Сброс одного кеша не очищает все остальные.
  • Принудительная подмена DNS полезна для теста, но не заменяет реальную проверку распространения.

Что означает TTL

TTL записи задаётся владельцем зоны и сообщает кешу предельное время хранения. Нулевое значение запрещает обычное кеширование, однако постоянно низкий TTL увеличивает число запросов. Для планового изменения TTL обычно уменьшают заранее, а после стабилизации возвращают к рабочему значению.

Где сохраняется старый ответ

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

Тест с заданным адресом

cURL позволяет временно сопоставить хост, порт и адрес через CURLOPT_RESOLVE или командный параметр resolve. Это полезно для проверки будущего узла с сохранением правильного имени в URL и TLS. Такой тест не доказывает, что публичный DNS уже обновился.

Порядок диагностики

Зафиксируйте авторитетную запись и её TTL, затем сравните ответы нужных резолверов. После истечения TTL создайте новое соединение и повторите прикладной запрос. Не перезапускайте всю инфраструктуру, пока не определён конкретный кеш или транспортный слой.

Практический чек-лист

  1. 1Записать прежнее и новое значения DNS.
  2. 2Проверить TTL на авторитетном сервере.
  3. 3Сравнить ответы локального и серверного резолверов.
  4. 4Создать новое соединение после истечения TTL.
  5. 5Убрать временные правила resolve после теста.

Источники и документы

Материал подготовлен по первичным, официальным и техническим источникам. Формулировки статьи являются самостоятельным изложением.

  1. 1.RFC Editor / IETF: Domain Names — Concepts and Facilities
  2. 2.curl project: CURLOPT_RESOLVE
  3. 3.RFC Editor / IETF: Happy Eyeballs Version 2

Продолжить чтение

Материалы по близкой теме

Пошаговая диагностика

Прокси не подключается: найдите ошибку по этапу соединения

Читать

DNS и SOCKS5

DNS через SOCKS5: где разрешается доменное имя

Читать

Сетевая совместимость

Dual stack: как клиент выбирает между IPv4 и IPv6

Читать