Руководства

Как очистить кэш DNS (flush DNS) в Windows, macOS и Linux

Как очистить кэш DNS: ipconfig /flushdns в Windows, dscacheutil в macOS, resolvectl flush-caches в Linux, плюс очистка DNS-кэша в Chrome и Firefox.

Опубликовано ~7 мин чтения
На этой странице

Коротко: очистить кэш DNS (по-английски flush DNS) в Windows можно командой ipconfig /flushdns, в macOS командой sudo dscacheutil -flushcache, в Linux с systemd-resolved командой sudo resolvectl flush-caches. Каждая из них сбрасывает кэш локального резолвера, и следующий запрос снова уходит на DNS-сервер, а не берёт устаревший ответ из памяти. Это полезно сразу после изменения DNS-записи, когда упорно возвращается старый IP.

ОСКоманда
Windowsipconfig /flushdns
macOS (современные версии)sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
Linux, systemd-resolvedsudo resolvectl flush-caches
Linux, nscdsudo systemctl restart nscd
Linux, dnsmasqsudo systemctl restart dnsmasq (или: kill -SIGHUP $(pidof dnsmasq))
Chrome / Edgechrome://net-internals/#dns → Clear host cache
Firefoxabout:networking#dns → Clear DNS Cache

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

Командная строка или PowerShell (права администратора не нужны)
ipconfig /flushdns

В русской Windows команда отвечает Кэш сопоставителя DNS успешно очищен., в английской Successfully flushed the DNS Resolver Cache., причём независимо от того, было ли в кэше хоть что-нибудь. Посмотреть содержимое кэша перед очисткой можно так:

ipconfig /displaydns

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

Команда менялась от версии к версии macOS. Вот та, что работает в актуальных выпусках (Ventura, Sonoma и новее), причём без изменений она работает начиная с Sierra:

Терминал
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

Первая команда очищает кэш Directory Service, вторая велит mDNSResponder (процессу, который в macOS на самом деле разрешает имена) перечитать настройки. Выполняйте обе: в некоторых версиях любая из них по отдельности оставляет часть кэша на месте.

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

Какая команда сработает, зависит от того, какой резолвер использует дистрибутив. Сначала проверьте:

resolvectl status 2>/dev/null | head -1   # есть вывод → systemd-resolved
systemctl is-active nscd 2>/dev/null       # active → nscd
systemctl is-active dnsmasq 2>/dev/null    # active → dnsmasq
systemd-resolved (Ubuntu, Fedora, большинство современных дистрибутивов)
sudo resolvectl flush-caches
# Старый псевдоним того же действия, устаревший, но кое-где ещё есть:
sudo systemd-resolve --flush-caches
nscd (Name Service Cache Daemon, если установлен)
sudo systemctl restart nscd
dnsmasq (часто на роутерах и в некоторых десктопных системах)
sudo systemctl restart dnsmasq

У браузеров свой кэш DNS

Браузер сам разрешает имена хостов и кэширует результат отдельно от операционной системы, и очистка кэша ОС его не затрагивает:

БраузерЧто сделать
Chrome / Edge / BraveОткройте chrome://net-internals/#dns (или edge://net-internals/#dns) и нажмите Clear host cache
FirefoxОткройте about:networking#dns и нажмите кнопку очистки кэша DNS (Clear DNS Cache)
SafariОтдельной страницы нет; кэш в памяти очищается, если полностью закрыть Safari

У роутера тоже есть кэш

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

Когда очистка кэша DNS действительно помогает

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

Если резолвер провайдера отвечает медленно или неверно, его можно заменить публичным, например Google DNS. А если нужно, чтобы домен открывался с другого адреса только на вашем компьютере, например для проверки сайта на новом сервере, это задача для файла hosts; после его правки кэш DNS тоже стоит очистить.

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

Как DNS-запрос вообще проходит путь от вашего резолвера до авторитативного сервера, объясняет статья Что такое DNS.

Впервые направляете домен на сервер или переносите его на новый? Что при этом настроить в DNS и как TTL определяет, сколько старый ответ продержится у других людей даже после очистки вашего кэша, описано в статье Как направить домен на VPS (англ.).

Частые вопросы

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

Откройте командную строку или PowerShell и выполните ipconfig /flushdns. Права администратора не нужны. Русская Windows отвечает «Кэш сопоставителя DNS успешно очищен.» независимо от того, было ли что-то в кэше; посмотреть содержимое кэша до очистки можно командой ipconfig /displaydns.

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

Зависит от резолвера: sudo resolvectl flush-caches для systemd-resolved (большинство современных дистрибутивов), sudo systemctl restart nscd для nscd и sudo systemctl restart dnsmasq для dnsmasq. Минимальный сервер, где ничего из этого не запущено, часто вообще не держит локального кэша DNS.

Поможет ли очистка кэша DNS, если открывается не тот сайт?

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

Читайте также

Все статьи раздела

«DNS-сервер не отвечает»: как исправить ошибку

«DNS-сервер не отвечает» значит, что компьютер не получил ответа от DNS-сервера из настроек адаптера. Как проверить, сменить серверы и сбросить Winsock.

Что такое DNS и как работает система доменных имён

DNS превращает имена сайтов в IP-адреса. Как устроен запрос от браузера до авторитетного сервера, какие бывают записи и частые проблемы с DNS.

Google DNS: адреса 8.8.8.8 и 8.8.4.4, IPv6 и как прописать DNS-сервер Google

Google DNS (Google Public DNS): 8.8.8.8 и 8.8.4.4 плюс два адреса IPv6. Как прописать DNS-сервер Google в Windows, на Mac, в Linux, на Android и роутере.

Файл hosts в Windows 10 и 11, macOS и Linux: где находится, как изменить и почему не работает

Файл hosts в Windows 10 и 11 лежит в C:\Windows\System32\drivers\etc. Как открыть его Блокнотом от имени администратора, синтаксис и почему правки не работают.

How to point a domain at your VPS (and add HTTPS)(англ.)

Two DNS records and a short wait. Which record types to use, how to verify propagation, why it is not instant, and how to add a free HTTPS certificate.