Commande Linux dig
Encyclopédie des commandes Linux
dig (Domain Information Groper) est un puissant outil d'interrogation DNS dans le système Linux, utilisé pour interroger les serveurs de noms de domaine DNS. Comparé au traditionnel nslookup, dig fournit des résultats d'interrogation plus détaillés et des options d'interrogation plus flexibles.
Principales fonctionnalités de la commande dig :
- Affiche le processus complet d'interrogation DNS
- Prend en charge les requêtes de tous les types d'enregistrements DNS
- Permet de spécifier un serveur DNS précis à interroger
- Le format de sortie est clair et facile à lire
Syntaxe de base de la commande dig
dig [@server] [domain] [query-type] [query-class] [query-options]
Description des paramètres
| Paramètre | Description |
|---|---|
@server |
Spécifier le serveur DNS à interroger (par exemple,@8.8.8.8) |
domain |
Le domaine à interroger (par exemple,example.com) |
query-type |
Le type d'enregistrement à interroger (par exemple,A, MX, NSetc.) |
query-class |
La classe de l'interrogation (généralementININ pour Internet) |
query-options |
Options de requête supplémentaires |
Types de requêtes courants
dig prend en charge l'interrogation de plusieurs types d'enregistrements DNS. Voici les types d'enregistrements courants :
| Type d'enregistrement | Description | Exemple |
|---|---|---|
| A | Enregistrement d'adresse IPv4 | dig example.com A |
| AAAA | Enregistrement d'adresse IPv6 | dig example.com AAAA |
| MX | Enregistrement d'échange de messagerie | dig example.com MX |
| NS | Enregistrement de serveur de noms | dig example.com NS |
| CNAME | Enregistrement de nom canonique | dig www.example.com CNAME |
| TXT | Enregistrement texte | dig example.com TXT |
| SOA | Enregistrement de début d'autorité | dig example.com SOA |
| ANY | Tous les enregistrements | dig example.com ANY |
Analyse de la sortie de la commande dig
Exécutez une requête dig simple :
dig example.com
La sortie typique contient les parties suivantes :
-
Section HEADER: Affiche les informations de base de la requête
opcode: Opcodestatus: Statut de la réponseid: ID de requêteflags: Indicateurs (par ex., qr, rd, ra, etc.)
-
section QUESTION: Affiche la question de la requête
- Contient le nom de domaine interrogé et le type d'enregistrement
-
section ANSWER: Résultat de la requête
- Contient les informations réelles de l'enregistrement DNS
-
section AUTHORITY: Informations sur les serveurs de noms faisant autorité
- Affiche les serveurs DNS faisant autorité responsables du domaine
-
section ADDITIONAL: Informations supplémentaires
- Peut contenir des informations supplémentaires utiles
-
section STATISTICS: Statistiques de la requête
- Affiche le temps de requête, le serveur et d'autres informations
Exemples pratiques de requêtes
1. Interroger un serveur DNS spécifique
dig @8.8.8.8 example.com
Cette commande interroge l’enregistrement A de example.com depuis le serveur DNS public de Google (8.8.8.8).
2. Interroger les enregistrements MX
dig example.com MX
Interroger les informations du serveur de messagerie d’un domaine.
3. Interroger le processus complet de résolution de domaine
dig +trace example.com
+traceL’option +trace affiche le processus complet de résolution à partir du serveur de noms racine.
4. Mode de sortie abrégé
dig +short example.com
Affiche uniquement les résultats de la requête, pas les autres informations détaillées.
5. Recherche DNS inversée
dig -x 8.8.8.8
Interroger le nom de domaine correspondant via une adresse IP.
6. Interroger plusieurs domaines par lots
dig -f domains.txt +short
Ici, domains.txt contient la liste des domaines à interroger, un par ligne.
Options avancées
1. Contrôler le format de sortie
dig +noall +answer example.com
+noallMasquer toutes les sections,+answerAfficher uniquement la section ANSWER.
2. Définir le délai d'attente de la requête
dig +time=5 example.com
Définir le délai d'attente de la requête à 5 secondes.
3. Spécifier le port de requête
dig @dns.server.example.com -p 5353 example.com
Interroger le serveur DNS sur un port non standard (5353).
4. Afficher les informations TTL
dig +ttlid example.com
Afficher la valeur TTL (Time To Live) de l'enregistrement.
5. Afficher les statistiques de requête
dig +stats example.com
Afficher les statistiques détaillées de requête.
Questions fréquentes
1. Quelle est la différence entre dig et nslookup ?
dig fournit une sortie plus détaillée et plus d'options de requête que nslookup, et est un outil de requête DNS plus professionnel. nslookup a progressivement été remplacé par dig.
2. Comment installer la commande dig ?
Sur la plupart des distributions Linux, dig fait partie du paquet bind-utils ou dnsutils :
-
Debian/Ubuntu :
sudo apt install dnsutils
-
CentOS/RHEL :
sudo yum install bind-utils
3. Pourquoi ma requête dig ne renvoie-t-elle pas la section ANSWER ?
Raisons possibles :
- Le type d'enregistrement interrogé n'existe pas
- Le domaine n'existe pas
- Le serveur DNS n'a aucun enregistrement pour ce domaine
- Problèmes de connexion réseau
Vous pouvez essayer d'utiliser l'+traceoption pour afficher le processus de résolution complet.
Scénarios d'application pratiques
1. Dépannage des problèmes de résolution DNS
Lorsqu’un site web est inaccessible, vous pouvez utiliser dig pour vérifier si la résolution DNS est normale :
dig +trace example.com
2. Vérifier la configuration du serveur de messagerie
Vérifiez si la configuration du serveur de messagerie du domaine est correcte :
dig example.com MX
3. Surveiller les modifications des enregistrements DNS
En exécutant périodiquement des requêtes dig et en comparant les résultats, vous pouvez surveiller les modifications des enregistrements DNS :
Exemple
diff current.txt previous.txt
4. Tester le temps de réponse du serveur DNS
Comparez la vitesse de réponse de différents serveurs DNS :
Exemple
time dig @1.1.1.1 example.com
Résumé
La commande dig est un outil de diagnostic DNS essentiel pour les administrateurs système Linux et les ingénieurs réseau. Grâce à cet article, vous devriez être en mesure de :
- Comprendre la syntaxe de base et les options courantes de la commande dig
- Interroger différents types d’enregistrements DNS
- Analyser la sortie de la commande dig
- Utiliser dig pour résoudre des problèmes pratiques liés au DNS
- Maîtriser les usages avancés et les techniques de dig
Pour en savoir plus sur la commande dig, vous pouvez consulter sa page de manuel :
man dig
Ou utilisez l’option d’aide :
dig -h
Autres extensions