nslookup et dig : client DNS pour Windows et Linux

malekalmorte

Date création :

13 juillet 2019

Dernière modification :

Windows et Linux possède des commandes réseaux assez utiles.
On trouve notamment un client DNS afin de pouvoir tester les résolutions DNS : nslookup et dig.
Cela s’avère très utile lorsque l’on rencontre des problèmes de connexions ou pour vérifier des configurations.

Voici une présentation et utilisation de ces deux commandes nslookup et dig.

nslookup et dig : client DNS pour Windows et Linux

Introduction

Le DNS permet d’obtenir une adresse IP depuis un nom littérale.
On parle alors de résoudre une adresse IP ou résolution DNS.
Bien entendu, il existe d’autres types d’entrées DNS comme :

  • A ou ALIAS : on fait pointer une adresse IP à une adresse littérale.
  • CNAME : une adresse littérale pointe vers une autre.
  • MX (Mail eXchanger) : les entrées liés aux serveurs de mails
  • NS (Name Server) : les entrées des serveurs DNS
  • PTR (Point Record) : il s’agit du reverse d’une adresse IP. C’est à dire vers quelle adresse littérale, une adresse IP correspond.
  • Specify ANY to display all records.

Ainsi un client DNS peut effectuer toutes ces interrogations DNS.

nslookup

nslookup est un outil en ligne de commandes pour résolution DNS sur Windows.
Vous devez ouvrir l’invite de commandes afin de pouvoir l’utiliser.

Lorsque l’on saisie nslookup, on arrive sur interface sur laquelle on peut ensuite effectuer des résolutions DNS.
On peut toutefois demander des résolutions DNS sans entrées dans celle-ci.
Par défaut, on travaille avec le serveur DNS de l’interface réseau.

nslookup client DNS de Windows en invite de commandes

On saisit ensuite une adresse et l’outil se charge de vous retourner l’adresse IP IPv4 et IPv6.
Ainsi nslookup nous donne :

  • Le serveur effectuant la résolution DNS. Ici il s’agit de la Livebox
  • La réponse avec l’adresse et ses adresses IP.
  • Le message « Réponse ne faisant pas autorité » indique que la réponse vient du cache et non d’un serveur DNS.
Interrogation DNS avec nslookup

Si on ne veut pas utiliser le cache et interroger le serveurs DNS.
Il faut utiliser le type soa comme ceci:

nslookup -type=soa domaine.com
interrogation DNS nslookup directe sur les serveurs

Enfin pour une réponse DNS plus complète avec les ent-ête, TTL, expiration, etc
Il faut utiliser l’option -debug.

nslookup -debug malekal.com
nslookup pour windows DNS complet

Changer de serveur DNS

La commande set permet de changer de serveurs DNS.
Cela vous permet donc de tester une résolution avec un autre serveur DNS sans devoir changer la configuration de votre interface réseau.
Très utile afin de résoudre des problèmes de connexions internet.

Par exemple pour utiliser les serveurs DNS Google, il suffit de saisir :

server 8.8.8.8
Changer le serveur DNS sur nslookup

Reverse IP

Le reverse IP ou PTR s’obtient en saisissant nslookup puis l’adresse IP.

Reverse ip avec nslookup

Changer le type

Enfin la commande set type permet de choisir le type de résolution.
Par exemple pour récupérer le MX d’un domaine :

set type=mx

ou encore les entrées SPF :

set type=txt
Changer le type en MX sur nslookup de Windows

ou encore pour demander le serveur DNS d’un domaine.

set type=ns

Problèmes et diagnostics erreurs DNS

nslookup est donc un outil idéal pour tester et diagnostics les problèmes et erreurs DNS.
L’article suivant l’utilise pour vous aider à résoudre les problèmes de DNS.

dig

C’est un outil très complet pour effectuer des requêtes DNS.
Il n’est en général pas installé par défaut dans les distributions Linux.
Ainsi vous devez l’installer vous mêmes avec l’outil de votre distro avec apt ou dnf :

apt-get install dig
dnf install dig

Enfin dig s’utilise dans un terminal avec la syntaxe :

dig <serveur> <nom> <type>

Les sections

Voici une réponse classique d’une requête DNS.
Dig fonctionne avec des sections, ici cinq.
On peut retirer celle-ci à chaque fois grâce à une option.
Le nom est entre crochet car on peut aussi forcer l’affichage de la section.

  • Un récapitulatif des drapeaux et en-tête : Les flag et quelques options DNS. On peut la retirer avec l’option +[no]comments.
  • OPT PSEUDOSECTION : Le mécanisme DNS (ex EDNS) et si des cookies sont utilisées
  • Answer Section : la réponse DNS. Pour la supprimer, il faut utiliser +[no]answer
  • Authority section : les serveurs DNS faisant autorités. Pour la retirer, on utilise +[no]authority.
  • Enfin les données sur la requête comme le temps de réponse, le serveur utilisé, la taille de la réponse, etc. Cela se règle avec l’option +[no]additional.

Ici il s’agit de résoudre l’adresse www.malekal.com afin d’obtenir l’adresse IP.
On voit qu’un CNAME est utilisé.

Les sections DNS de dig
Les sections DNS de dig

La réponse est très complète mais on peut bien sûr la raccourcir.
Pour cela, on utilise l’option +short.

dig réponse courte

ou encore, on peut demander à ne rien afficher avec +noall puis seulement la section réponse avec +answer.

dig réponse courte

Comment utiliser Dig sur Linux

Pour tous les exemples d’utilisation, suivez ce tutoriel :

Comment utiliser la commande Dig sur Linux (recherche DNS)

A propros de malekalmorte

malekal-site-logo-150

Passionné par l'informatique depuis très jeune, j'aide les internautes sur les forums depuis 2005 pour résoudre leurs tracas informatiques.
Je vous propose par la même occasion ce site avec de nombreux tutoriels pour vous aider aussi à résoudre de manière autonome les problèmes informatiques du quotidien.