Ist das möglich? Wir haben die vollständige Kontrolle über unseren DNS-Server und den Server, auf den tatsächlich verwiesen wird. Uns interessiert, wie viele DNS-Abfragen wir derzeit erhalten, da wir zu Ultra DNS wechseln möchten, aber wir müssen wissen, wie viele Abfragen wir voraussichtlich in einem Monat erhalten werden.
Kann man das herausfinden? Muss ich einen Dienst starten, bevor die Verfolgung beginnt? Oder eine Shell verwenden, um auf die Daten zuzugreifen?
Antwort1
Wie AndyN sagt, lautet die Antwort hier:
sudo rndc stats
Wenn Sie dies ausführen (sofern in den named.conf
Dateien konfiguriert), gibt Bind statistische Informationen in eine konfigurierte Statistikdatei aus.
Sie müssen die Dateien /etc/bind/named.conf.* auf die folgende Zeile überprüfen:
[ statistics-file "path_name"; ]
(Unter Ubuntu ist es named.conf.options
und der Pfad ist /var/run/named/named.stats
)
Aus Ihrer Frage geht hervor, dass Sie zu Skalierungszwecken eine ungefähre Anzahl von DNS-Abfragen kennen müssen. Aus der Datei sollten Sie einen ungefähren Überblick darüber erhalten.
Führen Sie „sudo rndc stats“ aus.
Führen Sie es dann nach einer angemessenen Zeit (ein paar Stunden? ein paar Tagen?) erneut aus.
In Ihrer Statistikdatei sehen Sie Folgendes (das stammt von meinem eigenen DNS-Server zu Hause, der sowohl ein Caching-Resolver als auch autoritativer Server ist).
Entschuldigen Sie die große Menge an Informationen ... Die Zahl in der ersten Zeile ist in „Epochenzeit“ (Sekunden seit 1.1.1970 00:00 UTC). Damit können Sie den Zeitunterschied zwischen einer „rndc-Statistik“ und der nächsten sowie die unterschiedliche Anzahl von Anfragen ermitteln (Sie sollten sich die Gesamtsummen für eingehende „QUERY“ und ausgehende Anfragen ansehen (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)
Antwort2
Der Befehl "rndc-Statistiken" sollte mit aktuellen Versionen von BIND DNS funktionieren.
Laut DistroWatch wurde CentOS 5.5 mit Bind 9.3.4-P1 ausgeliefert. OP kann dies über die Befehlszeile mit „rpm -qa | grep bind“ überprüfen.
Antwort3
AndyNs "rndc stats" (falls Sie BIND verwenden) und kaerasts "dnstop" sind gute Ratschläge. Ich füge hinzuDSCDies ist ein sehr umfassendes Paket für DNS-Statistiken.
Antwort4
Achtung: Wenn Ihr Server ausgelastet ist, werden große Protokolldateien generiert. Behalten Sie Ihren Speicherplatz im Auge.
Aktivieren Sie zunächst in Ihrer Datei /etc/named.conf den Kanal „Queries“, um ein Protokoll abzurufen. Ein kurzes Beispiel:
logging {
channel queries_channel {
file "/var/log/named/queries.log" versions 5 size 500m;
print-time yes;
};
category queries { queries_channel; }
}
Beachten Sie, dass dadurch 5 Versionen (rotierte Protokolle) mit 500 MB erhalten bleiben – passen Sie sie nach Bedarf an, um die benötigte Datenmenge zu erfassen. Nachdem Sie nun Protokolle haben, suchen Sie bei Google nach „Bind-Abfragestatistiken“, um ein Tool oder eine Software zu finden, die Ihren Anforderungen am besten entspricht, um die betreffenden Zahlen herauszufinden. Eines der mir bekannten Tools, das sowohl BIND v8- als auch v9-Formate unterstützt, isthttp://www.logreport.org/.