Como limpar o cache DNS no DD-WRT

27

Como posso limpar o cache DNS no DD-WRT no meu roteador?

O DD-WRT usa o daemon dnsmasq.

bobgubko
fonte
Além das respostas tecnicamente corretas abaixo, você poderia ciclo de poder que ...
Hayden Thring

Respostas:

21

De acordo com Flush dnsmasq dns cache :

O dnsmasq é um servidor DNS, TFTP e DHCP leve. Destina-se a fornecer serviço DNS e DHCP associado a uma LAN. O Dnsmasq aceita consultas DNS e as responde de um pequeno cache local ou as encaminha para um servidor DNS real e recursivo. Este software também está instalado em muitos roteadores baratos para armazenar em cache consultas de DNS. Basta reiniciar para liberar o cache do DNS:

# stopservice dnsmasq
# startservice dnsmasq
Justin Ethier
fonte
Não há "sudo" no dd-wrt. Não existe o /etc/init.d no dd-wrt, nem qualquer equivalente.
WhyNotHugo
Hmm ... O código foi apenas um exemplo rápido. Talvez eu deva excluí-lo. Como alternativa, você sabe o comando correto para este ambiente?
Justin Ethier
A outra resposta tem a única maneira que eu conheço para reiniciar os serviços no dd-wrt. Não é muito limpo, mas não conheço outra maneira.
WhyNotHugo
11
Que tal stopservice dnsmasqseguido de startservice dnsmasq? Veja barrymorrison.com/tag/dd-wrt
Justin Ethier
Não tinha ouvido falar sobre isso. Também não o encontrou após um rápido google.
Bom
18
killall -1 dnsmasq

Envie o sinal HUP para que ele limpe o cache e releia sua configuração, começando assim com uma ardósia limpa.

limão
fonte
11
Eu acho que usar SIGHUP é o método mais limpo, porque a página de manual o anota e dnsmasqpode não limpar o cache na reinicialização. Embora eu tivesse colocado # killall -HUP dnsmasqmais do que # killall -1 dnsmasqporque é mais fácil lembrar / entender.
James Haigh
11
Na verdade, não faz com que ele releia sua configuração - essa parte está incorreta - mas isso não importa para a pergunta porque a configuração não precisa ser relida para limpar o cache.
James Haigh
7

Como não há scripts de inicialização no DD-WRT, acho que essa seria a maneira mais fácil de reiniciar o dnsmasq:

  1. Mate o dnsmasq:

    root@ddwrt6:~# killall dnsmasq
    
  2. Inicie o dnsmasq:

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

Eu sempre usei:

killall -1 dnsmasq

o que funcionou bem para mim. Estou executando algumas das versões mais recentes do DD-WRT e

stopservice dnsmasq
startservice dnsmasq

também parecia funcionar sem erros ou precisando de sudo ...

Phil
fonte
1

Reinicie o serviço dnsmasq, a partir da interface com o usuário.

Ou a partir da interface da linha de comandos via

/init.d/dnsmasq restart
sean
fonte