10 commandes Dig (Domain Information Groper) pour interroger DNS
Dans notre article précédent, nous avons expliqué les exemples et l'utilisation de la commande nslookup, qui est un outil de ligne de commande réseau utilisé pour interroger et obtenir des informations sur le DNS (Domain Name System).
Ici, dans cet article, nous proposons un autre outil de ligne de commande appelé dig, qui est très similaire à l'outil nslookup de Linux. Nous verrons de près l'utilisation de la commande dig avec leurs exemples et leur utilisation.
Dig signifie (Domain Information Groper) et est un outil de ligne de commande d'administration réseau permettant d'interroger le Système de noms de domaine (DNS ) serveurs de noms.
Il est utile pour vérifier et dépanner les problèmes DNS, ainsi que pour effectuer des recherches DNS et afficher les réponses renvoyées par le serveur de noms interrogé.
Dig fait partie de la suite logicielle de serveur de noms de domaine BIND. La commande dig remplace les outils plus anciens tels que nslookup et host. L'outil dig est disponible dans les principales distributions Linux.
1. Interroger l'enregistrement « A » du domaine
dig yahoo.com
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20076
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com. IN A
;; ANSWER SECTION:
yahoo.com. 387 IN A 98.137.11.163
yahoo.com. 387 IN A 74.6.143.26
yahoo.com. 387 IN A 74.6.143.25
yahoo.com. 387 IN A 74.6.231.20
yahoo.com. 387 IN A 74.6.231.21
yahoo.com. 387 IN A 98.137.11.164
;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 12:58:13 IST 2021
;; MSG SIZE rcvd: 134
La commande ci-dessus amène dig à rechercher l'enregistrement "A"
pour le nom de domaine yahoo.com. La commande Dig lit le fichier /etc/resolv.conf et interroge les serveurs DNS qui y sont répertoriés. La réponse du serveur DNS est ce que dig affiche.
Comprenons le résultat des commandes :
- Les lignes commençant par
;
sont des commentaires ne faisant pas partie de l'information. - La première ligne nous indique la version de la commande dig (9.16.1).
- Ensuite, dig affiche l'en-tête de la réponse reçue du serveur DNS.
- Vient ensuite la section des questions, qui nous indique simplement la requête, qui dans ce cas est une requête pour l'enregistrement
"A"
de yahoo.com. LeIN
signifie qu'il s'agit d'une recherche Internet (dans la classe Internet). - La section de réponse nous indique que yahoo.com possède l'adresse IP 98.137.11.163.
- Enfin, il existe quelques statistiques sur la requête. Vous pouvez désactiver ces statistiques en utilisant l'option
+nostats
.
2. Interrogez l'enregistrement du domaine « A » avec +short
Par défaut, dig est assez verbeux. Une façon de réduire la sortie consiste à utiliser l'option +short
. ce qui réduira considérablement la production comme indiqué ci-dessous.
dig yahoo.com +short
98.137.11.164
74.6.231.21
74.6.231.20
74.6.143.25
74.6.143.26
98.137.11.163
Remarque : Par défaut, dig recherche l'enregistrement "A"
du domaine spécifié, mais vous pouvez également spécifier d'autres enregistrements. L'enregistrement MX
ou Mail eXchange indique aux serveurs de messagerie comment acheminer l'e-mail pour le domaine. De même TTL, SOA, etc.
3. Interrogation de l'enregistrement MX pour le domaine
Interrogation de différents types d'enregistrements de ressources DNS uniquement.
dig yahoo.com MX
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com MX
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60630
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com. IN MX
;; ANSWER SECTION:
yahoo.com. 51 IN MX 1 mta6.am0.yahoodns.net.
yahoo.com. 51 IN MX 1 mta5.am0.yahoodns.net.
yahoo.com. 51 IN MX 1 mta7.am0.yahoodns.net.
;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:03:32 IST 2021
;; MSG SIZE rcvd: 117
4. Interrogation de l'enregistrement SOA pour le domaine
dig yahoo.com SOA
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com SOA
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25140
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com. IN SOA
;; ANSWER SECTION:
yahoo.com. 1800 IN SOA ns1.yahoo.com. hostmaster.yahoo-inc.com.
2021121001 3600 300 1814400 600
;; Query time: 128 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:08 IST 2021
;; MSG SIZE rcvd: 99
5. Interrogation de l'enregistrement TTL pour le domaine
dig yahoo.com TTL
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com TTL
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64017
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com. IN A
;; ANSWER SECTION:
yahoo.com. 1606 IN A 74.6.143.25
yahoo.com. 1606 IN A 74.6.231.21
yahoo.com. 1606 IN A 74.6.143.26
yahoo.com. 1606 IN A 98.137.11.164
yahoo.com. 1606 IN A 98.137.11.163
yahoo.com. 1606 IN A 74.6.231.20
;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:58 IST 2021
;; MSG SIZE rcvd: 134
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 27889
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;TTL. IN A
;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:58 IST 2021
;; MSG SIZE rcvd: 32
6. Section de réponse aux requêtes uniquement
dig yahoo.com +nocomments +noquestion +noauthority +noadditional +nostats
; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com +nocomments +noquestion +noauthority +noadditional +nostats
;; global options: +cmd
yahoo.com. 1556 IN A 74.6.231.20
yahoo.com. 1556 IN A 98.137.11.163
yahoo.com. 1556 IN A 98.137.11.164
yahoo.com. 1556 IN A 74.6.143.26
yahoo.com. 1556 IN A 74.6.231.21
yahoo.com. 1556 IN A 74.6.143.25
7. Interrogation de TOUS les types d'enregistrements DNS
dig yahoo.com ANY +noall +answer
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> yahoo.com ANY +noall +answer
;; global options: +cmd
yahoo.com. 3509 IN A 72.30.38.140
yahoo.com. 3509 IN A 98.138.253.109
yahoo.com. 3509 IN A 98.139.183.24
yahoo.com. 1709 IN MX 1 mta5.am0.yahoodns.net.
yahoo.com. 1709 IN MX 1 mta6.am0.yahoodns.net.
yahoo.com. 1709 IN MX 1 mta7.am0.yahoodns.net.
yahoo.com. 43109 IN NS ns2.yahoo.com.
yahoo.com. 43109 IN NS ns8.yahoo.com.
yahoo.com. 43109 IN NS ns3.yahoo.com.
yahoo.com. 43109 IN NS ns1.yahoo.com.
yahoo.com. 43109 IN NS ns4.yahoo.com.
yahoo.com. 43109 IN NS ns5.yahoo.com.
yahoo.com. 43109 IN NS ns6.yahoo.com.
8. Recherche inversée DNS
Interrogation de la recherche inversée DNS. Afficher uniquement la section de réponse en utilisant +short.
dig -x 72.30.38.140 +short
ir1.fp.vip.sp2.yahoo.com.
9. Interrogation de plusieurs enregistrements DNS
Interrogez la requête DNS spécifique de plusieurs sites Web, à savoir. Enregistrements MX, NS, etc.
dig yahoo.com mx +noall +answer redhat.com ns +noall +answer
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> yahoo.com mx +noall +answer redhat.com ns +noall +answer
;; global options: +cmd
yahoo.com. 1740 IN MX 1 mta6.am0.yahoodns.net.
yahoo.com. 1740 IN MX 1 mta7.am0.yahoodns.net.
yahoo.com. 1740 IN MX 1 mta5.am0.yahoodns.net.
redhat.com. 132 IN NS ns1.redhat.com.
redhat.com. 132 IN NS ns4.redhat.com.
redhat.com. 132 IN NS ns3.redhat.com.
redhat.com. 132 IN NS ns2.redhat.com.
10. Créez un fichier .digrc
Créez le fichier .digrc sous $HOME/.digrc pour stocker les options de fouille par défaut.
dig yahoo.com
yahoo.com. 3427 IN A 72.30.38.140
yahoo.com. 3427 IN A 98.138.253.109
yahoo.com. 3427 IN A 98.139.183.24
Nous avons stocké les options +noall +answer de manière permanente dans le fichier .digrc sous le répertoire personnel de l'utilisateur. Désormais, chaque fois que la commande dig est exécutée, elle affichera uniquement la section de réponse de la sortie dig. Pas besoin de saisir des options à chaque fois telles que +noall +answer.
Dans cet article, nous avons essayé de découvrir la commande dig qui peut vous aider à rechercher des informations relatives au service de noms de domaine (DNS). Partagez vos réflexions via la zone de commentaires.