TTL
Оригинальное название: Time To Live (TTL)
Коротко
Время в секундах, указанное у DNS-записи, в течение которого резолверы могут хранить её в кеше и не запрашивать заново у авторитетного сервера.
Что такое «TTL»
TTL (Time To Live) — главный рычаг, от которого зависит, как быстро мир увидит изменения в DNS. Резолвер провайдера, получив запись с TTL 3600, час отвечает своим клиентам из кеша. Если за этот час адрес сайта сменился, часть посетителей всё ещё попадает на старый сервер. Отсюда расхожее «DNS обновляется до суток»: никакой единой рассылки обновлений нет, просто кеши живут столько, сколько разрешил TTL. Подробнее этот эффект разобран на странице о распространении DNS-изменений.
Как выбрать значение
- 300 секунд и меньше — для записей, которые могут понадобиться быстро сменить: переключение на резервный сервер, ожидаемый переезд.
- 3600 секунд — разумное значение по умолчанию для A, MX и TXT большинства сайтов.
- 86400 секунд и больше — для редко меняющихся записей вроде NS. Меньше запросов, но любая ошибка будет жить в кешах сутки.
Слишком маленький TTL не ломает сайт, но добавляет каждому новому посетителю время на лишний DNS-запрос. Отдельный срок действует для отрицательных ответов «такого имени нет» — его задаёт SOA-запись зоны.
Пример: подготовка к переезду сервера
Сайт переносят на новый хостинг, у A-записи стоит TTL 86400. Порядок такой:
- Минимум за сутки до переезда снизить TTL до 300: прежнее значение 86400 позволяет кешам хранить запись как раз сутки.
- В день переезда сменить IP в A-записи. Через пять минут большинство резолверов получит новый адрес.
- Убедиться, что всё работает, и вернуть TTL к 3600.
Об остальных шагах — копии файлов, базы и проверке после переключения — рассказано в статье о переносе сайта на другой хостинг без простоя.
Как увидеть TTL в ответе
dig example.ru A +noall +answer
example.ru. 3600 IN A 203.0.113.10
; тот же запрос к тому же резолверу через минуту
example.ru. 3540 IN A 203.0.113.10
Авторитетный сервер всегда отдаёт исходное значение, а кеширующий — оставшееся время жизни, которое убывает до нуля. Некоторые резолверы ограничивают TTL снизу или сверху по своим правилам, поэтому на очень маленькие значения полагаться полностью нельзя.

