找出每月通过WHM或SSH进行多少DNS查询?


8

可能吗?我们可以完全控制我们的DNS服务器和实际指向的服务器。我们想迁移到Ultra DNS,因此对当前正在获取的DNS查询感兴趣,但我们需要知道一个月内可能收到的查询数量。

这可能找出来吗?跟踪开始之前,我需要启动服务吗?还是使用shell访问数据?


首先-什么DNS服务器软件,什么O / S?
Alnitak 2010年

它是CENTOS 5.5,但我不知道该软件包附带了什么DNS服务器软件。
凯里·琼斯

不直接是您的问题,而是为什么要使用UltraDNS?他们的唱片并不出色……
bortzmeyer 2010年

他们的选择似乎很棒,尽管看起来我们现在要进军。
凯里·琼斯

1
您“已完全控制我们的DNS服务器”,但不知道它正在运行什么软件?为什么不简单地看?
John Gardeniers

Answers:


10

正如AndyN所说,答案是:

sudo rndc stats

运行此命令(如果在named.conf文件中配置)时,Bind会将统计信息转储到配置的统计文件中。

您需要检查/etc/bind/named.conf.*文件中的以下行:

 [ statistics-file "path_name"; ]

(在Ubuntu上named.conf.options,路径为/var/run/named/named.stats

从您的问题看来,您需要了解用于扩展目的的大约DNS查询数量。您应该能够从文件中大致了解这一点。

运行sudo rndc统计信息

然后在合适的时间(几个小时?几天?)之后再次运行它。

在您的统计文件中,您将看到以下内容(这是从我自己的家庭DNS服务器获得的,该服务器既是缓存解析器又是权威的)。

抱歉,提供大量信息...第一行中的数字是“ Epoch时间”(自1970-1-1 00:00 UTC以来的秒数)。使用此功能,您可以计算出从一个“ rndc统计信息”到下一个“ rndc统计信息”之间的时间差异,以及不同数量的请求(您需要查看“收到的” QUERY”和“发送总数”(A + NS + SOA + PTR) + TXT + AAAA)。

+++ Statistics Dump +++ (1275999954)
++ Incoming Requests ++
                432 QUERY
++ Incoming Queries ++
                 306 A
                   2 NS
                   4 SOA
                  45 PTR
                   5 TXT
                  70 AAAA
++ Outgoing Queries ++
[View: default]
                 523 A
                   4 NS
                   4 SOA
                  42 PTR
                   9 TXT
                 330 AAAA
[View: _bind]
++ Name Server Statistics ++
                 432 IPv4 requests received
                 431 responses sent
                 259 queries resulted in successful answer
                  96 queries resulted in authoritative answer
                 335 queries resulted in non authoritative answer
                  39 queries resulted in nxrrset
                 133 queries resulted in NXDOMAIN
                 238 queries caused recursion
                   1 duplicate queries received
++ Zone Maintenance Statistics ++
++ Resolver Statistics ++
[Common]
[View: default]
                 849 IPv4 queries sent
                  63 IPv6 queries sent
                 841 IPv4 responses received
                  67 NXDOMAIN received
                   2 FORMERR received
                   2 EDNS(0) query failures
                 123 query retries
                   5 query timeouts
                 118 IPv4 NS address fetches
                 118 IPv6 NS address fetches
                   1 IPv4 NS address fetch failed
                  90 IPv6 NS address fetch failed
                  13 queries with RTT < 10ms
                 549 queries with RTT 10-100ms
                 279 queries with RTT 100-500ms
[View: _bind]
++ Cache DB RRsets ++
[View: default]
                 366 A
                  87 NS
                   9 CNAME
                   1 PTR
                  97 AAAA
                  20 RRSIG
                  15 NSEC
                   4 !AAAA
                   1 NXDOMAIN
[View: _bind]
++ Socket I/O Statistics ++
                 852 UDP/IPv4 sockets opened
                  64 UDP/IPv6 sockets opened
                   3 TCP/IPv4 sockets opened
                   2 TCP/IPv6 sockets opened
                 850 UDP/IPv4 sockets closed
                  63 UDP/IPv6 sockets closed
                 123 TCP/IPv4 sockets closed
                   1 UDP/IPv4 socket bind failures
                  63 UDP/IPv6 socket connect failures
                 849 UDP/IPv4 connections established
                 124 TCP/IPv4 connections accepted
                  63 UDP/IPv6 send errors
                   3 UDP/IPv4 recv errors
++ Per Zone Query Statistics ++
--- Statistics Dump --- (1275999954)

9

命令“ rndc stats ”应与最新版本的BIND dns一起使用。

根据DistroWatch的说法,CentOS 5.5附带了Bind 9.3.4-P1。OP可以从命令行使用“ rpm -qa | grep bind”来验证这一点。


这很有帮助,但是bortzmeyer有更多我需要的信息-谢谢!
凯里·琼斯2010年

rnd状态似乎正常,rndc统计数据无济于事
Kerry Jones 2010年

2

AndyN的“ rndc stats”(如果您碰巧运行BIND)和kaerast的“ dnstop”都是不错的建议。我添加了DSC,这是一个非常全面的DNS统计信息包。


1

第一步应该是查看DNS服务器软件是否可以本地处理此问题,方法可能是输出一个可以在其他地方分析的日志文件。失败的话,您可以使用Dnstop,它通过监视网络流量来提供dns查询的顶部输出。它不仅会为您提供最重要的请求,最重要的请求者和查询类型的统计信息,而且还会统计总共发出了多少个请求。

一种替代方法是使用Ntop总体上衡量您的网络流量。它不会为您提供与Dnstop相同的详细准确输出,但可以使您了解所看到的dns流量,还可以衡量所获得的其他流量,这可能对其他容量规划有用。


1

警告:如果您的服务器繁忙,则会生成大量日志,请注意您的空间。

首先,在/etc/named.conf中启用“查询”通道以获取日志;一个简单的例子:

logging {
  channel queries_channel {
        file "/var/log/named/queries.log" versions 5 size 500m;
        print-time yes;
  };
  category queries { queries_channel; }
}

请注意,如何将5个版本(旋转的日志)保持在500兆字节-根据需要进行调整以捕获所需的数据量。现在您已经有了日志,Google会“绑定查询统计信息”以找到最能满足您需求的工具或软件,以找出有问题的数字。我所知道的同时支持BIND v8和v9格式的其中之一是http://www.logreport.org/


而且也会大大降低BIND的速度!
bortzmeyer 2010年

并没有您想的那么多,但这实际上取决于服务器的繁忙程度……在具有大量从属服务器的中型到轻型服务器上,在主服务器上运行此服务器不会受到损害

0

如果您有机会安装了Nagios或Cacti,则可以通过许多检查来绘制DNS服务器的图形,包括请求数量,费率等。不值得仅安装这两个用于监视DNS服务器的检查,但如果已经安装了那么任何一个都是不错的选择。

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.