Comment Utiliser la Commande Dig sous Linux

Dig (Domain Information Groper) est un utilitaire en ligne de commande qui effectue une recherche DNS en interrogeant des serveurs de noms et en vous affichant le résultat. Dans ce tutoriel, vous trouverez toutes les utilisations de base de la commande que vous devez connaître dans le système d’exploitation Linux.

Par défaut, dig envoie la requête DNS aux serveurs de noms figurant dans le résolveur (/etc/resolv.conf), à moins qu’il ne lui soit demandé d’interroger un serveur de noms spécifique.

Installer Dig sur Linux

Dig est une partie du paquet d’utilitaires DNS qui est souvent installé avec les serveurs de noms BIND. Vous pouvez également installer le paquet utilitaire qui contient dig séparément en accédant à votre VPS par SSH et en utilisant les commandes suivantes dans la ligne de commande :

Debian et Ubuntu :

apt-get install dnsutils

CentOS 7:

yum install bind-utils

Une fois installé, vérifiez la version, pour vous assurer que l’installation a été effectuée avec succès :

dig -v

Syntaxe de Dig

Dans sa forme la plus simple, la syntaxe de l’utilitaire dig ressemblera à ceci :

dig [serveur] [nom] [type]

[serveur] – l’adresse IP ou le nom d’hôte du serveur de noms à interroger.

Si l’argument du serveur est le nom d’hôte, alors dig résoudra le nom d’hôte avant de procéder à l’interrogation du serveur de noms.

C’est facultatif et si vous ne fournissez pas l’argument serveur, alors dig utilise le serveur de nom figurant dans le fichier /etc/resolv.conf.

[nom] – le nom de l’enregistrement de la ressource qui doit être recherché.

[type] – le type de requête demandé par dig. Par exemple, il peut s’agir d’un enregistrement A, d’un enregistrement MX, d’un enregistrement SOA ou de tout autre type. Par défaut, dig effectue une recherche pour un enregistrement A si aucun argument de type n’est spécifié.

Comment utiliser la commande Dig

Passons aux utilisations de base de la commande :

Interrogation simple des noms de domaine

Pour effectuer une recherche DNS pour un nom de domaine, il suffit de fournir le nom avec la commande dig :

dig hostinger.fr

Par défaut, la commande dig affiche l’enregistrement A lorsqu’aucune autre option n’est spécifiée. Le résultat contiendra également d’autres informations telles que la version de dig installée, des détails techniques sur les réponses, des statistiques sur la requête, une section de questions et quelques autres.

Réponses courtes

La commande dig ci-dessus comprend de nombreuses informations utiles dans différentes sections, mais il peut arriver que vous ne vouliez que le résultat de la requête. Vous pouvez le faire en utilisant l’option +short, qui affichera l’adresse IP (enregistrement A) du nom de domaine uniquement :

dig hostinger.fr +short

Réponses détaillées

Parfois, vous souhaitez consulter la section des réponses en détail. Donc, pour une information détaillée sur la section des réponses, vous pouvez arrêter d’afficher toute la section en utilisant l’option +noall et interroger la section des réponses uniquement en utilisant l’option +answer avec la commande dig.

dig hostinger.fr +noall +answer

Spécification des serveurs de noms

Par défaut, les commandes dig interrogeront les serveurs de noms figurant dans /etc/resolv.conf pour effectuer une recherche DNS. Vous pouvez modifier ce comportement par défaut en utilisant le symbole @ suivi d’un nom d’hôte ou d’une adresse IP du serveur de noms.

La commande dig suivante envoie la requête DNS au serveur de noms de Google (8.8.8.8) en utilisant l’option @8.8.8.8.

dig @8.8.8.8 hostinger.fr

Interroger tous les types d’enregistrements DNS

Pour interroger tous les types d’enregistrements DNS disponibles associés à un domaine, utilisez l’option ANY. L’option ANY inclura tous les types d’enregistrement disponibles dans le résultat :

dig hostinger.fr ANY

Rechercher un type d’enregistrement

Si vous souhaitez rechercher un enregistrement spécifique, il vous suffit d’ajouter le type à la fin de la commande.

Par exemple, pour interroger uniquement la partie MX (mail exchange) associée à un domaine, vous pouvez utiliser la commande dig suivante :

dig hostinger.fr MX

De même, pour visualiser les autres enregistrements associés à un domaine, spécifiez le type d’enregistrement à la fin de la commande dig :

dig hostinger.fr txt (Interrogation de l'enregistrement  TXT)
dig hostinger.fr cname (Interrogation de l'enregistrement CNAME)
dig hostinger.fr ns (Interrogation de l'enregistrement NS)
dig hostinger.fr A (Interrogation de l'enregistrement A)

Tracer le chemin du DNS

Dig permet de tracer le chemin de recherche DNS en utilisant l’option +trace. Cette option permet d’effectuer des requêtes itératives pour résoudre la recherche de noms. Elle interrogera les serveurs de noms à partir de la racine et parcourra ensuite l’arbre de l’espace de noms à l’aide de requêtes itératives suivant les renvois en cours de route :

dig hostinger.fr +trace

Recherche DNS inversée

La recherche DNS inversée permet de rechercher le domaine et le nom d’hôte associés à une adresse IP. Pour effectuer une recherche DNS inversée à l’aide de la commande dig, utilisez l’option -x suivie de l’adresse IP choisie. Dans l’exemple suivant, dig effectuera une recherche DNS inversée pour l’adresse IP associée à google.com :

dig +answer -x 172.217.166.46

Rappelez-vous que si un enregistrement PTR n’est pas défini pour une adresse IP, il n’est pas possible de faire une recherche DNS inversée puisque l’enregistrement PTR pointe vers le domaine ou le nom d’hôte.

Requêtes par lots

Avec l’utilitaire dig, vous pouvez effectuer une recherche DNS pour une liste de domaines au lieu de la faire individuellement. Pour cela, vous devez fournir à dig une liste de noms de domaines – un par ligne dans un fichier. Une fois que le fichier est prêt, spécifiez son nom avec l’option -f :

vi nom_domaine.txt
hostinger.fr
google.fr
ubuntu.com
dig -f nom_domaine.txt +short

Contrôler le comportement de Dig

Le résultat de la commande peut être personnalisé de façon permanente en définissant des options dans le fichier ~/.digrc qui s’exécutera automatiquement avec la commande.

Supposons que vous vouliez uniquement afficher la section des réponses – spécifiez les options requises dans le fichier ~/.digrc, afin de ne pas avoir à les taper pendant l’exécution de la requête.

echo "+noall +answer" > ~/.digrc

Effectuez maintenant une recherche sur le serveur DNS pour un domaine. Le résultat confirme que dig fonctionne avec les options définies dans le fichier ~/.digrc.

Conclusion

C’est tout ce dont vous avez besoin pour commencer à utiliser dig sous Linux. Vous pouvez maintenant effectuer des recherches DNS pour des domaines en utilisant différentes options. Vous voulez en savoir plus ? Consultez la page du manuel en utilisant la commande man dig pour découvrir toutes les utilisations et options possibles.

Author
L'auteur

Ismail

Ismail est un spécialiste du référencement et de la localisation chez Hostinger. Il est passionné par la technologie et le développement web et possède des années d'expérience dans le domaine informatique. Ses passe-temps incluent les jeux vidéo et le football.