Как очистить / сбросить кеш DNS в Linux
В некоторых случаях вам трудно добраться до некоторых сайтов из-за проблемы с DNS, возможно, ваш локальный DNS-кеш поврежден.
Для такой ситуации вам необходимо перезапустить службу кэширования DNS операционной системы.
Кэш-память DNS для системы доменных имен — это временная база данных, которая поддерживается операционной системой компьютера, которая содержит IP-адрес сайтов, которые вы недавно просматривали.
См. Ниже список основных серверов кэширования DNS, используемых в дистрибутиве Linux.
- nscd DNS cache
- dnsmasq dns cache
- BIND server dns cache
nscd DNS Cache: nscd — демон кэша службы имен, Nscd — это демон, который обеспечивает кэш для наиболее распространенных запросов службы имен.
Файл конфигурации по умолчанию, /etc/nscd.conf
dnsmasq DNS Cache: Dnsmasq — легкий, небольшой в размере, простой в настройке, DNS-сервер и DHCP-сервер.
Он предназначен для предоставления DNS и опционально DHCP для небольшой сети и подходит для маршрутизаторов с ограниченным доступом и брандмауэров.
Он может обслуживать имена локальных машин, которые не входят в глобальный DNS.
Он предназначен для использования в персональных компьютерах и небольших сетях, а не для больших сетей.
BIND Server DNS Cache: BIND означает «Berkeley Internet Name Domain».
Наиболее широко используемое программное обеспечение сервера имен, BIND — это программное обеспечение с открытым исходным кодом, которое реализует протоколы доменных имен (DNS) для Интернета.
BIND на сегодняшний день является наиболее широко используемым программным обеспечением DNS в Интернете, обеспечивая надежную и стабильную платформу.
1) Очистить кеш DNS на Ubuntu / Debian / LinuxMint
Используйте приведенную ниже команду для очистки кеша DNS в системах Ubuntu / Debian / Mint.
2) Сброс кеша dns сервера BIND
Используйте приведенную ниже команду для сброса кеша BIND сервера dns
3) Очистить кэш nscd DNS
Используйте команду ниже:
4) Очистить dnsmasq dns кэш
Используйте приведенную ниже команду для стирания кеша dnsmasq server dns
5) Очистка кеша dns в Windows
Используйте приведенную ниже команду для очистки кеша dns в Windows:
Как очистить кэш DNS
Однако в некоторых ситуациях, таких как устранение неполадок в сети или после смены преобразователей DNS, вам необходимо очистить кэш DNS. Это очистит кэшированные записи DNS и выполнит последующий поиск для разрешения домена на основе вновь настроенных параметров DNS.
В этой статье приведены инструкции по очистке кеша DNS в разных операционных системах и веб-браузерах.
Очистить/удалить кэш DNS в Windows
Процесс очистки DNS-кэша одинаков для всех версий Windows. Вам нужно открыть командную строку с правами администратора и запустить ipconfig /flushdns.
Windows 10 и Windows 8
Чтобы очистить кэш DNS в Windows 10 и 8, выполните следующие действия:
- Введите cmd в строке поиска Windows.
- Щелкните правой кнопкой мыши на командной строке и выберите Запуск от имени администратора. Это откроет окно командной строки.
- В командной строке введите следующую строку и нажмите Enter:
В случае успеха система вернет следующее сообщение:
Windows 7
Чтобы очистить кэш DNS в Windows 7, выполните следующие действия:
- Нажмите на кнопку Пуск.
- Введите cmd в текстовое поле поиска меню «Пуск».
- Щелкните правой кнопкой мыши на командной строке и выберите Запуск от имени администратора. Это откроет окно командной строки.
- В командной строке введите следующую строку и нажмите Enter:
В случае успеха система вернет следующее сообщение:
Очистить/удалить кэш DNS в Linux
В Linux отсутствует кэширование DNS на уровне ОС, если не установлена и не запущена служба кэширования, такая как Systemd-Resolved, DNSMasq или Nscd. Процесс очистки DNS-кэша отличается в зависимости от дистрибутива Linux и службы кэширования, которую вы используете.
Systemd Resolved
В большинстве современных дистрибутивов Linux, таких как Ubuntu 18.04, используется системный разрешенный сервис для кэширования записей DNS.
Чтобы узнать, запущена ли служба, выполните:
Если служба работает, команда напечатает active, иначе вы увидите inactive.
Чтобы очистить DNS-кэш Systemd Resolved, вы должны ввести следующую команду.
В случае успеха команда не возвращает никакого сообщения.
Dnsmasq
Dnsmasq – это облегченный сервер кэширования имен DHCP и DNS.
Если ваша система использует DNSMasq в качестве сервера кеширования, для очистки кеша DNS вам необходимо перезапустить службу Dnsmasq:
Nscd – это демон кэширования, и он является предпочтительной системой кэширования DNS для большинства дистрибутивов на основе RedHat.
Если ваша система использует Nscd, для очистки кеша DNS вам необходимо перезапустить службу Nscd:
Очистить/удалить кэш DNS на MacOS
Команда очистки кэша в MacOS немного отличается в зависимости от используемой версии. Команда должна быть запущена как пользователь с правами системного администратора (пользователь sudo).
Чтобы очистить кэш DNS в MacOS, выполните следующие действия:
- Откройте Finder.
- Перейдите в Приложения> Утилиты> Терминал. Это откроет окно терминала.
- В командной строке введите следующую строку и нажмите Enter:
Введите свой пароль sudo и снова нажмите Enter. В случае успеха система не возвращает никаких сообщений.
Для более ранних версий MacOS команда очистки кэша отличается.
MacOS версии 10.11 и 10.9
MacOS версии 10.6 и 10.5
Очистить /удалить кэш DNS браузера
В большинстве современных веб-браузеров есть встроенный DNS-клиент, который предотвращает повторяющиеся запросы при каждом посещении веб-сайта.
Google Chrome
Чтобы очистить DNS-кеш Google Chrome, выполните следующие действия:
- Откройте новую вкладку и введите в адресную строку Chrome: chrome://net-internals/#dns.
- Нажмите кнопку «Очистить кэш хоста».
Если это не работает для вас, попробуйте очистить кэш и куки.
- Нажмите, CTRL+Shift+Del чтобы открыть диалоговое окно «Очистить данные просмотра».
- Выберите диапазон времени. Выберите «Все время», чтобы удалить все.
- Установите флажки «Файлы cookie и другие данные сайта» и «Кэшированные изображения и файлы».
- Нажмите кнопку «Очистить данные».
Этот метод должен работать для всех браузеров на основе Chrome, включая Chromium, Vivaldi и Opera.
FireFox
Чтобы очистить DNS-кэш Firefox, выполните следующие действия:
- В верхнем правом углу щелкните значок гамбургера, ☰чтобы открыть меню Firefox:
- Нажмите на ⚙ Options (Preferences)ссылку.
- Нажмите на вкладку «Конфиденциальность и безопасность» или «Конфиденциальность» слева.
- Прокрутите вниз до Historyраздела и нажмите на Clear History…кнопку.
- Выберите временной диапазон, чтобы очистить. Выберите «Все», чтобы удалить все.
- Выберите все поля и нажмите «Очистить сейчас».
Если это не работает для вас, попробуйте следующий метод и временно отключите кэш DNS.
- Откройте новую вкладку и введите about:configв адресную строку Firefox.
- Найдите network.dnsCacheExpiration, временно установите значение 0 и нажмите ОК. После этого измените значение по умолчанию и нажмите ОК.
- Найдите network.dnsCacheEntries, временно установите значение 0 и нажмите ОК. После этого измените значение по умолчанию и нажмите ОК.
Заключение
Вы узнали, как очистить или очистить кэш DNS в операционных системах Windows, Linux и MacOS.
Linux и MacOS могут использовать команду dig для запроса DNS и устранения проблем с DNS.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Блог TipRus.com
При переносе домена или настройке хоста часто встречается ситуация, когда после изменения IP-адреса какого-либо хоста, в настройках зоны DNS, изменения на некоторых машинах изменяются не сразу. Проблема кроется в том, что ОС часто кэширует DNS и обновляет этот кэш не тогда, когда нам это надо.
Распространенным решением является прописывание настроек в hosts вручную. Или перезагрузка. Выполнять эти действия не очень-то удобно. Есть путь попроще — обновить DNS кеш через «Командную строку».
Обновление DNS кеша на Windows
Команда: «ipconfig /flushdns».
Команда «ipconfig /displaydns» поможет посмотреть кэш для посещенных доменов.
Примечание : для запуска комманды нажмите Start -> Run и вписать туда указанные команды.
Обновление DNS кэша на Linux
Вообще-то, Linux не кэширует DNS. Так что все вопросы следует направлять в используемым DNS серверам. Другими словами, надо использовать DNS сервер, который обновляется достаточно регулярно. Есть, конечно, и брутальный способ — перезапустить сеть командой «sudo /etc/init.d/networking restart».
Также встречаются люди, которые устанавливают nscd, который как раз и занимается кэшированием. Если этот демон запущен, его надо перезапустить «/etc/rc.d/init.d/nscd restart». В определенных случаях поможет команда «sudo /etc/resolvconf/update-libc.d/avahi-daemon».
Примечание : в разных дистрибутивах команды могут несколько отличаться.
И еще, если у Вас используется локально установленный BIND, то поможет команда «rndc flush» в BIND9 или «ndc flush» в BIND8.
Обновление DNS кеша на MacOS X
Решение такое же простое, как и в Windows. В терминале нужно ввести команду «lookupd -flushcache».
И если, все равно не работает…
Не забывайте, что разные приложения могут самостоятельно кэшировать записи DNS. В частности браузеры это делают весьма активно. Проблема лечится перезапуском нужной программы.