Mise à jour du 16/04/2022.
La commande dig remplace désormais la commande nslookup. Sa frappe directe affiche un résultat surprenant au premier abord mais détaillé. Voyons cela.
Dans sa forme la plus simple, lorsqu'elle est utilisée pour interroger un seul hôte ou un seul domaine et sans aucune option supplémentaire, la commande dig est assez détaillée.
jm@provence:~$ dig google.com
; <<>> DiG 9.16.27-Debian <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48354
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;google.com. IN A
;; ANSWER SECTION:
google.com. 300 IN A 216.58.214.174
;; Query time: 40 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Apr 16 11:21:43 CEST 2022
;; MSG SIZE rcvd: 55La première ligne de la sortie affiche la version installée de dig ainsi que le nom de domaine interrogé.
La seconde ligne affiche les options globales (par défaut, uniquement cmd). Si vous ne voulez pas que ces lignes soient incluses dans la sortie, utilisez l'option +nocmd. Cette option doit être la toute première après la commande.
Les lignes suivantes (3 à 5) affichent des détails techniques sur la réponse reçue de l'autorité invoquée (serveur DNS). L'en-tête indique l'opcode (l'action effectuée par dig) et le statut de l'action. Dans cet exemple, le statut est NOERROR, ce qui signifie que l'autorité invoquée a répondu à la requête sans aucun problème. Si vous ne voulez pas que ces lignes soient incluses dans la sortie, utilisez l'option +nocomments.
Attention : cette option désactive aussi les en-têtes des autres sections.
Cette section affiche des informations sur les mécanismes d'extensions pour DNS (EDNS). Pour exclure cette section de la sortie, utilisez l'option +noedns.
Dans cette section dig affiche la requête. Par défaut, la commande demande l'enregistrement A. Vous pouvez désactiver cette section en utilisant l'option +noquestion.
Cette section nous livre la réponse à notre question. Comme nous l'avons déjà mentionné, dig demandera par défaut l'enregistrement A. En général, on ne souhaite pas désactiver la réponse, mais vous pouvez supprimer cette section de la sortie à l'aide de l'option +noanswer.
Cette section nous indique quel(s) serveur(s) ont servi d'autorité pour répondre aux requêtes DNS sur le domaine interrogé. Vous pouvez désactiver cette section de la sortie à l'aide de l'option +noauthority.
Cette section nous donne des informations sur les adresses IP des serveurs DNS faisant autorité et indiqués dans la section autorité. Vous pouvez désactiver cette section de la sortie à l'aide de l'option +noadditional.
La dernière section de la inclut des statistiques sur la requête. Vous pouvez désactiver cette section de la sortie à l'aide de l'option +nostats.
| Type | Options | Remarques |
|---|---|---|
| Réponse courte | +short | |
| Réponse détaillée | +noall +answer | L'option +noall désactive tous les résultats (raccourci des options vues plus haut) |
| Interrogation via un serveur spécifique | @{Nom du serveur DNS} | dig linux.org @8.8.8.8 |
| Interroger les enregistrements A | a | dig +nocmd google.com a +noall +answer |
| Interroger les enregistrements CNAME | cname | dig +nocmd mail.google.com cname +noall +answer |
| Interroger les enregistrements TXT | txt | dig +nocmd google.com txt +noall +answer |
| Interroger les enregistrements MX | mx | dig +nocmd google.com mx +noall +answer |
| Interroger les enregistrements NS | ns | dig +nocmd google.com ns +noall +answer |
| Interrogation de tous les enregistrements | any | dig +nocmd google.com any +noall +answer Notez que les serveurs peuvent être paramétrés pour ne pas répondre à cette option. |
| Recherche DNS inversée | -x | dig -x 216.58.209.238 +noall +answer |
| Interrogations groupées | -f | dig -f domains.txt +short le fichier domains.txt contient un nom de domaine par ligne. |
Un utilisateur peut éviter de frapper à chaque fois les mêmes options en les enregistrant dans le fichier ~/.digrc. Les options sont placées les unes à la suite des autres et séparées par un espace.
Exemple :
+nocmd +noall +answer
Rédaction par Jean-Marie Piatte (1983-2021)