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.


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

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.


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 
    

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 ...


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
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.