ВебОснова — хостинг, домены и создание сайтов Практический справочник по выбору хостинга, регистрации и настройке доменов, DNS, конструкторам сайтов и запуску проектов. Инструкции, сравнения сервисов и ответы на частые вопросы.
DNS и управление доменом

Кэш DNS-записи: принцип работы и способы очистки

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

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

Что такое кэш DNS-записи

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

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

В кэше сохраняются не только A-записи с IPv4-адресами. Аналогично могут временно храниться AAAA-записи для IPv6, CNAME, MX, NS, TXT и другие типы DNS-данных. Их поведение зависит от TTL и политики конкретного DNS-резолвера.

Зачем нужен DNS-кэш

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

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

Кэширование особенно заметно в локальных сетях и крупных сервисах. Роутер или корпоративный DNS-сервер может обслуживать запросы множества устройств, используя один сохраненный ответ вместо повторного обращения к внешней инфраструктуре.

Почему возникает проблема устаревшей записи

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

Похожая ситуация возникает при смене почтового сервера, DNS-провайдера, CDN или настроек поддомена. Если разные резолверы обновляют данные в разное время, домен может открываться по-разному в зависимости от сети и устройства.

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

Как очистить кэш DNS

Если изменения должны примениться немедленно, начните с локального устройства. В Windows кэш обычно очищают командой ipconfig /flushdns, запущенной в командной строке с подходящими правами. После выполнения система удаляет сохраненные результаты и заново запрашивает DNS-данные при следующем обращении.

В macOS и Linux способ зависит от используемой службы разрешения имен. На компьютере может работать systemd-resolved, nscd, dnsmasq или другая служба. Обычно очищают кэш через перезапуск соответствующего сервиса или штатную команду операционной системы. Универсальной команды для всех дистрибутивов нет, поэтому сначала нужно определить активный DNS-резолвер.

Если проблема сохраняется, очистите DNS-кэш браузера, перезапустите браузер и временно отключите приложения, которые используют собственный DNS или защищенное разрешение имен. Затем перезагрузите роутер: некоторые модели сохраняют DNS-ответы в оперативной памяти. В корпоративной сети обновление может потребовать очистки кэша внутреннего DNS-сервера администратором.

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

Как проверить актуальность DNS-данных

Для диагностики сравнивают ответы нескольких DNS-резолверов и проверяют их возраст или оставшийся TTL. Запросы можно выполнять штатными инструментами операционной системы, например nslookup или dig. Важно смотреть не только на сам IP-адрес, но и на тип записи, цепочку CNAME, сервер, который дал ответ, и время кэширования.

Если один резолвер возвращает новый адрес, а другой старый, вероятнее всего, обновление еще распространяется или на серверах настроены разные данные. Если все резолверы возвращают старый адрес после истечения ожидаемого TTL, нужно проверить авторитетную DNS-зону и делегирование домена.

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

FAQ

Сколько времени хранится кэш DNS-записи?
Срок определяется значением TTL конкретной записи, но фактическое обновление может занять дольше из-за нескольких уровней кэширования.
Поможет ли очистка DNS-кэша открыть сайт по новому IP-адресу?
Да, если устаревшие данные сохранены на вашем устройстве, в браузере или роутере. Удаленные кэши при этом могут оставаться прежними.
Почему DNS-запись уже изменили, а сайт открывается по-старому?
Старый ответ может сохраняться у локального или внешнего DNS-резолвера до окончания TTL. Также причиной бывает ошибка в авторитетной DNS-зоне или делегировании.
Нужно ли очищать DNS-кэш после каждой смены записи?
Нет. Обычно достаточно дождаться окончания TTL. Принудительная очистка нужна для локальной диагностики или когда доступ к новому адресу требуется сразу.