DNS и разрешение имён

Срок кэширования DNS — TTL

Определение

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

Также ищут: DNS TTL · время жизни DNS-кэша · DNS Time to Live

Зачем это знать

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

Связи из словаря

Карта понятия

Доказательная часть

Что подтверждено

  1. В обычном режиме истёкший TTL запрещает дальнейшее повторное использование набора как свежего. Хранение данных для отдельно настроенной выдачи просроченных ответов имеет другой договор.

    Граница применимости: Обычный предел RFC 2181 и отдельный механизм RFC 8767; истечение TTL не объявляется обязательным физическим стиранием любых сохранённых байтов.

  2. TTL ограничивает обычное использование набора кэшем, а время действия RRSIG — криптографическую применимость подписи. При проверке подписанных данных учитывают оба ограничения.

    Граница применимости: Сопоставление семантики TTL и проверки DNSSEC; большой TTL не продлевает срок подписи.

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

    Граница применимости: Семантика TTL в DNS по RFC 1035 и уточнения RFC 2181; локальное хранение результата приложением здесь не описывается.

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

    Граница применимости: Обычное кэширование и убывание TTL по RFC 1034; специально разрешённая выдача просроченных данных — отдельный режим.

  5. TTL задаёт предел обычного повторного использования, а не обязательное время хранения. Резолвер вправе ограничить срок или удалить запись раньше из-за локальной политики и доступных ресурсов.

    Граница применимости: Верхняя граница TTL по RFC 2181; это не гарантия наличия записи в кэше до последней секунды.

  6. Выдача просроченных DNS-данных при невозможности обновления предусмотрена отдельным механизмом. Поэтому истечение обычного TTL не доказывает, что настроенный на этот режим резолвер прекратит отвечать прежними данными.

    Граница применимости: Условия и ограниченный режим RFC 8767; включение и пределы требуют проверки у оператора резолвера.

  7. Для обычного кэша уменьшать TTL полезно заранее: уже выданный ответ с большим сроком нельзя сократить изменением зоны задним числом. В плане переноса учитывают прежний срок и отдельно оговорённые исключения.

    Граница применимости: Редакторская рекомендация из верхней границы TTL и механизма просроченных ответов; она не обещает глобальную сходимость приложений к точному моменту.

Граница терминов

Не путать

Срок кэширования DNS — TTL Отрицательное кэширование DNS

TTL обычного набора записей и срок отрицательного ответа получаются из разных данных. Уменьшение TTL нового A не отменяет ранее закэшированное отсутствие имени.

Срок кэширования DNS — TTL Начальная запись зоны DNS — SOA

TTL ограничивает повторное использование данных кэшем. Таймеры и серийный номер SOA обслуживают другие задачи зоны; увеличение SERIAL само по себе кэш не очищает.

Перед спецификацией

Что проверить

  1. Зафиксируйте текущий TTL до начала переноса или смены адреса.
  2. При необходимости уменьшите его заранее и учтите уже выданные большие сроки.
  3. Сравнивайте оставшийся TTL у используемого резолвера с авторитетным значением.
  4. Проверьте отдельные наборы A, AAAA и CNAME, если они участвуют в пути.
  5. Для ранее отсутствовавшего имени выясните срок отрицательного кэша.
  6. Уточните режим выдачи просроченных данных и локальные ограничения кэша.
  7. Проверяйте переход приложения по наблюдениям, а не по одному таймеру в панели DNS.
Открытые основания

Первоисточники

  • Стандарт6
  • Первичная спецификация
    Clarifications to the DNS Specification Internet Engineering Task Force · RFC 2181, July 1997 · проверено

    Уточняет RRset, TTL, authoritative ranking и canonical-name semantics.

    Утверждения: 01 · 02 · 03 · 05 · 07

  • Первичная спецификация
    Serving Stale Data to Improve DNS Resiliency Internet Engineering Task Force · RFC 8767, March 2020 · проверено

    Офлайн-очередь 07.09.2026: агент документ не открывал; retrieved_on — дата постановки, не проверки. Сверить заголовок, редакцию и отдельный режим использования просроченных ответов и его границы.

    Утверждения: 01 · 06 · 07

  • Первичная спецификация
    Protocol Modifications for the DNS Security Extensions Internet Engineering Task Force · RFC 4035, March 2005 · проверено

    Определяет signing, authoritative serving и resolver validation behavior DNSSEC.

    Утверждения: 02

  • Первичная спецификация
    Domain Names — Implementation and Specification Internet Engineering Task Force · RFC 1035, November 1987 · проверено

    Задаёт DNS wire format, master files и базовые resource records A, CNAME, MX, NS и SOA.

    Утверждения: 03

  • Первичная спецификация
    Domain Names — Concepts and Facilities Internet Engineering Task Force · RFC 1034, November 1987 · проверено

    Определяет иерархию DNS, zones, authoritative data, referrals и resolver algorithm.

    Утверждения: 04

  • Первичная спецификация
    Negative Caching of DNS Queries Internet Engineering Task Force · RFC 2308, March 1998 · проверено

    Определяет cacheable NXDOMAIN и NODATA responses и получение negative TTL из SOA.

Карта знаний

Связанные понятия

Из знания — в навык

Курсы по теме

Подтвердите действие