- dig (programme informatique)
-
Pour les articles homonymes, voir Dig.
dig est un programme informatique de débogage de serveurs DNS. Il signifie Domain Information Groper, littéralement Chercheur d'Information sur les Domaines.
Utilisable en ligne de commande, il permet aussi d'interroger le serveur DNS de son choix (par défaut, il utilise le même serveur que les applications locales, celui spécifié, sur Unix, dans le fichier /etc/resolv.conf).
Dig est généralement fourni avec le package bind-tools sous Unix.
Exemples
Par exemple, voici comment demander les enregistrements DNS de type A (adresse IP version 4), le type par défaut, pour le nom fr.wikipedia.org :
% dig fr.wikipedia.org. ... ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51006 ;; flags: qr rd ra; QUERY: 1, ANSWER: 16, AUTHORITY: 3, ADDITIONAL: 3 ... ;; ANSWER SECTION: fr.wikipedia.org. 1652 IN CNAME rr.wikimedia.org. rr.pmtpa.wikimedia.org. 1068 IN A 207.142.131.202 ...
Si on souhaite un autre type d'enregistrement, on peut le spécifier sur la ligne de commandes (l'ordre n'est pas important, dig trouve en général tout seul s'il s'agit d'un nom ou bien d'un type). Par exemple, pour un enregistrement MX :
% dig MX wikipedia.org. ... ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 13841 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ... ;; ANSWER SECTION: wikipedia.org. 3600 IN MX 50 pascal.knams.wikimedia.org. wikipedia.org. 3600 IN MX 10 mail.wikimedia.org.
Enfin, on peut aussi désigner un serveur particulier, par exemple ici pour connaitre les serveurs de noms de ".fr" tels qu'ils sont connus des serveurs racine :
% dig @f.root-servers.net NS fr. ... ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51518 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 9, ADDITIONAL: 12 ... ;; AUTHORITY SECTION: fr. 172800 IN NS B.EXT.NIC.fr. fr. 172800 IN NS B.NIC.fr. fr. 172800 IN NS C.EXT.NIC.fr. fr. 172800 IN NS C.NIC.fr. ...
Parmi les options de la réponse (flags), la plus importante est sans doute aa (authoritative answer) qui, lorsqu'elle est présente, indique que la réponse vient directement d'un serveur faisant autorité.
Le statut de la réponse (status) indique si la requête a été couronnée de succès ou pas. NOERROR dit que oui, NXDOMAIN (No such domain) que le nom n'existe pas, SERVFAIL (Server failure) que le serveur de noms est mal configuré, etc.
Notons qu'on peut avoir NOERROR et pas de réponse, par exemple si le nom existe mais ne contient pas d'enregistrements du type demandé.
dig n'est pas limité à l'IPv4, et peut également fonctionner avec de l'IPv6, comme l'illustre l'exemple suivant:
dig -6 @k.root-servers.net . ns +bufsize=1024
; <<>> DiG 9.7.0-P1 <<>> -6 @k.root-servers.net . ns +bufsize=1024 ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38130 ;; flags: qr aa rd; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 22 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;. IN NS ;; ANSWER SECTION: . 518400 IN NS a.root-servers.net. . 518400 IN NS b.root-servers.net. . 518400 IN NS c.root-servers.net. . 518400 IN NS d.root-servers.net. . 518400 IN NS e.root-servers.net. . 518400 IN NS f.root-servers.net. . 518400 IN NS g.root-servers.net. . 518400 IN NS h.root-servers.net. . 518400 IN NS i.root-servers.net. . 518400 IN NS j.root-servers.net. . 518400 IN NS k.root-servers.net. . 518400 IN NS l.root-servers.net. . 518400 IN NS m.root-servers.net. ;; ADDITIONAL SECTION: a.root-servers.net. 518400 IN A 198.41.0.4 b.root-servers.net. 518400 IN A 192.228.79.201 c.root-servers.net. 518400 IN A 192.33.4.12 d.root-servers.net. 518400 IN A 128.8.10.90 e.root-servers.net. 518400 IN A 192.203.230.10 f.root-servers.net. 518400 IN A 192.5.5.241 g.root-servers.net. 518400 IN A 192.112.36.4 h.root-servers.net. 518400 IN A 128.63.2.53 i.root-servers.net. 518400 IN A 192.36.148.17 j.root-servers.net. 518400 IN A 192.58.128.30 k.root-servers.net. 518400 IN A 193.0.14.129 l.root-servers.net. 518400 IN A 199.7.83.42 m.root-servers.net. 518400 IN A 202.12.27.33 a.root-servers.net. 518400 IN AAAA 2001:503:ba3e::2:30 f.root-servers.net. 518400 IN AAAA 2001:500:2f::f h.root-servers.net. 518400 IN AAAA 2001:500:1::803f:235 i.root-servers.net. 518400 IN AAAA 2001:7fe::53 j.root-servers.net. 518400 IN AAAA 2001:503:c27::2:30 k.root-servers.net. 518400 IN AAAA 2001:7fd::1 l.root-servers.net. 518400 IN AAAA 2001:500:3::42 m.root-servers.net. 518400 IN AAAA 2001:dc3::35 ;; Query time: 175 msec ;; SERVER: 2001:7fd::1#53(2001:7fd::1) ;; WHEN: Wed Jul 7 17:22:17 2010 ;; MSG SIZE rcvd: 671
Voir aussi
Lien externe
Catégories :- Logiciel pour Unix
- Domain Name System
Wikimedia Foundation. 2010.