Cómo borrar el caché DNS en DD-WRT


27

¿Cómo puedo borrar el caché DNS en DD-WRT en mi enrutador?

DD-WRT usa el demonio dnsmasq.


Además de las respuestas técnicamente correctas a continuación, podría reiniciarlo ...
— Hayden Thring

Respuestas:


21

Según Flush dnsmasq dns cache :

dnsmasq es un servidor ligero de DNS, TFTP y DHCP. Su objetivo es proporcionar un servicio de DNS y DHCP acoplado a una LAN. Dnsmasq acepta consultas DNS y las responde desde un pequeño caché local o las reenvía a un servidor DNS real y recursivo. Este software también tiene instalados muchos enrutadores baratos para almacenar en caché las consultas DNS Simplemente reinicie para vaciar el caché dns:

# stopservice dnsmasq
# startservice dnsmasq

No hay "sudo" en dd-wrt. No hay /etc/init.d en dd-wrt, ni ningún equivalente.
— WhyNotHugo

Hmm ... El código fue solo un ejemplo rápido. Tal vez debería eliminarlo. Alternativamente, ¿conoce el comando correcto para este entorno?
— Justin Ethier

La otra respuesta tiene la única forma que conozco para reiniciar los servicios en dd-wrt. No muy limpio, pero no sé de otra manera.
— WhyNotHugo

1
¿Qué tal stopservice dnsmasqseguido por startservice dnsmasq? Ver barrymorrison.com/tag/dd-wrt
— Justin Ethier

No había oído hablar de eso. Tampoco lo encontré después de un rápido google. Gran trabajo :)
— WhyNotHugo

18
killall -1 dnsmasq

Envíe la señal HUP para decirle que vacíe el caché y vuelva a leer su configuración, comenzando así con una pizarra limpia.


1
Creo que usar SIGHUP es el método más limpio porque la página de manual lo anota y dnsmasqpuede que no borre la memoria caché al reiniciar. Aunque lo hubiera puesto en # killall -HUP dnsmasqlugar de # killall -1 dnsmasqporque es más fácil de recordar / entender.
— James Haigh

1
En realidad sí no causa que vuelva a leer su configuración - esa parte es incorrecto - pero eso no tiene importancia para la cuestión porque la configuración no es necesario volver a leer para borrar la caché.
— James Haigh

7

Como no hay scripts de inicio en DD-WRT, creo que esta sería la forma más fácil de reiniciar dnsmasq:

  1. Mata a dnsmasq:

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

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

3

Siempre he usado:

killall -1 dnsmasq

que me ha funcionado bien Estoy ejecutando algunas de las versiones más nuevas de DD-WRT y

stopservice dnsmasq
startservice dnsmasq

También parecía funcionar sin error o necesitando sudo ...


1

Reinicie el servicio dnsmasq, ya sea desde la interfaz de usuario.

O desde la interfaz de línea de comando a través de

/init.d/dnsmasq restart
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.