Comment utiliser la commande dig sous Linux
La commande dig, abréviation de domain information groper, est un outil réseau puissant qui permet d’interroger les serveurs du système de noms de domaine (DNS). Elle permet de diagnostiquer et de résoudre les problèmes liés au DNS, ce qui est essentiel pour maintenir la stabilité et les performances du réseau.
Cet article fournit un guide complet sur l’utilisation de la commande dig sous Linux, depuis son installation et sa syntaxe de base jusqu’aux applications pratiques. À la fin de ce guide, vous saurez comment utiliser efficacement la commande dig pour effectuer des recherches DNS, résoudre des problèmes de réseau et surveiller les propagations.

Sommaire
Installation et configuration de dig
Avant d’utiliser la commande dig, assurez-vous qu’elle est installée sur votre système Linux. Pour les clients VPS Hostinger, accédez à votre serveur via SSH pour installer cet outil. Vous trouverez vos identifiants de connexion dans le menu Aperçu général dans hPanel.

Voici les commandes pour installer dig sur différentes distributions Linux, toutes disponibles sur les plans VPS Hostinger.
Debian et Ubuntu
sudo apt-get update
sudo apt-get install dnsutils
CentOS
sudo yum install bind-utils
Fedora
sudo dnf install bind-utils
Arch Linux
sudo pacman -S bind
Ensuite, vérifiez que dig est correctement installé en contrôlant sa version :
dig -v
Le résultat devrait ressembler à ceci :
DiG 9.16.1-Ubuntu

Syntaxe de la commande dig
La syntaxe de base de la commande dig est la suivante :
dig [serveur] [nom] [type]
Voici une explication de chaque argument :
- [serveur] (facultatif). L’adresse IP ou le nom d’hôte du serveur DNS à interroger. dig utilisera les serveurs DNS listés dans /etc/resolv.conf s’il est omis.
- [nom]. Le nom de domaine à interroger. Il s’agit de l’enregistrement de ressource DNS sur lequel vous souhaitez obtenir des informations.
- [type] (facultatif). Le type d’enregistrement DNS à interroger, y compris A, MX et NS. dig interrogera un enregistrement A si aucun type n’est spécifié par défaut.
Par exemple, pour demander un enregistrement A pour exemple.com, vous pouvez exécuter :
dig exemple.com
Voici le résultat attendu :
; <<>> DiG 9.16.1-Ubuntu <<>> exemple.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12345
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 1
;; QUESTION SECTION:
;exemple.com. IN A
;; ANSWER SECTION:
exemple.com. 3600 IN A 93.184.216.34
;; AUTHORITY SECTION:
exemple.com. 3600 IN NS ns1.exemple.com.
exemple.com. 3600 IN NS ns2.exemple.com.
;; ADDITIONAL SECTION:
ns1.exemple.com. 3600 IN A 192.0.2.1
;; Query time: 10 msec
;; SERVER: 192.0.2.53#53(192.0.2.53)
;; WHEN: Thu Jul 25 14:00:00 UTC 2024
;; MSG SIZE rcvd: 123
Au lieu d’utiliser la commande dig, les utilisateurs de VPS Hostinger peuvent demander à l’assistant IA Kodee de rechercher des informations sur un nom de domaine. Par exemple, vérifiez les enregistrements A de example.com comme suit :

