Verificar la configuración de dnsmasq

Verificar la configuración de dnsmasq

¿Cómo verificar dnsmasqla configuración de?

dnsmasqsolía poder dar información detallada sobre sí mismo en /var/log/daemon.log, como se explica enprueba dnsmasq.

Sin embargo, cuando reinicié mi servicio dnsmasq, no se registra nada en /var/log/daemon.log:

% echo "    *** DEBUG `date --rfc-3339=seconds` DEBUG *** " >> /var/log/daemon.log

% service dnsmasq restart 
* Restarting DNS forwarder and DHCP server dnsmasq                      [ OK ] 

% tail /var/log/daemon.log
*** DEBUG 2013-11-27 23:04:08-05:00 DEBUG *** 

Este es Ubuntu 13.10 Saucy.

Respuesta1

--sin demonio

dnsmasqimprimirá errores en la terminal si lo ejecuta directamente. es decir dnsmasq --no-daemon, o con todas las opciones de registro:

$ dnsmasq --no-daemon --log-queries=extra --log-dhcp --log-debug -C /path/to/dnsmasq.conf

dnsmasqpor sí solo intentará iniciar dnsmasq y proporcionará un número de línea en la configuración si encuentra algún problema allí.

--prueba

dnsmasq --testrealizará comprobaciones básicas de sintaxis en los archivos de configuración. Si tiene éxito, debería imprimir algo como

$ dnsmasq --test
dnsmasq: syntax check OK.

Un fracaso artificial parece

$ echo 'A-VERY-BAD-OPTION' > /tmp/tmp.conf
$ dnsmasq -C /tmp/tmp.conf --test

dnsmasq: bad option at line 1 of /tmp/tmp.conf

permisos

Si prueba sin sudoentonces una buena configuración, dnsmasq eventualmente debería llegar a la etapa en la que intenta comenzar a escuchar en el puerto 53, pero falla debido a los permisos.

Si usa sudo(o establece port=1024o superior en la configuración), dnsmasq debería comenzar a ejecutarse, pero es posible que deba realizar killel proceso manualmente. Si ha ejecutado con --no-daemon, esto es fácil de hacer Ctrl-C.

Respuesta2

AFAIK dnsmasq normalmente iniciará sesión en el servicio syslog. Por defecto utiliza la instalación DAEMON.

FWIW: "Funciona para mí" (en Fedora 18/19).

Si no ve ningún mensaje, le sugiero que verifique la configuración de su syslog. O, un enfoque más empírico, pruebe algo como "grep -c dnsmasq /var/log/*".

Consulte también la descripción detallada del inicio de sesión en la página del manual aquí: http://www.thekelleys.org.uk/dnsmasq/docs/dnsmasq-man.html

Hay otras posibilidades de registro mencionadas allí que pueden afectar su comportamiento, por ejemplo, si la instalación contiene un carácter '/'.

¿Los otros subsistemas (sys) están registrando correctamente? ¿Puedes hacer que syslog registre un mensaje usando el comando 'logger'?

¡HH!

Rob.

Respuesta3

DNSMASQ es una de las soluciones cace DNS/DHCP comunes en Linux/Unix, algunos buenos enlaces:

help.ubuntu.com/community/Dnsmasq manpages.ubuntu.com/manpages/lucid/man8/dnsmasq.8.html wiki.debian.org/HowTo/dnsmasq

  1. Pasos de verificación: active el registro de depuración en /etc/dnsmasq.conf:

consultas de registro
log-dhcp

  1. Luego, reinicie y observe los registros cuando busque el nombre de host:

En las variantes de Debian, dnsmasq registra de forma predeterminada en /var/log/syslog.

información relacionada