验证dnsmasq配置


7

如何验证dnsmasq的配置?

dnsmasq/var/log/daemon.logdnsmasq测试所解释的那样,过去曾经能够提供关于自身的详细信息。

但是,当我重新启动dnsmasq服务时,没有任何记录到/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 *** 

这是Ubuntu 13.10 Saucy。

Answers:


5

如果直接运行dnsmasq,它将在终端上显示错误。

dnsmasq --test 将对配置文件进行基本语法检查

dnsmasq 如果发现任何问题,将自行尝试启动dnsmasq,并在配置中提供行号。

否则(如果您不使用sudo),它将最终到达尝试创建租约的阶段,但由于权限而失败。如果您sudo在这一点上使用它,它应该可以正常工作,但是您可能必须kill手动执行该过程。


4

AFAIK dnsmasq通常将登录到syslog服务。默认情况下,它使用设施DAEMON。

FWIW:“它对我有用”(在Fedora 18/19中)。

如果您没有看到任何消息,建议您验证系统日志配置。或者,使用更实际的方法,尝试使用“ grep -c dnsmasq / var / log / *”之类的方法。

另请参见此处的手册页中有关日志记录的详细说明:http : //www.thekelleys.org.uk/dnsmasq/docs/dnsmasq-man.html

那里提到的其他一些日志记录可能会影响其行为,例如,如果设施包含“ /”字符。

其他子系统(sys-)是否正确记录?您可以使用'logger'命令使syslog记录消息吗?

HTH!

罗布


谢谢。它也对我有用,那就是Debian。感谢grep技巧,现在我发现在Ubuntu 13.10中,Saucy dnsmasq日志记录到syslog而不是daemon.log,即使手册页上仍然显示send syslog条目默认为DAEMON。
xpt

2

DNSMASQ是linux / unix上常见的DNS / DHCP cace解决方案之一,有一些很好的链接:

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

  1. 验证步骤:在/etc/dnsmasq.conf下打开调试日志记录:

日志查询
log-dhcp

  1. 然后,重新启动并在挖掘主机名时监视日志:

在debian变体上,dnsmasq默认在/ var / log / syslog中记录日志。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.