DNScap : debug et trace DNS

[ 2 ] Commentaires
Share

dnscap fait parti de ces outils d’analyse de flux et de troubleshooting basé sur le sniff des échanges. Il pourrait se rapprocher du célèbre tcpdump, à ceci près qu’il est, comme son nom l’indique, entièrement dédié aux flux concernant le DNS.

L’installation est simple, concise, et l’outil est directement utilisable en l’état. Comme d’habitude, on récupère les sources, un coup de ./configure, un coup de make install.

$ wget http://dnscap.dns-oarc.net/dnscap-134.tar.gz
$ tar zxvf dnscap-134.tar.gz && cd dnscap-134
$ ./configure
$ make install
mkdir -p /usr/local/bin /usr/local/share/man
if [ -f /usr/local/bin/dnscap ]; then \
mv -f /usr/local/bin/dnscap /usr/local/bin/dnscap.old; fi
cp dnscap /usr/local/bin
cp dnscap.cat1 /usr/local/man/cat1/dnscap.1
cp: ne peut créer le fichier régulier `/usr/local/man/cat1/dnscap.1': Aucun fichier ou dossier de ce type
make: *** [install] Erreur 1

Ce que je vais faire n’est pas très beau, mais comme c’est d’un man dont on parle, ça rentre dans l’acceptable.

$ ln -s /usr/local/man/man1 /usr/local/man/cat1
$ make install
mkdir -p /usr/local/bin /usr/local/share/man
if [ -f /usr/local/bin/dnscap ]; then \
mv -f /usr/local/bin/dnscap /usr/local/bin/dnscap.old; fi
cp dnscap /usr/local/bin
cp dnscap.cat1 /usr/local/man/cat1/dnscap.1

Jetons un oeil aux options disponibles, ça peut aider :

$ dnscap -help
dnscap: usage error: -h takes only [ir]
dnscap: version V1.0-OARC-r124 (2011-03-09)

usage: dnscap
[-?pd1g6fT] [-i <if>]+ [-r <file>]+ [-l <vlan>]+
[-u <port>] [-m [qun]] [-e [nytfsxir]]
[-h [ir]] [-s [ir]]
[-a <host>]+ [-z <host>]+ [-A <host>]+ [-Z <host>]+
[-w <base> [-k <cmd>]] [-t <lim>] [-c <lim>]
[-x <pat>]+ [-X <pat>]+
[-B <datetime>]+ [-E <datetime>]+

note: the -? or -\? option will display full help text

Et comme on est curieux, voyons ce que ça donne. Bien entendu, pour les besoins, j’ai pingué une machine qui n’était pas dans mon cache ARP et qui porte le doux nom de arctic. Les flux sont donc directement affichés, formatés en mode dig-like, et ça donne ça :

$ dnscap -i eth0 -g
[61] 2011-11-16 13:38:51.505423 [#0 eth0 0] \
[192.168.16.145].46889 [192.168.10.2].53  \
dns QUERY,NOERROR,20694,rd \
1 arctic.k-tux.com,IN,A 0 0 0
[153] 2011-11-16 13:38:51.505824 [#1 eth0 0] \
[192.168.10.2].53 [192.168.16.145].46889  \
dns QUERY,NOERROR,20694,qr|aa|rd|ra \
1 arctic.k-tux.com,IN,A \
1 arctic.k-tux.com,IN,A,86400,192.168.20.43 \
2 k-tux.com,IN,NS,86400,dns1.k-tux.com \
k-tux.com,IN,NS,86400,dns2.k-tux.com \
2 dns1.k-tux.com,IN,A,86400,192.168.10.2 \
dns2.k-tux.com,IN,A,86400,192.168.10.3
[69] 2011-11-16 13:38:51.513186 [#2 eth0 0] \
[192.168.16.145].41402 [192.168.10.2].53  \
dns QUERY,NOERROR,59669,rd \
1 43.21.168.192.in-addr.arpa,IN,PTR 0 0 0
[174] 2011-11-16 13:38:51.513522 [#3 eth0 0] \
[192.168.10.2].53 [192.168.16.145].41402  \
dns QUERY,NOERROR,59669,qr|aa|rd|ra \
1 43.21.168.192.in-addr.arpa,IN,PTR \
1 43.21.168.192.in-addr.arpa,IN,PTR,86400,arctic.k-tux.com \
2 168.192.in-addr.arpa,IN,NS,86400,dns2.k-tux.com \
168.192.in-addr.arpa,IN,NS,86400,dns1.k-tux.com \
2 dns1.k-tux.com,IN,A,86400,192.168.10.2 \
dns2.k-tux.com,IN,A,86400,192.168.10.3
^Cdnscap: signalled break

Le principal intérêt est de vérifier que vous n’avez pas de pépin sur vos serveurs DNS, et notamment avec ce qu’ils répondent, cela va de soit.

Il existe un joli éventail d’outils dédiés aux checks du DNS signés de la même entité (OARC, comme vous pouvez le voir lors du run de dnscap) et qui sont à votre totale disposition. Il peut être bon d’y jeter un oeil et de les garder sous le coude au besoin :)

 

2 Responses to DNScap : debug et trace DNS

  1. Nono dit :

    Euh, je vois un $ devant ta commande

    Tu ne fais pas ton make install en root ?

    De plus, tu ne fais pas de make avant ton make install ?
    (perso, je fais presque toujours « ./configure && make && make install » en root).

  2. KXan dit :

    Sisi je suis en root mais j’ai customisé mon prompt :)
    Par contre le make peut être fait en user normal, mais c’est plus commode de tout faire d’un coup en root

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>