透過 WHM 或 SSH 了解每月有多少個 DNS 查詢?

透過 WHM 或 SSH 了解每月有多少個 DNS 查詢?

是否可以?我們可以完全控制我們的 DNS 伺服器和實際指向的伺服器。我們對目前收到的 DNS 查詢數量感興趣,因為我們想要遷移到 Ultra DNS,但我們需要知道一個月內可能會收到多少查詢。

這樣可以算出來嗎?我需要在追蹤開始之前啟動服務嗎?或使用shell來存取資料?

答案1

正如 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 stats

然後在合適的時間(幾個小時?幾天?)後再次運行。

在您的統計檔案中,您將看到以下內容(這是來自我自己的家庭 DNS 伺服器 - 它既是快取解析器又是權威的)。

對大量資訊表示歉意...第一行中的數字採用「紀元時間」(自 1970 年 1 月 1 日 00:00 UTC 以來的秒數)。使用此功能,您可以計算出從一個「rndc stats」到下一個「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)

答案2

命令 ”國家資料中心統計" 應該適用於最新版本的 BIND dns。

據 DistroWatch 稱,CentOS 5.5 附帶了 Bind 9.3.4-P1。 OP 可以使用「rpm -qa | grep bind」從命令列驗證這一點。

答案3

AndyN 的“rndc stats”(如果您碰巧運行 BIND)和 kaerast 的“dnstop”都是很好的建議。我加差示掃描量熱法這是一個非常全面的 DNS 統計資料包。

答案4

警告:如果您的伺服器繁忙,這會產生一些巨大的日誌,請留意您的空間。

首先在 /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/

相關內容