可能吗? 我们完全控制了我们的DNS服务器和实际指向的服务器。 我们感兴趣的是我们目前正在获得多lessDNS查询,因为我们想要迁移到Ultra DNS,但是我们需要知道一个月内我们可能会得到多less查询。
这有可能弄清楚吗? 开始跟踪之前需要启动服务吗? 或者使用shell来访问数据?
正如AndyN所说,这里的答案是:
sudo rndc stats
当你运行这个(如果在named.conf文件中configuration的话)Bind会把统计信息转储到configuration的统计文件中。
您需要检查以下行的/etc/bind/named.conf.*文件:
[ statistics-file "path_name"; ]
(在Ubuntu上是named.conf.options ,path是/var/run/named/named.stats )
从你的问题看来,你需要知道一个近似的DNS查询数量来进行扩展。 你应该能够从文件中得到这个粗略的想法。
运行sudo rndc统计信息
然后经过适当的时间(几个小时?几天?)再运行一次。
在您的统计文件中,您将看到以下内容(来自我自己的家庭DNS服务器 – 这既是cachingparsing器又是权威)。
对于大量的信息道歉…第一行中的数字是在“纪元时间”(自1970-1-1 00:00 UTC以来的秒数)。 使用这个,你可以计算出从一个“rndc stats”到下一个时间的不同数量,以及不同数量的请求(你会想看看传入的“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)
命令“ rndc stats ”应该与最新版本的BIND dns一起使用。
根据DistroWatch的说法,捆绑9.3.4-P1附带CentOS 5.5。 OP可以使用“rpm -qa | grep bind”从命令行validation。
AndyN的“rndc stats”(如果你碰巧运行BIND)和kaerast的“dnstop”是好的build议。 我添加了DSC ,这是一个非常全面的DNS统计数据包。
您的第一步应该是查看DNS服务器软件是否可以本地处理这个问题,可能是通过输出可以在其他地方分析的日志文件。 如果没有,你可以使用Dnstop ,它提供了一个顶级的DNS查询输出,通过监视networkingstream量。 它不仅会提供顶级请求,顶级请求者和查询types的统计信息,而且还会计算总共请求了多less请求。
另一种方法是使用Ntop来测量您的networkingstream量。 它不会给你与Dnstop相同的详细准确的输出,但它会给你一个想法,你有多lessdns的stream量,你也看到,它也将衡量多less其他stream量你可能是有用的其他容量规划。
警告:如果你的服务器很忙,这会产生一些巨大的日志,请留意你的空间。
首先在你的/etc/named.conf中启用'queries'通道来获取日志; 一个简明的例子:
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/ 。
如果有任何机会,你有安装Nagios或仙人掌有一些检查,将图表您的DNS服务器,包括请求的数量,利率等不值得安装这些只是用于监测您的DNS服务器,但如果你已经拥有它那么要么是一个不错的select。