{{tag>netadmin dns dig commande cli}} ====== dig ====== ===== Installation ===== La commande dig ((**D**omain **I**nformation **G**roper)) est incluse dans le paquet **dnsutils**: sudo apt-get install dnsutils ===== Spécifier le protocole ===== Par défaut la résolution DNS utilise le port 53/UDP. Au delà d'une certaine taille de réponse le protocole bascule automatiquement sur TCP. Il peut être intéressant de clairement spécifier quel protocole on souhaite utiliser. Les anciennes versions de dig ou nslookup disposaient de l'option **+vc** (virtual circuit). Cette option existe encore pour la rétrocompatibilité mais l'option **+[no]tcp** est plus explicite: # Utiliser le protocole TCP pour la requête DNS dig +short +tcp wiki.phobos-net.fr # Equivalent via l'option de compatibilité # avec les anciennes versions +vc (virtual circuit) dig +short +vc wiki.phobos-net.fr Utiliser UDP (comportement par défaut) via une option explicite dig +short +notcp wiki.phobos-net.fr # Equivalent dig +short +novc wiki.phobos-net.fr ===== Les sections ===== Le retour de la commande dig est réparti en **sections** et contient de nombreuses informations en commentaires. On peut filtrer/choisir les sections à afficher et les informations ajoutées en commentaires via des options (arguments) de la ligne de commande : ^ Option ^ Description | | +[no]cmd | Masquer ou afficher la version de dig et les arguments passés en ligne de commande. | | +[no]question | Masquer ou afficher la requête du client dans les commentaires | | +[no]comments | Masquer ou afficher les commentaires additionnels | | +[no]stats | Masquer ou afficher les statistiques (serveur, temps de réponse, taille des données)| | +[no]trace | ''+trace'' indique à dig qu'il doit résoudre la requête à partir du serveur de noms racine en signalant les résultats de chaque étape de la requête. | | +[no]all | Masquer ou afficher tout | Les options sont nombreuses, confère le manuel pour une liste exhaustive. Utilisée seule l'option ''+noall'' ne produira aucune sortie. On l’accompagnera toujours des quelques options que l'on souhaite voir activées : dig +tcp +noall +answer @localhost example.com A ===== Exemples ===== ==== Résolution inverse ==== Retrouver le FQDN à partir d'une adresse IP: dig -x 92.168.0.10 +short ==== Serveurs de noms ==== Retrouve les serveurs de noms du domaine "example.com": dig -t NS example.com +short ==== Serveurs de messagerie ==== Retrouve les MTA pour le domaine "orange.fr": dig -t MX orange.fr ===== Références ===== * https://fr.wikipedia.org/wiki/Domain_Name_System * https://www.cyberciti.biz/faq/find-dns-domain-start-of-authority-record/ * https://www.cyberciti.biz/faq/how-to-see-time-to-live-ttl-for-a-dns-record/ * https://tools.ietf.org/html/rfc6895 * https://serverfault.com/questions/729025/what-are-all-the-flags-in-a-dig-response * https://superuser.com/questions/1549354/how-to-force-tcp-packets-for-testing-dns * [[https://toptips.fr/comment-utiliser-la-commande-dig-sous-linux/|Options de la commande dig sous Linux (toptips.fr)]] * [[https://www.malekal.com/nslookup-dig-dns-windows-linux/|nslookup et dig (malekal.com)]] * [[https://docs.oracle.com/fr-fr/iaas/Content/DNS/Tasks/testingdnsusingdig.htm| Tester le DNS avec dig (oracle.com)]]