Linux Tutoriels

Comment utiliser la commande dig sous Linux

Disséquons ce morceau par morceau.

; > DiG 9.11.3-1ubuntu1.11-Ubuntu> howtogeek.com ;; options globales: + cmd ;; Vous avez une réponse: ;; – >> EN-TÊTE

Maintenant, voici ce que tout cela signifie:

Première ligne: la version de dig et le domaine interrogé.
Options globales: comme nous le verrons, vous pouvez utiliser dig pour interroger plusieurs domaines simultanément. Cette ligne montre les options qui ont été appliquées à toutes les requêtes de domaine. Dans notre exemple simple, il s’agissait simplement de l’option par défaut + cmd (commande).
Opcode: Query: C’est le type d’opération qui a été demandé qui, dans ce cas, était une requête. Cette valeur peut également être une question pour une requête inverse, ou un statut si vous testez simplement l’état du système DNS.
Statut: Noerror: Il n’y a eu aucune erreur et la demande a été correctement résolue.
ID: 12017: cet ID aléatoire lie la demande et la réponse ensemble.
Indicateurs: qr rd ra: Ils représentent la requête, la récursivité souhaitée et la récursivité disponible. La récursivité est une forme de recherche DNS (l’autre est itérative). Vous pouvez également voir AA, qui signifie Réponse faisant autorité, ce qui signifie qu’un serveur de noms faisant autorité a fourni la réponse.
Requête: 1: le nombre de requêtes dans cette session, qui était d’un.
Réponse: 4: Le nombre de réponses dans cette réponse, qui est de quatre.
Autorité: 0: le nombre de réponses provenant d’un serveur de noms faisant autorité, qui était de zéro dans ce cas. La réponse a été renvoyée depuis le cache d’un serveur précurseur DNS. Il n’y aura pas de section faisant autorité dans la réponse.
Supplémentaire: 1: Il y a un élément d’information supplémentaire. (Étrangement, rien n’est répertorié à moins que cette valeur ne soit supérieure ou égale à deux.)

Opt Pseudosection

Ensuite, nous voyons ce qui suit dans la pseudosection Opt:

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494

Décomposons cela:

EDNS: version 0: la version de Système d’extension pour DNS qui est utilisé. EDNS transmet des données étendues et des drapeaux en étendant la taille du Protocole de datagramme utilisateur (UDP) paquets. Ceci est indiqué par un indicateur de taille variable.
flags: aucun indicateur n’est utilisé.
udp: 4096: la taille du paquet UDP.

Section des questions

Dans la section Question, nous voyons ce qui suit:

;; QUESTION SECTION:
;howtogeek.com. IN A

Voici ce que cela signifie:

howtogeek.com: Le nom de domaine que nous recherchons.
IN: Nous faisons une requête de classe Internet.
R: Sauf indication contraire, dig demandera un enregistrement A (adresse) au serveur DNS.

Section réponse

La section Réponse contient les quatre réponses suivantes que nous avons reçues du serveur DNS:

howtogeek.com. 3551 IN A 151.101.194.217
howtogeek.com. 3551 IN A 151.101.130.217
howtogeek.com. 3551 IN A 151.101.66.217
howtogeek.com. 3551 IN A 151.101.2.217

Voici ce que signifient ces réponses:

  Comment jouer à Minecraft sur Windows 10, PS4, Xbox, Nintendo Switch

3551: Il s’agit de la durée de vie (TTL), un entier signé 32 bits qui contient l’intervalle de temps pendant lequel un enregistrement peut être mis en cache. Lorsqu’elles expirent, les données doivent être utilisées dans une réponse à une demande jusqu’à ce qu’elles soient actualisées par le serveur DNS.
IN: Nous avons fait une requête de classe Internet.
R: Nous avons demandé un enregistrement A du serveur DNS.

Section des statistiques

Statistiques est la dernière section et contient les informations suivantes:

;; Query time: 0 msec 
;; SERVER: 127.0.0.53#53(127.0.0.53) 
;; WHEN: Sun Mar 22 07:44:37 EDT 2020 
;; MSG SIZE rcvd: 106

Voici ce que nous avons:

