それは可能ですか? DNS サーバーと実際にポイントされているサーバーは完全に制御できます。Ultra DNS に移行したいので、現在取得している DNS クエリの数に関心がありますが、1 か月に取得するクエリの数を把握する必要があります。
これを理解することは可能ですか? 追跡を開始する前にサービスを開始する必要がありますか? または、シェルを使用してデータにアクセスしますか?
答え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 からの秒数) です。これを使用すると、1 つの「rndc 統計」から次の「rndc 統計」までの時間の差や、リクエストの数の違いを計算できます (受信「クエリ」と送信合計 (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
コマンド "rndc 統計" は、BIND dns の最新バージョンで動作するはずです。
DistroWatch によると、CentOS 5.5 には Bind 9.3.4-P1 が同梱されています。OP は、コマンド ラインから「rpm -qa | grep bind」を使用してこれを確認できます。
答え3
AndyNの「rndc stats」(BINDを実行している場合)とkaerastの「dnstop」は良いアドバイスです。DSCC のこれは 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; }
}
500 MB で 5 つのバージョン (ローテーション ログ) が保持されることに注意してください。必要なデータ量を取得するには、必要に応じて調整してください。ログが取得できたら、Google で「bind query statistics」を検索して、問題の数値を見つけるのに最も適したツールまたはソフトウェアを見つけてください。私が知っている BIND v8 と v9 の両方の形式をサポートするツールの 1 つは次のものです。http://www.logreport.org/。