Выбор TTL на практике
Что такое DNS TTL: как выбрать правильное значение
TTL расшифровывается как Time To Live (время жизни). Это число секунд, прикреплённое к каждой DNS-записи, и оно отвечает на один вопрос: как долго резолвер может использовать этот ответ, прежде чем спросить снова?
Это самая недооценённая настройка в DNS. Большинство принимает значение по умолчанию, заданное провайдером, и обнаруживает, что оно существует, только во время срочной миграции, когда менять его с пользой уже поздно.
Выбор TTL на практике
Компромисс
| Высокий TTL (86400) | Низкий TTL (300) | |
|---|---|---|
| Скорость проверки | Выше: обычно ответ из кеша | Ниже: частые повторные запросы |
| Число запросов | Низкое | Высокое |
| Когда вступает в силу изменение | До 24 часов | До 5 минут |
| Устойчивость при сбое вашего DNS | Лучше: выручают кеши | Хуже: кеши быстро истекают |
| Лучше всего подходит для | Стабильных записей | Записей, которые вот-вот изменятся |
Ключевой вывод
Высокий TTL оптимизирует скорость и устойчивость. Низкий TTL оптимизирует гибкость. Универсально правильного значения нет: ответ зависит от того, изменится ли эта запись в ближайшее время.
Как выглядит TTL на практике
example.com. 3600 IN A 93.184.216.34
example.com. 86400 IN NS ns1.example.com.Запрос через dig показывает оставшийся TTL, а не настроенный. Выполните один и тот же запрос дважды с интервалом в несколько секунд и посмотрите, как число уменьшается: это живое отображение того, как отсчитывает кеш резолвера.
dig +noall +answer example.com
# wait 10 seconds, then
dig +noall +answer example.comРекомендуемые значения по типам записей
| Запись | Рекомендуемый TTL | Почему |
|---|---|---|
A / AAAA | 3600 (1 час) | Хорошее значение по умолчанию: достаточно быстро, чтобы исправить ошибки, и достаточно долго для эффективности. |
A во время миграции | 300 (5 мин) | Задайте за день до изменения, чтобы оно вступило в силу быстро. |
MX | 3600-14400 | Почта ставится в очередь и повторно отправляется, поэтому скорость менее важна. |
TXT (SPF/DKIM/DMARC) | 3600 | Меняется редко, а когда меняется, достаточно быстро. |
NS | 86400+ | Делегирование почти никогда не меняется, а его кеширование снижает нагрузку на TLD. |
CNAME | Как у целевой записи | Нет смысла истекать быстрее, чем то, на что он указывает. |
Схема миграции
Это единственный рабочий процесс с TTL, который стоит запомнить, потому что он превращает риск суточного простоя в пятиминутный.
Минимум за один период прежнего TTL до изменения уменьшите TTL
Если текущий TTL равен 3600, измените его на 300 и подождите не меньше часа. Больше ничего не меняйте.
Убедитесь, что отдаётся короткий TTL
Запросите запись и проверьте, что TTL отсчитывается от 300. Теперь все кеши, хранящие вашу запись, работают на пятиминутном таймере.
Внесите настоящее изменение
Обновите адрес. Максимальное ожидание для любого пользователя теперь пять минут.
Проверьте, затем верните TTL
Когда трафик перешёл на новый сервер, верните TTL на 3600, чтобы не платить за лишние запросы.
TTL и устойчивость
У высокого TTL есть преимущество, о котором редко говорят: если у вашего DNS-провайдера случается сбой, резолверы, у которых ваши записи ещё в кеше, продолжают их отдавать. TTL в 24 часа способен провести ваш домен через многочасовой сбой DNS практически незаметно. TTL в 60 секунд означает, что вы пропадаете почти сразу.
Это веский аргумент в пользу того, чтобы держать TTL достаточно высоким для стабильных записей, а низкие TTL считать временным инструментом миграции, а не позицией по умолчанию. О том, чего вы ждёте при изменении записи, рассказано в статье о распространении DNS.
Нужно проверить публичные DNS-адреса домена? Воспользуйтесь инструментом Domain IP Lookup.
Бесплатные инструменты по этой теме
Часто задаваемые вопросы
Читайте также
«Распространение» — это лишь истечение срока жизни кэшей
0 мин
вы сохраняете изменение
0-5 мин
DNS-хостинг обновляет данные
до конца TTL
старый ответ ещё в кэше
после TTL
новый ответ видят все
Ничего никуда не рассылается — каждый кэш просто перестаёт использовать свою копию
Распространение DNS: почему ждать приходится так долго
Ничто никуда не распространяется. Понимание того, что происходит во время ожидания, подскажет, сколько оно продлится и как его сократить.
Записи, которые встретятся почти в каждой зоне
Что такое DNS A-запись (и когда нужна AAAA)
Запись, которая на деле направляет ваш домен на сервер: её устройство, аналог AAAA и четыре ошибки, чаще всего ломающие сайты.
Выбор TTL на практике
Как очистить DNS-кеш: Windows, macOS, Linux и браузеры
Команды для копирования на любой платформе и диагностика, которая заранее покажет, поможет ли очистка.