Sep
17
2009

Savoir qui utilise son serveur dns Bind


Tout d’abord il faut lancer une écoute du trafic dns sur le serveur DNS et stocker le résultat dans un fichier :

tcpdump –v | grep domain > utilisation_dns.log

 

Ensuite, il faut traiter le résultat :

cat utilisation_dns.log | awk ‘{ print $2}’ |  grep -v "nom_du_serveur" | cut -d "." -f1-4 |sed -e "s/.domain//g"| sed -e "s/fr…../fr/2" |sort -u

awk ‘{ print $2}’ –> affiche seulement la 2ème colonne. Pour moi c’est celle des adresses IP. A modifier en fonction de l’affichage fourni par votre tcpdump.

grep -v "nom_du_serveur" permet de ne pas afficher le serveur DNS car on le retrouve dans la même colonne pour les réponses.

“nom_du_serveur” correspond au nom du serveur dns.

cut -d "." -f1-4  permet d’afficher seulement l’adresse IP

exemple :

192.168.0.1.15112 devient 192.168.0.1

sed -e "s/.domain//g" permet de supprimer les .domain quand le nom du client est résolu.

exemple :

srv1985.croc-informatique.fr.domain devient srv1985.croc-informatique.fr

sed -e "s/fr…../fr/2" : permet d’obtenir la perfection 🙂 car ‘j’avais un soucis avec un nom d’host trop long. Cette commande permet d’effecer quelques caractère sur la deuxième occurrence d’une ligne.

sort –u permet de classer par ordre alphabétique et de supprimer les doublons.

 

vive le shell!!!

Au sujet de l'auteur: Olivier Legras

Auteur de ce Blog, je partage quelques unes de mes notes que je juge utile à vous comme à moi. Je suis très heureux de voir que mon blog a de plus en plus d'affluence. Merci à vous!

Laissez un commentaire