Temps de requête: 0 msec: Le temps nécessaire pour obtenir la réponse.
SERVER: 127.0.0.53 # 53 (127.0.0.53): L’adresse IP et le numéro de port du serveur DNS qui a répondu. Dans ce cas, il pointe vers le résolveur de stub de mise en cache local. Cela transfère les requêtes DNS vers les serveurs DNS en amont configurés. Sur l’ordinateur de test Manajro, l’adresse indiquée ici était 8.8.8.8 # 53, qui est Service DNS public de Google.
QUAND: Dim 22 mars 07:44:37 HAE 2020: Quand la demande a été faite.
MSG SIZE rcvd: 106: La taille du message reçu du serveur DNS.

Être sélectif

Vous n’avez pas à vous contenter des deux extrêmes: les lèvres serrées et les bavards. La commande dig vous permet d’inclure ou d’exclure de manière sélective des sections des résultats.

Les options de requête suivantes supprimeront cette section des résultats:

+ nocomments: ne pas afficher les lignes de commentaires.
+ noauthority: ne pas afficher la section d’autorité.
+ noadditional: ne pas afficher la section supplémentaire.
+ nostats: ne pas afficher la section des statistiques.
+ noanswer: ne pas afficher la section de réponse.
+ noall: Ne montrez rien!

L’option de requête + noall est généralement combinée avec l’une de celles ci-dessus pour inclure une section dans les résultats. Ainsi, au lieu de taper une longue chaîne d’options de requête pour désactiver plusieurs sections, vous pouvez utiliser + noall pour toutes les désactiver.

Vous pouvez ensuite utiliser les options de requête inclusives suivantes pour réactiver celles que vous souhaitez voir:

+ commentaires: Afficher les lignes de commentaires.
+ autorité: affiche la section autorité.
+ supplémentaire: afficher la section supplémentaire.
+ stats: affiche la section stats.
+ réponse: affiche la section de réponse.
+ tout: tout afficher.

Nous tapons ce qui suit pour faire une demande et exclure les lignes de commentaire:

dig howtogeek.com +nocomments

le

Si nous utilisons l’option de requête + noall seule, comme indiqué ci-dessous, nous n’obtiendrons aucune sortie utile:

dig howtogeek.com +noall

le

Nous pouvons ajouter de manière sélective les sections que nous voulons voir. Pour ajouter la section de réponse, nous tapons ce qui suit:

dig howtogeek.com +noall +answer

le

Si nous tapons ce qui suit pour activer + stats, nous verrons également la section statistiques:

dig howtogeek.com +noall +answer +stats

le

La combinaison + noall + answer est souvent utilisée. Vous pouvez ajouter d’autres sections à la ligne de commande si nécessaire. Si vous voulez éviter de taper + noall + answer sur la ligne de commande chaque fois que vous utilisez dig, vous pouvez les placer dans un fichier de configuration appelé «.digrc». Il se trouve dans votre répertoire personnel.

  Comment créer et imprimer une enveloppe dans Word

Nous tapons ce qui suit pour en créer un avec écho:

echo "+noall +answer" > $HOME/.digrc

Nous pouvons ensuite taper ce qui suit pour vérifier son contenu:

cat .digrc

le Commandes $ HOME / .digrc « et » cat .digrc « dans une fenêtre de terminal. » width = « 646 » height = « 122 » onload = « pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon (this); » onerror = « this.onerror = null; pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon (this); »>

Ces deux options seront désormais appliquées à toutes les futures utilisations de dig, comme indiqué ci-dessous:

dig ubuntu.org
dig linux.org
dig github.com

Ce fichier de configuration dig sera utilisé pour les exemples restants de cet article.

Enregistrements DNS

Les informations renvoyées à vos demandes de fouille sont extraites de différents types d’enregistrements détenus sur le serveur DNS. Sauf si nous demandons quelque chose de différent, dig interroge l’enregistrement A (adresse). Voici les types d’enregistrements couramment utilisés avec dig:

A Record: lie le domaine à une adresse IP version 4.
MX Record: l’échange de courrier enregistre directement les e-mails envoyés aux domaines vers le serveur de messagerie approprié.
Enregistrement NS: les enregistrements de serveur de noms délèguent un domaine (ou sous-domaine) à un ensemble de serveurs DNS.
Enregistrement TXT: les enregistrements texte stockent des informations textuelles concernant le domaine. En règle générale, ils peuvent être utilisés pour supprimer les e-mails falsifiés ou falsifiés.
Enregistrement SOA: les enregistrements d’autorité de début peuvent contenir de nombreuses informations sur le domaine. Ici, vous pouvez trouver le serveur de noms principal, la partie responsable, un horodatage pour les changements, la fréquence des actualisations de zone et une série de délais pour les tentatives et les abandons.
TTL: la durée de vie est un paramètre pour chaque enregistrement DNS qui spécifie la durée pendant laquelle un serveur précurseur DNS est autorisé à mettre en cache chaque requête DNS. À l’expiration de ce délai, les données doivent être actualisées pour les demandes suivantes.
ANY: Cela indique à dig de renvoyer tous les types d’enregistrement DNS qu’il peut.

