Программы
Как очистить кеш DNS записей в Linux

Как очистить кеш DNS записей в Linux

Сколько обновляются DNS записи По-разному. Можно сразу прописать в /etc/hosts — будет сразу.

В двух словах о DNS

DNS (англ. Domain Name System — система доменных имён) — компьютерная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста (компьютера или устройства), получения информации о маршрутизации почты, обслуживающих узлах для протоколов в домене (SRV-запись).

То есть с помощью DNS мы из слова localhost в строке браузера получим IP-адрес 127.0.0.1, соответствующий нашему локальному сетевому интерфейсу. Удобно, но само это сопоставление имя -> адрес хранится во многих местах. Сначала поглядеть в кеше, потом в /etc/hosts, затем сходить на сервера DNS, прописанные в /etc/resolve.conf, а они ходят на другие сервера DNS… И так до корневых. И на каждом уровне есть задержка обновления информации, кеши и прочие радости.

В результате неактуальных данных о DNS у нас могут быть интересные проблемы:

  • Ошибка «connection timed out» при попытке открыть страничку в браузере.
  • После регистрации домена можно долго ждать, пока все DNS-сервера о нём узнают.
  • Неправильные IP, которые закешировались и ведут на неправильный IP сервера (сайт будет недоступен).

Сколько обновляются DNS записи

По-разному.

Можно сразу прописать в /etc/hosts — будет сразу.

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

Но если не фантазировать, то это время колеблется от десятков минут до пары дней. То есть зарегистрированный домен или измененные записи DNS станут «видны» в интернете не сразу, а лишь по истечению некоторого времени.

Как очистить DNS кеш у себя на компьютере

Как ни странно, на Windows очистить DNS-кеш можно одной командой в консоли:

ipconfig /flushdns

В то время как на Linux существует много вариантов, каждый из которых не работает в конкретном дистрибутиве и т. д.

Если у нас Ubuntu, то я бы рекомендовал поставить службу nscd (name service caching daemon) и очистить ей DNS кеш:

sudo apt install nscd
sudo service nscd restart

Также можно посмотреть, что вообще происходит с кешем:

sudo nscd -g

И список закешированных доменов

sudo strings /var/cache/nscd/hosts
Также может быть вам интересно:

Micro men — фильм о начале эпохи PC

О временах первых персональных компьютеров, о первой волне персоналок в Британии.

Читать »

OpenCola — дух OpenSource в мире FastFood

С легкой руки энтузиастов всеобщей открытости одним из ее представителей стал общепит. Здесь термин «открытый продукт» приобретает буквальное значение. До сих пор бал в этой отрасли правили жадные монополисты, предпочитавшие держать свои технологии под толстым-толстым слоем шоколада.

Читать »
Фото Так ли безопасен Linux? Несколько коммитов с уязвимосятми в stable

Так ли безопасен Linux? Несколько коммитов с уязвимосятми в stable

Исследователи сумели пройти code-review с реквестами в ядро Linux, заведомо содержащими добавление уязвимостей.

Фото Как на Bash посчитать число строк в проекте (директории)

Как на Bash посчитать число строк в проекте (директории)

Ниже будет представлен однострочник, решающий данную задачу на Bash + пошаговое описание его работы.

Фото И снова sudo, и снова "решето"

И снова sudo, и снова "решето"

В утилите sudo была исправлена очередная уязвимость.

Фото Google прекращает поддержку сторонних приложений в API Chrome-like

Google прекращает поддержку сторонних приложений в API Chrome-like

Гугл отключает всех пользователей Chrome-зависимых API. Зачем? К чему это приведёт?

Фото Как найти самые большие папки и файлы в Linux

Как найти самые большие папки и файлы в Linux

Когда кончается место на жестком диске, возникает закономерный вопрос: на что же оно было потрачено, какие файлы разрослись больше положенного?

Фото Команда grep – полезные ключи и примеры использования

Команда grep – полезные ключи и примеры использования

У команды "grep" довольно много различных особенностей. особенно, если учесть, что с английского это "решето" – а что может войти в решето , не факт что выйдет!

Фото Как создать неизменяемый файл в Linux / MacOS / FreeBSD

Как создать неизменяемый файл в Linux / MacOS / FreeBSD

Само собой, root может всё (если введёт пару команд), однако, это вполне легальный способ запретить изменение файла.

Фото Социальная сеть – фильм о создании Facebook

Социальная сеть – фильм о создании Facebook

Фильм о создании и создателях самой большой социальной сети в мире. Марк Цукерберг – гений программирования или же обмана?