如何测量每秒查询dns查询

如果你没有运行你自己的dns服务器(或者如果你必须自己去做这个假设你是这样的话),你将如何测量每秒为你的域获得多lessDNS查询?
是否有无论如何来告诉您是否使用您的DNS服务器作为权威来源或caching的结果的Web请求?

这个想法是能够告诉你是否有足够的能力来满足你现有的DNS服务器的需求。

简短的回答:在你的情况下,你没有办法告诉。

如果你有DNS托pipe给你,我会build议与托pipe服务提供商联系讨论此事。 可以肯定的是,他们不会准备让你访问日志或任何其他真实的信息,但他们至less应该能够告诉你他们的系统是否应对不好。 我想他们的系统正在为其他客户提供DNS,所以如果速度不够,他们会收到投诉。

如果你运行DNS服务器,我更喜欢joeqwerty的解决scheme(像DSC这样的捕获程序)来解决问题(查询日志logging),因为查询logging是:

  • 依赖于DNS服务器软件
  • 减慢名称服务器

无论如何,不​​pipe你是否运行DNS服务器,不,你不能说在客户端发生了什么。 如果你的名字服务器收到一个DNS请求,你可以合理地确定它的意思是它不在另一端的caching中。 如果你没有收到请求,你什么都不知道。

在DNS服务器上运行数据包捕获程序,启动捕获并仅过滤DNS,运行捕获一个小时,从捕获中收集的数据计算。

AFAIK,除非您在客户端上运行数据包捕获,否则无法知道客户端如何parsingDNS查找。

虽然这减慢了服务器(一点点),你可以简单地打开查询日志logging。 这会产生带有时间戳记的查询logging。之后,相对容易地取得一段时间内的平均值。

它在大多数版本的BIND中很容易做,不知道其他的。 我用同样的东西来警察一些DNS服务器,我们别无select,只能允许几乎全开放的recursion。