Медленно ли ваш опыт просмотра в Интернете на вашем устройстве Linux или веб -сайты, которые вы посещаете устаревшим, или вообще не тот веб -сайт? Давайте обсудим промывание кэша DNS на Linux и как узнать, действительно ли вам нужно.
Что такое кэши DNS?
Ваш компьютер использует локальный кеш DNS?
Просмотр вашего DNS Cache
Как очистить кеш DNS на Linux
Как промыть кэш DNSMASQ на Linux
Покраснел, с успехом
Что такое кэши DNS?
А доменное имя служба это часть магии, которая преобразует имена в числа. Он принимает имена сети устройств и имена веб -сайтов и ищет их IP -адреса. Затем сеть может использовать IP -адрес для правильного маршрута трафика на эти устройства или сайты.
Эти поиски, известные как Запросы В Не бывает мгновенно Анкет Есть небольшой, конечный период времени. Запросы DNS в Интернете могут потребовать запроса серверов предшественника DNS, серверов имен корня, доменных серверов верхнего уровня и авторитетных серверов имен. Запросы DNS быстрые, но для того, чтобы сделать их еще быстрее, ответы на последние запросы DNS кэшируются на серверах предшественников DNS.
Если ответ на запрос DNS находится в кэше сервера предшественника, никаких дополнительных серверов не нужно связаться. Ответ отправляется обратно из кэша сервера предшественника. Точно так же небольшой кеш поддерживается вашим широкополосным маршрутизатором дома. Если вы попросите локальное сетевое устройство, используя имя его сетевого устройства, ваш маршрутизатор предоставляет IP -адрес. Это также может кэшировать ответы, полученные от внешних серверов DNS.
Обычно сети и компьютеры Linux настроены на использование внешних сервисов DNS, либо предоставляемые вашим интернет -поставщиком или бесплатной услугой, такой как Opendns или Google DNS Анкет Есть веские причины, почему Некоторые люди запускают свой собственный DNS -сервер , но большинство из нас этого не делают. Тем не менее, ваш компьютер Linux - даже если он не запускает DNS -сервер, можно необязательно кэш DNS -результаты.
Проблема с использованием кэшированных данных заключается в том, что все это основана на предположении, что ни одна из деталей кэширования не изменилась с тех пор, как они были кэшированы. Если данные изменились, полученная вами информация будет устарела.
Если запись в кеш или весь кэш станет повреждением, в лучшем случае вы получите Flaky Performance, а в худшем - уязвимости безопасности. Именно тогда вы захотите изучить «промывку» или очистить кеш DNS.
Ваш компьютер использует локальный кеш DNS?
У некоторых из наших тестовых компьютеров были включены локальные кэши DNS, а другие отключились. Это было на нашем Манджаро 21 компьютер, но он был включен по умолчанию на Федора 37 и Ubuntu 22.10 Анкет
Чтобы определить, использует ли ваш компьютер Linux кэшировать запросы DNS, используйте
является активным
вариант
SystemCtl
командование Демон, который управляет кэшем DNS, является менеджером SystemD Network Resolution Legression, известный как
Systemd-Resolved
Анкет
Если ответ является «активным», происходит кэширование DNS. Если ответ «неактивен», это не так. На этом конкретном компьютере он активен. Мы можем использовать
Resolvectl
Команда с опцией статистики, чтобы увидеть, сколько записей в кеше.
Мы видим, что в кэше DNS этого компьютера есть 330 записей.
Просмотр вашего DNS Cache
Просмотр записей DNS Cache не является обязательным условием для промывания кеша, и если вы не заинтересованы в этом, вы можете Пропустите весь этот шаг Анкет Иногда, однако, это может быть информативным. Вы можете увидеть скремблированные записи, которые указывают на коррупцию, или вы можете увидеть сообщения об ошибках, связанные с проблемами решения устройства в вашей сети.
Теперь нет простого способа увидеть эти записи. Мы можем сделать это, но должны быть немного креативными.
USR1
, или
Пользовательский сигнал номер один
, это
сигнал
что можно отправить
убийство
и
убить всех
команды Этот сигнал не имеет предопределенного значения. Приложения могут свободно игнорировать этот сигнал или реагировать любым способом реализации разработчиков.
А
Systemd-Resolved
Демон реагирует на
USR1
Записав свой кэш в журналы системы. Затем мы можем использовать
JournalCtl
командование отфильтровать записи DNS.
Мы будем использовать
убить всех
командовать с
USR1
Чтобы отправить сигнал в
Systemd-Resolved
демон. Обратите внимание, что, хотя мы используем
убить всех
командование,
Systemd-Resolved
Демон продолжает бежать. Это не сигнал завершения, который мы посылаем.
Теперь мы будем использовать
JournalCtl
командовать с
-U
(Сортировать по
система
единица) опция для извлечения записей журнала, которые были сгенерированы
Systemd-Resolved
Анкет Мы перенаправляем этот вывод в текстовые файлы под названием «dns.txt».
Мы будем использовать
а
меньше
Просмотр просмотра файлов
Чтобы просмотреть содержимое файла.
Вы сможете найти кэшированные отображения между доменными именами и IP -адреса Прокрутка и поиск через текст.
Мы можем увидеть запись для Google, которая имеет IP -адрес 216.58.212.196. Вы можете проверить это, поместив IP -адрес в веб -браузер. Вы должны увидеть домашнюю страницу Google Search.
Как очистить кеш DNS на Linux
Промывание кэша удаляет все записи и снова запускает процесс сбора. Если есть какие -либо, это насильственно устраняет неправильные и коррумпированные записи из кэша.
Команда проста; мы используем
Resolvectl
с
промывки
вариант.
Мы молча возвращены в командную строку. Чтобы подтвердить, что что -то действительно произошло, мы снова проверем статистику кэша DNS.
Мы видим, что размер кэша сброшен до нуля. Он увеличится со временем, поскольку он накапливает новые записи.
Как промыть кэш DNSMASQ на Linux
А
DNSMASQ
Приложение предоставляет кэш DNS и сервер DHCP. Он популярен среди пользователей, которые хотят запустить свой собственный DNS -сервер, особенно на
Установки нестистемных
Анкет
Промывание
DNSMASQ
DNS Cache легко. Нам нужно отправить
Сти
сигнал, который сообщает
DNSMASQ
Демон для эффективного повторного определения. Это очищает свой кеш DNS. Чтобы отправить сигнал, мы используем
убить всех
командовать с
-Поп
флаг и название приложения.
Покраснел, с успехом
Конечно, если ваш компьютер вообще не кэширует, вам ничего не нужно проверить.
Если это кэширует запросы DNS, но все работает отлично, вы тоже можете игнорировать это. Но если вы испытываете медленные или спорадические обновления веб -страницы, когда вы просматриваете Интернет или вообще видите неправильные веб -страницы, это, вероятно, хорошее время, чтобы очистить ваш кэш DNS.