La spécification du type d’enregistrement A ne change pas l’action par défaut, qui consiste à interroger l’enregistrement d’adresse et à obtenir l’adresse IP, comme indiqué ci-dessous:

dig redhat.com A

le

Pour interroger les enregistrements d’échange de courrier, nous utilisons l’indicateur MX suivant:

dig yahoo.com MX

le

L’indicateur de serveur de noms renvoie le nom suivant des serveurs de noms racine associés au domaine de niveau supérieur:

dig fedora.com NS

le

Pour interroger le début de la notice d’autorité, nous tapons l’indicateur SOA suivant:

dig manjaro.com SOA

le

Le drapeau TTL nous montrera le temps de vie des données dans le cache du serveur DNS. Si nous faisons une série de requêtes, nous voyons le temps de vivre se réduire à rien, puis revenons à sa valeur de départ.

  Comment trouver la valeur de registre pour un élément de menu contextuel sous Windows 10

Nous tapons ce qui suit:

dig usa.gov TTL

le

Pour voir les enregistrements de texte, nous tapons le drapeau TX:

dig usa.gov TXT

le

Spécification du serveur DNS

Si vous souhaitez utiliser un serveur DNS particulier pour votre demande, vous pouvez utiliser le signe arobase (@) pour le transmettre à creuser en tant que paramètre de ligne de commande.

Avec le serveur DNS par défaut (voir ci-dessous), dig fait référence au résolveur de stub de mise en cache local à 127.0.0.53.

dig usa.gov +stats

Maintenant, nous tapons ce qui suit pour utiliser le serveur DNS public de Google à 8.8.8.8:

dig @8.8.8.8 usa.gov +stats

le

Utilisation de dig avec plusieurs domaines

Nous pouvons passer plusieurs domaines à creuser sur la ligne de commande, comme indiqué ci-dessous:

dig ubuntu.org fedora.org manjaro.com

le

Si vous vérifiez régulièrement un ensemble de domaines, vous pouvez les stocker dans un fichier texte et le transmettre à creuser. Tous les domaines du fichier seront vérifiés tour à tour.

Notre fichier s’appelle «domaines.txt». Nous utiliserons cat pour afficher son contenu, puis le passerons à creuser avec l’option -f (fichier). Nous tapons ce qui suit:

cat domains.txt
dig -f domains.txt

le

Recherches DNS inversées

Si vous avez une adresse IP et que vous voulez savoir où elle va, vous pouvez essayer une recherche DNS inversée. S’il s’agit d’un serveur enregistré auprès d’un serveur DNS, vous pourrez peut-être trouver son domaine.

La possibilité de le faire dépend de la présence d’un PTR (enregistrement de pointeur). Les PTR résolvent une adresse IP en nom de domaine complet. Cependant, comme ils ne sont pas obligatoires, ils ne sont pas toujours présents sur un domaine.

Voyons si nous pouvons savoir où nous mène l’adresse IP 209.51.188.148. Nous tapons ce qui suit, en utilisant l’option -x (recherche inversée):

dig -x 209.51.188.148

le

Presto! L’adresse IP se résout en gnu.org.

Étant donné qu’un PTR est un enregistrement DNS et que nous savons que dig peut demander des enregistrements DNS spécifiques, ne pourrions-nous pas simplement demander à dig de récupérer le PTR pour nous? Oui, nous pouvons, mais cela demande un peu plus de travail.

Nous devons fournir l’adresse IP dans l’ordre inverse et virer .in-addr.arpa à la fin, comme indiqué ci-dessous:

dig ptr 148.188.51.209.in-addr.arpa

le

Nous obtenons le même résultat; cela a juste demandé un peu plus d’efforts.

Pouvez-vous le creuser?

Nous utilisons tous Internet quotidiennement, et les esprits curieux se sont souvent demandé comment la magie se produit lorsque nous tapons le nom d’un site Web dans un navigateur. Avec dig, vous pouvez explorer les processus de création de réseau.