Меню Рубрики

Clear cache dns linux

Как очистить / сбросить кеш 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:

Источник

How do I clear the DNS cache?

I just updated the DNS record ( ns1 , ns2 , ns3.myhostingcompany.com ) for a site I’ve got hosted, but I still get the domain registrar parking page.

I’d like to see if the problem is Ubuntu’s cached DNS records. Is there a way to clear Ubuntu’s DNS cache? (if such a thing exists?)

14 Answers 14

For 18.04 and higher

For 11.10 and below

Ubuntu doesn’t cache dns records by default so unless you’ve installed a dns cache there isn’t anything to clear.

DNS records are likely cached by your provider’s DNS servers so if you want to check if the DNS changes you made were successful you can interrogate a DNS server from your domain hosting service with dig:

dig -t a ns1.myhostingcompany.com @domain_registrar_dns_server

It you want Ubuntu to start caching dns I recommend installing pdnsd together with resolvconf . nscd is buggy and not advisable.

Читайте также:  Mint linux горячие клавиши

Ubuntu 17.04 and higher (18.04)

From Ubuntu 17.04 and onwards, systemd-resolve is used for DNS. You can flush systemd’s caches like so:

Ubuntu 12.04 uses dnsmasq which is built into network-manager , but it doesn’t cache dns so there is no need to flush it. Here is a sample line from my syslog to prove that point:

There is also no need for any configuration of dnsmasq . If you are running with stock settings it won’t be caching dns, as for it to do so you have to explicitly set it up as this Ubuntu article describes.

If you wanted to refresh your settings you could disable and then enable networking or run

This restarts dnsmasq because it is built in to network-manager ; check your syslog for the evidence for this.

If you are using a wired connection with dhcp network manager will be taking the settings direct from your router and your connection will be automatically established when you login to Ubuntu. You could check that the settings are correct in your router if you can access it via the web interface, and perhaps reboot it if necessary. If it is a general problem with dns, you could try using Google dns instead of your isp dns, and more information on that is detailed here.

Note that Ubuntu uses systemd-resolve from 17.04 and onwards so this answer doesn’t apply anymore to recent Ubuntu versions. See “flush DNS cache in Ubuntu 17.04 and higher (18.04)”

By default, DNS is not cached in Ubuntu dnsmasq is caching, run ps ax | grep dnsmasq and look at the running command. Here’s a breakdown of my default 13.10 machine:

/etc/NetworkManager/dnsmasq.d is empty by default. So there aren’t any overrides coming in there and just to check –cache-size=0 means what we think it means (instead of an unlimited cache), man dnsmasq shows:

So while dnsmasq can cache DNS, it isn’t caching out the box. You can check your machine and various configuration directories to check you’re on the same page.

If you are seeing cache issues, this is likely happening in one of a few places:

  • Upstream from your computer. Some routers cache. Many corporate networks will cache DNS. Many ISP-run DNS servers and will use their own caches. The only way to guarantee against a network cache is to use a cache you can manually refresh. This is why I like OpenDNS.
  • In the client application (notably browsers). Applications can do all sorts of their own caching that Ubuntu has no effect on. How Firefox caches DNS. How to clear Chrome’s DNS cache. Other browsers (and applications) might have their own mechanisms.

I’m scraping the barrel here but perhaps you’ve installed a non-standard DNS server in Ubuntu instead of turning caching on in dnsmasq . There are many: nscd , DJBDNS dnscache (aka TinyDNS), pdns , pdnsd , Bind9 (and its variants), and more I can’t even remember. These will probably be evidenced in /etc/resolv.conf (with config in /etc/resolvconf/` to autogen that file). The following shows an locally intercepted DNS query:

If you’re not hitting 8.8.8.8 (or whatever you expect your DNS server to be), check what you are hitting instead. In my case I can see this is just dnsmasq set up to mirror DNS queries back for LXC, but in your case it might be doing bad cachey things.

If you have done of the listed caches, the process for clearing each varies:

Источник

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

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

В этой статье приведены инструкции по очистке кеша DNS в разных операционных системах и веб-браузерах.

Очистить/удалить кэш DNS в Windows

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

Windows 10 и Windows 8

Чтобы очистить кэш DNS в Windows 10 и 8, выполните следующие действия:

  1. Введите cmd в строке поиска Windows.
  2. Щелкните правой кнопкой мыши на командной строке и выберите Запуск от имени администратора. Это откроет окно командной строки.
  3. В командной строке введите следующую строку и нажмите Enter:

В случае успеха система вернет следующее сообщение:

Windows 7

Чтобы очистить кэш DNS в Windows 7, выполните следующие действия:

  1. Нажмите на кнопку Пуск.
  2. Введите cmd в текстовое поле поиска меню «Пуск».
  3. Щелкните правой кнопкой мыши на командной строке и выберите Запуск от имени администратора. Это откроет окно командной строки.
  4. В командной строке введите следующую строку и нажмите 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, выполните следующие действия:

  1. Откройте Finder.
  2. Перейдите в Приложения> Утилиты> Терминал. Это откроет окно терминала.
  3. В командной строке введите следующую строку и нажмите Enter:

Введите свой пароль sudo и снова нажмите Enter. В случае успеха система не возвращает никаких сообщений.

Для более ранних версий MacOS команда очистки кэша отличается.

MacOS версии 10.11 и 10.9

MacOS версии 10.6 и 10.5

Очистить /удалить кэш DNS браузера

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

Google Chrome

Чтобы очистить DNS-кеш Google Chrome, выполните следующие действия:

  1. Откройте новую вкладку и введите в адресную строку Chrome: chrome://net-internals/#dns.
  2. Нажмите кнопку «Очистить кэш хоста».

Если это не работает для вас, попробуйте очистить кэш и куки.

  1. Нажмите, CTRL+Shift+Del чтобы открыть диалоговое окно «Очистить данные просмотра».
  2. Выберите диапазон времени. Выберите «Все время», чтобы удалить все.
  3. Установите флажки «Файлы cookie и другие данные сайта» и «Кэшированные изображения и файлы».
  4. Нажмите кнопку «Очистить данные».

Этот метод должен работать для всех браузеров на основе Chrome, включая Chromium, Vivaldi и Opera.

FireFox

Чтобы очистить DNS-кэш Firefox, выполните следующие действия:

  1. В верхнем правом углу щелкните значок гамбургера, ☰чтобы открыть меню Firefox:
  2. Нажмите на ⚙ Options (Preferences)ссылку.
  3. Нажмите на вкладку «Конфиденциальность и безопасность» или «Конфиденциальность» слева.
  4. Прокрутите вниз до Historyраздела и нажмите на Clear History…кнопку.
  5. Выберите временной диапазон, чтобы очистить. Выберите «Все», чтобы удалить все.
  6. Выберите все поля и нажмите «Очистить сейчас».

Если это не работает для вас, попробуйте следующий метод и временно отключите кэш DNS.

  1. Откройте новую вкладку и введите about:configв адресную строку Firefox.
  2. Найдите network.dnsCacheExpiration, временно установите значение 0 и нажмите ОК. После этого измените значение по умолчанию и нажмите ОК.
  3. Найдите network.dnsCacheEntries, временно установите значение 0 и нажмите ОК. После этого измените значение по умолчанию и нажмите ОК.

Заключение

Вы узнали, как очистить или очистить кэш DNS в операционных системах Windows, Linux и MacOS.

Linux и MacOS могут использовать команду dig для запроса DNS и устранения проблем с DNS.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Популярные записи

Adblock
detector