Как очистить кеш DNS на DD-WRT


Ответы:


21

По данным Flush dnsmasq dns cache :

dnsmasq - это легкий сервер DNS, TFTP и DHCP. Он предназначен для предоставления связанных услуг DNS и DHCP в локальной сети. Dnsmasq принимает DNS-запросы и отвечает на них из небольшого локального кэша или перенаправляет их на реальный рекурсивный DNS-сервер. Это программное обеспечение также установлено много дешевых маршрутизаторов для кэширования DNS-запросов. Просто перезапустите, чтобы очистить кэш DNS:

# stopservice dnsmasq
# startservice dnsmasq

На dd-wrt нет "sudo". На dd-wrt нет ни /etc/init.d, ни его эквивалента.
WhyNotHugo

Хм ... Код был просто быстрым примером. Может быть, я должен удалить его. Или вы знаете правильную команду для этого env?
Джастин Этьер

Другой ответ имеет единственный известный мне способ перезапуска служб на dd-wrt. Не слишком чистый, но я не знаю другого пути.
WhyNotHugo

1
Как насчет stopservice dnsmasqследуют startservice dnsmasq? См. Barrymorrison.com/tag/dd-wrt
Джастин Этье

Не слышал об этом. Не нашел его и после быстрого гугла. Отличная работа :)
WhyNotHugo

18
killall -1 dnsmasq

Отправьте сигнал HUP, чтобы он очистил кэш и перечитал его конфигурацию, начав с чистого листа.


1
Я думаю, что использование SIGHUP - самый чистый метод, потому что руководство отмечает это и dnsmasqможет не очистить кеш при перезапуске. Хотя я бы поставил, # killall -HUP dnsmasqа не # killall -1 dnsmasqпотому, что его легче запомнить / понять.
Джеймс Хей

1
На самом деле это не приводит к тому, что он перечитывает свою конфигурацию - эта часть неверна - но это не имеет значения для вопроса, потому что конфигурацию не нужно перечитывать, чтобы очистить кэш.
Джеймс Хей

7

Поскольку в DD-WRT нет сценариев инициализации, я думаю, это будет самый простой способ перезапустить dnsmasq:

  1. Убить dnsmasq:

    root@ddwrt6:~# killall dnsmasq
    
  2. Запустите dnsmasq:

    root@ddwrt6:~# dnsmasq --conf-file=/tmp/dnsmasq.conf 
    

3

Я всегда использовал:

killall -1 dnsmasq

который работал хорошо для меня. Я использую несколько новых версий DD-WRT и

stopservice dnsmasq
startservice dnsmasq

также, кажется, работает без ошибок или необходимости sudo ...


1

Перезапустите службу dnsmasq либо из пользовательского интерфейса.

Или из интерфейса командной строки через

/init.d/dnsmasq restart
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.