Options de la commande dig
La commande dig offre plusieurs options pour personnaliser les requêtes et les résultats DNS. Voici quelques-unes des options les plus couramment utilisées :
- +short. Affiche uniquement les informations les plus pertinentes, telles que l’adresse IP d’un enregistrement A.
- +noall. Supprime toutes les sections de la sortie sauf celles qui sont explicitement demandées.
- +answer. Affiche uniquement la section réponse de la sortie. Généralement utilisé avec +noall.
- +trace. Effectue une trace complète du processus de résolution DNS depuis les serveurs racine jusqu’aux serveurs faisant autorité.
- @server. Spécifie un serveur DNS différent à interroger au lieu du serveur par défaut.
- -x. Effectue une recherche DNS inversée, traduisant une adresse IP en un nom de domaine.
- +multi. Formate la sortie pour la rendre plus lisible, ce qui est utile lorsqu’il s’agit d’enregistrements DNS multiples.
- +nocmd. Omettre la ligne de commande initiale de la sortie, en n’affichant que les résultats.
- +stats. Affiche la section des statistiques, qui comprend le temps d’interrogation et les détails du serveur.
Vous pouvez également utiliser plusieurs options dans une même commande pour personnaliser davantage le résultat. Voici un exemple de combinaison des options @server, +short et +trace :
dig @8.8.8.8 exemple.com +short +trace
Lorsqu’il est exécuté, il affiche ce qui suit :
; <<>> DiG 9.16.1-Ubuntu <<>> @8.8.8.8 exemple.com +short +trace
;; global options: +cmd
. 518400 IN NS a.root-servers.net.
. 518400 IN NS b.root-servers.net.
...
exemple.com. 3600 IN A 93.184.216.34
Comment utiliser la commande dig
Cette section explique comment utiliser la commande dig pour différents scénarios d’administration du réseau.
Interroger un type d’enregistrement DNS spécifique
L’interrogation d’un type d’enregistrement DNS spécifique vous permet d’obtenir des informations particulières sur un domaine, telles que son adresse IP, ses serveurs de messagerie ou ses serveurs de noms. Voici différentes commandes dig pour interroger des types d’enregistrements DNS spécifiques :
Enregistrement SOA
L’enregistrement de début d’autorité (SOA) contient des informations administratives sur le domaine, notamment le serveur de noms principal et l’adresse électronique enregistrée de l’administrateur du domaine.
dig exemple.com SOA
Voici le résultat que vous devriez obtenir :
...
;; QUESTION SECTION:
;exemple.com. IN SOA
;; ANSWER SECTION:
exemple.com. 3600 IN SOA ns1.exemple.com. hostmaster.exemple.com. 2021071601 3600 1800 1209600 300
...
Enregistrement MX
L’enregistrement d’échange de courrier (MX) spécifie les serveurs mail responsables de la réception des courriels pour le domaine, ce qui est vital pour la mise en place et le dépannage des services mail.
dig exemple.com MX
L’exécution de la commande ci-dessus donne les résultats suivants :
...
;; QUESTION SECTION:
;exemple.com. IN MX
;; ANSWER SECTION:
exemple.com. 3600 IN MX 10 mail.exemple.com.
;; ADDITIONAL SECTION:
mail.exemple.com. 3600 IN A 192.0.2.2
...
Enregistrement NS
L’enregistrement du serveur de noms (NS) répertorie les serveurs de noms responsables du domaine. Il vous aide à comprendre l’infrastructure DNS du domaine.
dig exemple.com NS
Cette commande affichera une sortie similaire à :
...
;; QUESTION SECTION:
;exemple.com. IN NS
;; ANSWER SECTION:
exemple.com. 3600 IN NS ns1.exemple.com.
exemple.com. 3600 3600 IN NS ns2.exemple.com.
;; ADDITIONAL SECTION:
ns1.exemple.com. 3600 IN A 192.0.2.1
...
Interroger un serveur DNS spécifique
Vous pouvez utiliser dig pour demander des informations à un serveur DNS particulier au lieu de vous fier aux serveurs par défaut configurés dans votre système. Cette fonction est utile pour tester et comparer les réponses de différents serveurs DNS.
Interroger le serveur DNS public de Google
Le serveur DNS public de Google (8.8.8.8) est souvent utilisé pour les tests et le dépannage.
dig @8.8.8.8 exemple.com
Voici le résultat :
...
;; QUESTION SECTION:
;exemple.com. IN A
;; ANSWER SECTION:
exemple.com. 3600 IN A 93.184.216.34
;; AUTHORITY SECTION:
exemple.com. 3600 IN NS ns1.exemple.com.
exemple.com. 3600 IN NS ns2.exemple.com.
;; ADDITIONAL SECTION:
ns1.exemple.com. 3600 IN A 192.0.2.1
...
Interroger un serveur de noms faisant autorité
Les serveurs de noms faisant autorité fournissent la réponse définitive aux requêtes DNS concernant les domaines, ce qui vous permet d’obtenir la réponse la plus précise possible.
dig @ns1.exemple.com exemple.com
Si vos configurations sont correctes, vous obtiendrez un résultat similaire au précédent.
Tracer le chemin DNS
Le traçage du chemin DNS consiste à suivre une requête DNS depuis votre ordinateur jusqu’au serveur de noms faisant autorité. Ce processus vous permet de voir le chemin emprunté par les requêtes jusqu’au serveur DNS final.
Pour tracer le chemin DNS, ajoutez l’option +trace à votre commande comme suit :
dig exemple.com +trace
La sortie dig montre les serveurs DNS impliqués à chaque étape :
. 518400 IN NS a.root-servers.net.
. 518400 IN NS b.root-servers.net.
;; Received 512 bytes from 192.0.2.1#53(192.0.2.1) in 5 ms
exemple.com. 3600 IN NS ns1.exemple.com.
exemple.com. 3600 IN NS ns2.exemple.com.
;; Received 200 bytes from 192.0.2.1#53(192.0.2.1) in 10 ms
exemple.com. 3600 IN A 93.184.216.34
;; Received 100 bytes from 192.0.2.2#53(192.0.2.2) in 15 ms
Afficher uniquement la section des réponses
En utilisant la commande dig, vous pouvez filtrer la sortie pour afficher des informations plus propres et plus lisibles tout en éliminant les détails inutiles, ce qui accélère l’analyse des résultats.
Utilisez les options +noall et +answer ensemble dans votre commande dig, par exemple :
dig exemple.com +noall +answer
Cela permet d’obtenir un résultat propre et concis qui ne montre que l’adresse IP du domaine interrogé :
exemple.com. 3600 IN A 93.184.216.34
Formater la sortie
Comme pour l’affichage de la section des réponses, le formatage de la sortie vous permet de personnaliser l’affichage des résultats pour les rendre plus lisibles et plus faciles à analyser. Voici quelques exemples de commandes à utiliser :
Utilisation de +short
Cette option résume les résultats de la requête. Par exemple :
dig exemple.com +short
Vous devriez voir la sortie suivante :
93.184.216.34
Utilisation de +multi
Comme son nom l’indique, +multi affiche plusieurs enregistrements dans un format plus lisible :
dig exemple.com +multi
Voici le résultat :
exemple.com. 3600 IN A 93.184.216.34
exemple.com. 3600 IN NS ns1.exemple.com.
3600 IN NS ns2.exemple.com.
Utilisation de +nocmd
Utilisez +nocmd dans votre commande pour n’afficher que les principaux résultats :
dig exemple.com +nocmd
Lorsqu’il est exécuté, il s’affiche :
;; QUESTION SECTION:
;exemple.com. IN A
;; ANSWER SECTION:
exemple.com. 3600 IN A 93.184.216.34
Utilisation de +comments
Avec +comments, vous pouvez afficher ou masquer les lignes de commentaires dans la sortie. Par exemple, pour masquer les commentaires, exécutez
dig exemple.com +nocmd +noall +answer +nocomments
La commande ci-dessus s’affiche :
exemple.com. 3600 IN A 93.184.216.34
Effectuer une recherche DNS inversée
Une recherche inversée convertit une adresse IP en un nom de domaine, à l’inverse de la recherche DNS directe, plus courante. Cela permet de vérifier que l’adresse IP est correctement associée à un nom de domaine spécifique.
Voici un exemple de recherche DNS inversée :
dig -x 93.184.216.34
Vous obtiendrez un résultat similaire à celui-ci :
...
;; QUESTION SECTION:
;34.216.184.93.in-addr.arpa. IN PTR
;; ANSWER SECTION:
34.216.184.93.in-addr.arpa. 3600 IN PTR example.com.
...
Veuillez noter que si un enregistrement PTR n’est pas défini pour une adresse IP, il n’est pas possible d’effectuer une recherche DNS inversée puisque l’enregistrement PTR pointe vers le domaine ou le nom d’hôte.
Exécuter des requêtes par lots
Vous pouvez également utiliser dig pour exécuter plusieurs recherches DNS en une seule commande. Cela permet d’obtenir des informations sur plusieurs noms de domaine ou adresses IP, ce qui permet de gagner du temps et de simplifier le processus.
Pour exécuter des requêtes par lots, procédez comme suit :
- Créez un fichier nommé domains.txt ou tout autre nom que vous préférez à l’aide de l’éditeur de texte nano :
nano domains.txt
- Ajoutez les adresses IP ou les domaines que vous souhaitez interroger, une par ligne :
exemple1.com
exemple2.com
exemple3.com
- Enregistrez vos modifications et quittez nano en appuyant sur Ctrl + X → Y → Entrée.
- Exécutez dig avec l’option -f suivie du nom de votre fichier :
dig -f domains.txt
Une fois exécutée, la commande s’affiche :
...
;; QUESTION SECTION:
;exemple1.com. IN A
;; ANSWER SECTION:
exemple1.com. 3600 IN A 93.184.216.34
;; AUTHORITY SECTION:
exemple1.com. 3600 IN NS ns1.exemple1.com.
exemple1.com. 3600 IN NS ns2.exemple1.com.
;; ADDITIONAL SECTION:
ns1.exemple1.com. 3600 IN A 192.0.2.1
...
;; QUESTION SECTION:
;exemple2.com. IN A
;; ANSWER SECTION:
exemple2.com. 3600 IN A 93.184.216.35
;; AUTHORITY SECTION:
exemple2.com. 3600 IN NS ns1.exemple2.com.
exemple2.com. 3600 IN NS ns2.exemple2.com.
;; ADDITIONAL SECTION:
ns1.exemple2.com. 3600 IN A 192.0.2.2
...
;; QUESTION SECTION:
;exemple3.com. IN A
;; ANSWER SECTION:
exemple3.com. 3600 IN A 93.184.216.36
;; AUTHORITY SECTION:
exemple3.com. 3600 IN NS ns1.exemple3.com.
exemple3.com. 3600 IN NS ns2.exemple3.com.
;; ADDITIONAL SECTION:
ns1.exemple3.com. 3600 IN A 192.0.2.3
Vérifier le DNSSEC
Les extensions de sécurité DNS, ou DNSSEC, sont un ensemble de protocoles qui sécurisent le processus de recherche DNS. Elles garantissent que les réponses sont authentiques et n’ont pas été modifiées. La vérification des DNSSEC permet de se protéger contre les attaques par usurpation d’identité.
Pour vérifier le DNSSEC avec la commande dig, ajoutez l’option +dnssec :
dig exemple.com +dnssec
La sortie comprend des enregistrements RRSIG dans les sections ANSWER et AUTHORITY :
...
;; QUESTION SECTION:
;example.com. IN A
;; ANSWER SECTION:
example.com. 3600 IN A 93.184.216.34
example.com. 3600 IN RRSIG A 13 2 3600 (
20240301000000 20240215000000 12345 example.com.
hT+pV8JZfCh3UOjP4xB1C2YJmtD5efcd )
;; AUTHORITY SECTION:
example.com. 3600 IN NS ns1.example.com.
example.com. 3600 IN NS ns2.example.com.
example.com. 3600 IN RRSIG NS 13 2 3600 (
20240301000000 20240215000000 12345 example.com.
kd9K8vNlF8cD/B8ejq8G8C9Zp7L )
;; ADDITIONAL SECTION:
ns1.example.com. 3600 IN A 192.0.2.1
ns1.example.com. 3600 IN RRSIG A 13 2 3600 (
20240301000000 20240215000000 12345 example.com.
y6R/B9elK5dQ/L5gRk9F4O0aP8g )
...
Applications pratiques de dig
Une fois que vous avez appris les bases, il est temps d’explorer quelques applications pratiques de la commande dig.
Dépannage des problèmes DNS
L’utilisation de la commande dig pour diagnostiquer les problèmes DNS vous permet d’identifier et de résoudre efficacement les problèmes de réseau. Voici les étapes générales du dépannage des problèmes DNS à l’aide de cette commande :
- Vérifiez la résolution DNS en vérifiant si un nom de domaine se résout correctement :
dig exemple.com
- Assurez-vous que les serveurs de noms du domaine sont correctement configurés :
dig exemple.com NS
- Identifiez où la résolution DNS peut échouer en traçant l’ensemble du chemin de recherche DNS :
dig exemple.com +trace
- Vérifiez les paramètres DNSSEC pour voir si les enregistrements RRSIG sont présents :
dig exemple.com +dnssec
- Assurez-vous qu’une adresse IP se résout en un nom de domaine correct :
dig -x 93.184.216.34
- Pour corriger des services spécifiques comme le courrier électronique, vérifiez les enregistrements DNS correspondants. Par exemple :
dig exemple.com MX
Prêtez attention à chaque résultat et assurez-vous que les sections ANSWER sont correctes.
Surveiller la propagation DNS
Surveiller la propagation DNS consiste à vérifier l’état des modifications DNS sur différents serveurs. Cela permet de s’assurer que les mises à jour des enregistrements DNS ont bien été propagées sur l’ensemble du web.
Suivez ces instructions pour vérifier la propagation du DNS :
- Utilisez l’option @server pour interroger un serveur DNS spécifique, tel que le serveur DNS public de Google :
dig @8.8.8.8 exemple.com
- Interrogez différents serveurs DNS pour comparer leurs réponses. Pour le serveur de Cloudflare, exécutez :
dig @1.1.1.1 exemple.com
Si les sections ANSWER des différents serveurs correspondent, les modifications DNS ont été propagées avec succès. Dans le cas contraire, il se peut que certains serveurs doivent encore mettre à jour leurs enregistrements. Vous pouvez vérifier régulièrement l’état de la propagation.
Tests de performance
La mesure des temps de réponse DNS est essentielle pour évaluer les performances de vos serveurs DNS. Cela vous permet d’identifier les ralentissements ou les problèmes qui affectent la vitesse et la fiabilité de votre réseau.
Voici comment mesurer les temps de réponse du DNS :
- Exécutez la commande de base dig. Concentrez-vous sur le champ Query time de la sortie, qui indique le temps nécessaire pour obtenir une réponse du serveur DNS :
dig exemple.com
- Interrogez différents serveurs DNS pour comparer leurs temps de réponse. Cela permet d’identifier les serveurs les plus performants :
dig @8.8.8.8 exemple.com
dig @1.1.1.1 exemple.com
- Utilisez l’option +stats pour obtenir des statistiques supplémentaires sur les temps d’interrogation et les détails du serveur :
dig exemple.com +stats
Conclusion
Dans cet article, nous avons abordé les utilisations essentielles de la commande Linux dig, des recherches DNS fondamentales aux requêtes plus avancées et aux méthodes de dépannage. En outre, la maîtrise de la commande dig peut améliorer vos compétences en gestion de réseau.
Pratiquez les exemples de commandes de ce guide pour tirer le meilleur parti de dig. Expérimenter différentes options vous permet de mieux comprendre le fonctionnement interne du DNS et d’optimiser les performances du réseau.
Si vous avez des questions ou si vous souhaitez partager votre expérience avec les commandes de dig, laissez un commentaire ci-dessous.
Commande dig – FAQ
À quoi sert la commande dig ?
La commande dig est utilisée pour interroger les serveurs de noms DNS. Elle récupère des informations DNS sur de nombreux enregistrements, tels que A, MX et NS, ce qui permet de diagnostiquer et de résoudre les problèmes liés au réseau.
Comment fonctionne la commande dig ?
La commande dig envoie une requête DNS au serveur spécifié. Elle affiche ensuite la réponse, qui contient des informations sur les enregistrements DNS du domaine interrogé, ce qui permet aux administrateurs réseau de résoudre les problèmes.
Quelles sont les utilisations courantes de la commande dig ?
La commande dig est couramment utilisée pour effectuer des recherches DNS, interroger des types d’enregistrements spécifiques, retracer les chemins de résolution DNS, vérifier les DNSSEC et résoudre les problèmes de propagation et de résolution.