首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何理解dnsmasq日志?

如何理解dnsmasq日志?
EN

Server Fault用户
提问于 2018-07-23 14:53:14
回答 1查看 10.2K关注 0票数 1

我已经在服务器上安装了dnsmasq,并且它被大量使用。当给定信号"SIGUSR1“时,我在/var/ log /syslog中有以下dnsmasq日志

代码语言:javascript
运行
复制
Jul 16 13:45:50 server1 dnsmasq[427008]: time 1531748750
Jul 16 13:45:50 server1 dnsmasq[427008]: cache size 10000, 18355/597070 cache insertions re-used unexpired cache entries.
Jul 16 13:45:50 server1 dnsmasq[427008]: queries forwarded 1510313, queries answered locally 15347110
Jul 16 13:45:50 server1 dnsmasq[427008]: queries for authoritative zones 0
Jul 16 13:45:50 server1 dnsmasq[427008]: server 100.1.2.3#53: queries sent 242802, retried or failed 0
Jul 16 13:45:50 server1 dnsmasq[427008]: server 100.2.3.4#53: queries sent 1371704, retried or failed 0

我已经将缓存大小设置为10000,这是最大允许值。使用dnsmasq作为请求的应用程序也感觉很慢。如何理解dnsmasq日志,并知道这些日志是否表示由于缓存大小较低而导致的性能问题?

EN

回答 1

Server Fault用户

发布于 2018-07-23 17:41:04

在回答这个问题之前,我应该强调,我不是dnsmasq方面的专家,但是结合手册页的日志看起来确实相当清楚:

当它接收到一个SIGUSR1时,dnsmasq会将统计信息写入系统日志。它写入缓存大小、在缓存过期之前必须从缓存中移除的名称数量,以便为新名称腾出空间,以及插入到缓存中的名称总数。还给出了缓存命中次数和丢失次数以及答复的权威查询数。对于每个上游服务器,它给出了发送的查询数量,以及导致错误的数量。在非守护进程模式或启用完全日志记录(-q)时,将对缓存的内容进行完全转储。

所以考虑到你的台词:

缓存大小10000,18355/597070缓存插入重用未过期缓存条目.

这一行有点混乱,但考虑到上面的文本,我认为这意味着在到期前必须删除18355个条目,以便为新条目腾出空间,而597070是插入的总数。考虑到这两个数字都远远大于您的缓存,一个更大的缓存可能会有一些好处,但是开发人员将其限制在10000是有充分理由的。如果您确实需要一个更大的缓存,那么您可能使用了错误的工具。

7月16日13:45:50 server1 dnsmasq427008:查询转发1510313,查询在本地回答15347110

您的大多数查询都是在本地回答的(以10倍的速度回答),这是很好的,但是这些数字远远大于缓存的使用。对我来说,这意味着由于某种原因,你的许多请求是无法满足的。

这可能是因为很多记录的TTL为零(例如,DHCP记录经常有零TTL)。

另一方面,必须从远程服务器获取的十分之一的请求可以解释人们感觉到的迟缓。不过,从所提供的信息来看是不可能的。

此外,即使您的所有查询都是可查询的,考虑到过期前被逐出的条目数量(虽然这取决于工作负载,但“突发”模式可能会导致大量的驱逐),无论如何,您似乎已经完全使用了缓存。

7月16日13:45:50 server1 dnsmasq427008:server 100.1.2.3#53:查询发送242802,重试或失败07月16 13:45:50 server1 dnsmasq427008:server 100.2.3.4#53:查询发送1371704,重试或失败0

这些行表明,从dnsmasq服务器获得的请求比100.1.2.3多。这可能不是问题的原因,但还是很有趣。

另外,如果这些地址是您实际使用的地址,并且它们是LAN地址,您可能需要考虑更改它们。100.0.0.0/8是一个可公开的可路由块,因此您可能有一个混淆的路由器试图将DNS查询路由到外部。即使你把静态的路由放进所有的路由器,这仍然是不好的做法,因为在你的网络上的用户将无法访问互联网上的任何东西在这个范围内。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/923164

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档