wean 10 Geschrieben 18. Juni 2004 Melden Teilen Geschrieben 18. Juni 2004 huhu, kennt jemand von euch ein tool um die dns.log unter w2k auszuwerten? ich muss statistiken erstellen, was für anfragen die clients an den dns-server schicken - vorallem wie oft. nun enthält das logfile z.B Rcv xxx.xxx.xxx.xxx 001f Q [0001 D NOERROR] (3)www(5)heise(2)de(0) Rcv xxx.xxx.xxx.xxx 0022 Q [0001 D NOERROR] (3)www(3)lol(2)de(4)domain(2)de(0) Rcv xxx.xxx.xxx.xxx 0023 Q [0001 D NOERROR] (3)www(3)lol(2)de(0) Rcv xxx.xxx.xxx.xxx 001f Q [0001 D NOERROR] (3)www(9)microsoft(3)com(0) hier stehen zwar die anfragen schon relativ nett drin, aber nicht so wie ich sie eben gebrauchen könnte. ich bräuchte: 100x google.de 21x microsoft.de ......usw hat jemand zufällig einen tip? Zitieren Link zu diesem Kommentar
wean 10 Geschrieben 22. Juni 2004 Autor Melden Teilen Geschrieben 22. Juni 2004 Mit Linux lässt sich die dns.log entsprechend auswerten: Inhalt von dnsgrep: #!/bin/bash if [ -z "$1" ] ; then echo "Usage `basename $0` <IP>" exit 1 fi cat - | grep "^Rcv .*NOERROR" | grep -v "(4)arpa(0)" \ | sed "s/^Rcv[[:space:]]\+\([0-9.]\+\).*NOERROR] ([0-9]\+)\(.*\)\((0)\)\?$/\1 \2/;s/([0-9]\+)/./g" \ | grep "^$1 " | sed "s/^.* \(.*\)$/\1/" \ | sort | uniq -c | sort -nr [/Quote] Anschliessend auswerten z.B cat /tmp/dns.log | /root/dnsgrep "192\.168\.10\..* ....wäre der Inhalt von 192.168.10.x cat /tmp/dns.log | /root/dnsgrep 192.168.10.10 ....wäre der Inhalt von 192.168.10.10 Die Auswertung sieht dann folgendermaßen aus: 49 toolbarqueries.google.de. 15 ad.doubleclick.net. 14 ad.de.doubleclick.net. 13 http://www.google.de. 8 update.adobe.com. 7 sueddeut.ivwbox.de. 6 pagead2.googlesyndication.com. 6 images.google.de. 5 http://www.friendscout24.de. [/Quote] Um die Protokollierung am DNS-Server entsprechend einzustellen aktiviert: ABFRAGEN FRAGEN EMPFANGEN UDP PROTOKOLLIERUNG FORTSETZEN Zitieren Link zu diesem Kommentar
wean 10 Geschrieben 23. Juni 2004 Autor Melden Teilen Geschrieben 23. Juni 2004 Diese Unix-Tools gibbed auch unter ****** :) LINK Die Ausgabe sieht dann so aus: Demnach ist folgendes Script zu verwenden ohne Zeilenumbrüche @echo off echo Suchbegriff: set /p suche= if "%suche%" == "" goto alles cat \\server\DNS$\dns.log | grep "^Rcv .*NOERROR" | grep -v "(4)arpa(0)" | grep -v "(4)_tcp." | grep -v "_msdcs" | grep -v "domainname" | sed "s/^Rcv[[:space:]]\+\([0-9.]\+\).*NOERROR] ([0-9]\+)\(.*\)\((0)\)\?$/\1 \2/;s/([0-9]\+)/./g" | grep %suche% | sort | uniq -c | sort -nr > "%userprofile%\Desktop\DNS-Auswertung.txt" cls echo AUSWERTUNG FUER %SUCHE% echo. echo. echo. echo. cat "%userprofile%\Desktop\DNS-Auswertung.txt" echo. echo. echo. echo. echo. echo. pause exit :alles cat \\server\DNS$\dns.log | grep "^Rcv .*NOERROR" | grep -v "(4)arpa(0)" | grep -v "(4)_tcp." | grep -v "_msdcs" | grep -v "domainname" | sed "s/^Rcv[[:space:]]\+\([0-9.]\+\).*NOERROR] ([0-9]\+)\(.*\)\((0)\)\?$/\1 \2/;s/([0-9]\+)/./g" | sort | uniq -c | sort -nr > "%userprofile%\Desktop\DNS-Auswertung.txt" cls echo AUSWERTUNG FUER %SUCHE% echo. echo. echo. echo. cat "%userprofile%\Desktop\DNS-Auswertung.txt" echo. echo. echo. echo. echo. echo. pause exit [/Quote] Zitieren Link zu diesem Kommentar
e2e4 10 Geschrieben 6. Januar 2005 Melden Teilen Geschrieben 6. Januar 2005 Salut, wie bekomme ich die dns.log denn gefüllt? Ich habe eine derartige Datei, die aber leer ist. Bei den Eigenschaften des DNS-Servers habe ich die Debugprotokollierung aktiviert, die dortigen Daten werden aber in ein anderes File geschrieben, dass nicht identisch mit o.g. Aufbau ist ... Grüße, e2e4 Zitieren Link zu diesem Kommentar
wean 10 Geschrieben 7. Januar 2005 Autor Melden Teilen Geschrieben 7. Januar 2005 Also, ich habe am DNS Server folgende Haken unter der Protokollierung aktiviert: Der Inhalt der dns.log sieht dann so aus: Der DNS-Server wurde gestartet. Rcv 192.168.10.1 aba0 Q [0001 D NOERROR] (5)_ldap(4)_tcp(4)domain(2)de(0) Rcv 192.168.10.1 eca2 Q [0001 D NOERROR] (5)_ldap(4)_tcp(3)pdc(6)_msdcs(4)domain(2)de(0) Rcv 192.168.10.1 21bd Q [0001 D NOERROR] (5)_ldap(4)_tcp(2)gc(6)_msdcs(4)domain(2)de(0) Rcv 192.168.10.1 1abf Q [0001 D NOERROR] (5)_ldap(4)_tcp(36)03b503fc-e961-4a51-93ca-26890b63ac3b(7)domains(6)_msdcs(4)domain(2)de(0) Rcv 192.168.10.1 57b9 Q [0001 D NOERROR] (36)dbd40ca3-63b6-4e52-aa9d-a2fd907ecbf1(6)_msdcs(4)domain(2)de(0) Rcv 192.168.10.1 d4b8 Q [0001 D NOERROR] (6)_msdcs(4)domain(2)de(0) Rcv 192.168.10.1 35f7 Q [0001 D NOERROR] (36)dbd40ca3-63b6-4e52-aa9d-a2fd907ecbf1(6)_msdcs(4)domain(2)de(0) Rcv 192.168.10.1 07bb Q [0001 D NOERROR] (9)_kerberos(4)_tcp(2)dc(6)_msdcs(4)domain(2)de(0) Rcv 192.168.10.1 6eb5 Q [0001 D NOERROR] (5)_ldap(4)_tcp(2)dc(6)_msdcs(4)domain(2)de(0) Rcv 192.168.10.1 69b7 Q [0001 D NOERROR] (9)_kerberos(4)_tcp(4)domain(2)de(0) Rcv 192.168.10.1 68b1 Q [0001 D NOERROR] (3)_gc(4)_tcp(4)domain(2)de(0) Rcv 192.168.10.1 6bb3 Q [0001 D NOERROR] (9)_kerberos(4)_udp(4)domain(2)de(0) Rcv 192.168.10.1 628d Q [0001 D NOERROR] (8)_kpasswd(4)_tcp(4)domain(2)de(0) Rcv 192.168.10.1 948d Q [0001 D NOERROR] (11)slnk-01e080(4)domain(2)de(0) Rcv 192.168.10.1 378e Q [0001 D NOERROR] (2)10(3)168(3)192(7)in-addr(4)arpa(0) Rcv 192.168.10.108 79ee Q [0001 D NOERROR] (9)callpilot(4)domain(2)de(0) Rcv 192.168.10.10 3939 Q [0001 D NOERROR] (3)www(15)taxipepedrivers(2)de(0) Rcv 192.168.10.10 3911 Q [0001 D NOERROR] (3)www(15)taxipepedrivers(2)de(0) Rcv 192.168.10.163 4cdc Q [0001 D NOERROR] (2)ad(7)adition(3)net(0) Rcv 192.168.10.10 2789 Q [0001 D NOERROR] (2)ad(7)adition(3)net(0) Rcv 192.168.10.115 02d9 Q [0001 D NOERROR] (9)bayerncup(6)kuslkf(2)de(0) Rcv 192.168.10.10 38c2 Q [0001 D NOERROR] (9)bayerncup(6)kuslkf(2)de(0) Rcv 192.168.10.10 38c3 Q [0001 D NOERROR] (9)bayerncup(6)kuslkf(2)de(0) Rcv 192.168.10.10 38c4 Q [0001 D NOERROR] (9)bayerncup(6)kuslkf(2)de(0) [/Quote] Meine Batch-Datei für die Auswertung, steuert folgende Datei an: \\dns-server\dns$\dns.log Musst die Datei halt entsprechend freigeben oder die Batch-Datei ändern. Hier meine Version: @echo off echo Suchbegriff: set /p suche= if "%suche%" == "" goto alles cat \\dns-server\DNS$\dns.log | grep "^Rcv .*NOERROR" | grep -v "(4)arpa(0)" | grep -v "(4)_tcp." | grep -v "_msdcs" | grep -v "domain" | sed "s/^Rcv[[:space:]]\+\([0-9.]\+\).*NOERROR] ([0-9]\+)\(.*\)\((0)\)\?$/\1 \2/;s/([0-9]\+)/./g" | grep %suche% | sed "s/^.* \(.*\)$/\1/" | sort | uniq -c | sort -nr > "%userprofile%\Desktop\DNS-Auswertung.txt" cls echo Auswertung fuer %SUCHE% echo. echo. echo. echo. cat "%userprofile%\Desktop\DNS-Auswertung.txt" echo. echo. echo. echo. echo. echo. pause exit :alles cat \\dns-server\DNS$\dns.log | grep "^Rcv .*NOERROR" | grep -v "(4)arpa(0)" | grep -v "(4)_tcp." | grep -v "_msdcs" | grep -v "domain" | sed "s/^Rcv[[:space:]]\+\([0-9.]\+\).*NOERROR] ([0-9]\+)\(.*\)\((0)\)\?$/\1 \2/;s/([0-9]\+)/./g" | grep "www\." | sed "s/^.* \(.*\)$/\1/" | sort | uniq -c | sort -nr > "%userprofile%\Desktop\DNS-Auswertung.txt" cls echo Auswertung fuer alles echo. echo. echo. echo. cat "%userprofile%\Desktop\DNS-Auswertung.txt" echo. echo. echo. echo. echo. echo. pause exit [/Quote] Die UnixTools findest Du hier, diese einfach ins Windows Dir entpacken und feddich. Zitieren Link zu diesem Kommentar
wean 10 Geschrieben 7. Januar 2005 Autor Melden Teilen Geschrieben 7. Januar 2005 Die Ausgabe sieht dann entsprechend so aus: regards Zitieren Link zu diesem Kommentar
e2e4 10 Geschrieben 7. Januar 2005 Melden Teilen Geschrieben 7. Januar 2005 Hallo, das schaut ja schonmal sehr gut aus. Ich vermute, dass der Screenshot von W2kS ist, ich habe hier W2k3S und dort schaut dies so aus: http://e2e4.systemprotect.org/dns.JPG Grüße, e2e4 Zitieren Link zu diesem Kommentar
micha42 29 Geschrieben 7. Januar 2005 Melden Teilen Geschrieben 7. Januar 2005 Moin wean, damit Du nicht immer Selbstgespräche führen mußt hier noch ein externer Redner ;) Wenn Du solche Auswertungen User-Spezifisch machst, dann berührst Du damit den Datenschutz. Solltest Du das in einer Firma machen: Datenschutzbeauftragten informieren/fragen. (Wenn Ihr keinen habt - Mitarbeiter informieren) Michael Zitieren Link zu diesem Kommentar
e2e4 10 Geschrieben 7. Januar 2005 Melden Teilen Geschrieben 7. Januar 2005 Salut, nunja Selbstgespräche führen wir hier ja nicht. ;) Wenn Du solche Auswertungen User-Spezifisch machst, dann berührst Du damit den Datenschutz. Das ist mir bekannt. Im Moment werden keine derartigen Auswertungen durchgeführt und ich versuche dies erstmal nachzuvollziehen und zu realisieren. @wean Ich habe jetzt versucht mit Deinem geposteten Logfile (da meine anders aussehen) das Ergebnis nachzuvollziehen (also Deinen Screenshot der Auswertung). Das klappte leider nicht, da auch das Logfile wohl nicht identisch mit dem Inhalt des Screenshots ist. Grüße, e2e4 Zitieren Link zu diesem Kommentar
olei 10 Geschrieben 7. Januar 2005 Melden Teilen Geschrieben 7. Januar 2005 @wean: vielen Dank für das tolle Script! Eins sollte man aber noch beachten (neben dem Datenschutz :D ): WinXP bringt bereits ein sort.exe mit, das befindet sich im System32. Also genau überlegen wohin man die Unix-Tools kopiert, sonst wird die WinXP-Version aufgerufen (system32 steht am Anfang des Pfades!) und dort werden die Parameter mit "/" angeben. Oder eben das Script anpassen. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.