GNU/Linux >> Tutoriels Linux >  >> Linux

5 Exemples de commandes UNIX / Linux Traceroute

Il existe des scénarios dans lesquels on aimerait connaître l'itinéraire suivi par une connexion. Par route, nous entendons ici les adresses IP de toutes les entités de transfert (comme les routeurs intermédiaires).

Bien qu'il n'y ait aucune garantie que la route restera la même pour tous les paquets d'une connexion, elle est généralement la même. Ces informations relatives à l'itinéraire peuvent être très pratiques lors du débogage des problèmes liés au réseau.

l'utilitaire traceroute imprime l'itinéraire complet vers une destination particulière. Dans cet article, nous discuterons du fonctionnement de traceroute et verrons quelques exemples pratiques.

Comment fonctionne Traceroute ?

Avant de commencer avec des exemples, comprenons le concept sur lequel fonctionne traceroute.

L'utilitaire Traceroute utilise le champ TTL dans l'en-tête IP pour réaliser son opération. Pour les utilisateurs qui découvrent le champ TTL, ce champ décrit le nombre de sauts qu'un paquet particulier prendra lors de son déplacement sur le réseau.

Ainsi, cela décrit efficacement la durée de vie du paquet sur le réseau. Ce champ est généralement défini sur 32 ou 64. Chaque fois que le paquet est conservé sur un routeur intermédiaire, il diminue la valeur TTL de 1. Lorsqu'un routeur trouve la valeur TTL de 1 dans un paquet reçu, ce paquet n'est pas transmis mais à la place. rejeté.

Après avoir rejeté le paquet, le routeur renvoie un message d'erreur ICMP « Temps dépassé » à la source d'où le paquet a été généré. Le paquet ICMP renvoyé contient l'adresse IP du routeur.

Alors maintenant, on peut facilement comprendre que traceroute fonctionne en envoyant des paquets avec une valeur TTL commençant à 1, puis en incrémentant de un à chaque fois. Chaque fois qu'un routeur reçoit le paquet, il vérifie le champ TTL, si le champ TTL est 1 alors il rejette le paquet et envoie le paquet d'erreur ICMP contenant son adresse IP et c'est ce que traceroute requiert. Ainsi, traceroute récupère progressivement l'adresse IP de tous les routeurs entre la source et la destination.

Vous devez également comprendre les champs d'en-tête IP dont nous avons parlé il y a quelque temps.

Exemples de Traceroute

1. Comment exécuter traceroute ?

$ traceroute <server-name>

Le nom de serveur ci-dessus est le nom de destination ou l'adresse IP. Par exemple, traceroute est utilisé pour trouver le chemin réseau de ma machine à google.com :

$ traceroute google.com
traceroute to google.com (74.125.236.132), 30 hops max, 60 byte packets
1  220.224.141.129 (220.224.141.129)  89.174 ms  89.094 ms  89.054 ms
2  115.255.239.65 (115.255.239.65)  109.037 ms  108.994 ms  108.963 ms
3  124.124.251.245 (124.124.251.245)  108.937 ms  121.322 ms  121.300 ms
4  * 115.255.239.45 (115.255.239.45)  113.754 ms  113.692 ms
5  72.14.212.118 (72.14.212.118)  123.585 ms  123.558 ms  123.527 ms
6  72.14.232.202 (72.14.232.202)  123.499 ms  123.475 ms  143.523 ms
7  216.239.48.179 (216.239.48.179)  143.503 ms  95.106 ms  95.026 ms
8  bom03s02-in-f4.1e100.net (74.125.236.132)  94.980 ms  104.989 ms  104.954 ms

Chaque ligne donne le détail de l'interaction avec chaque routeur rencontré. Nous voyons donc que traceroute donne non seulement les adresses IP des routeurs intermédiaires, mais également trois temps d'aller-retour pour ce routeur particulier, car pour chaque routeur, les commandes traceroute déclenchent trois paquets.

Le champ ‘*’ en sortie

Il y a des moments où l'on peut rencontrer un '*' dans la sortie plutôt qu'une valeur. Cela montre que le champ requis n'a pas pu être récupéré. La raison peut être n'importe quoi, de l'échec de la recherche DNS inversée aux paquets n'atteignant pas le routeur cible aux paquets perdus sur le chemin du retour. Nous voyons donc que la raison peut être multiple, mais pour tous ces types de cas, l'utilitaire traceroute fournit un * dans la sortie.

2. Désactiver le mappage d'adresse IP et de nom d'hôte

Traceroute fournit une option par laquelle le mappage des adresses IP avec le nom d'hôte (que traceroute essaie) est désactivé. L'option pour ce faire est '-n' . L'exemple suivant illustre cela :

$ traceroute google.com -n
traceroute to google.com (173.194.36.7), 30 hops max, 60 byte packets
1  220.224.141.129  109.352 ms  109.280 ms  109.248 ms
2  115.255.239.65  131.633 ms  131.598 ms  131.573 ms
3  124.124.251.245  131.554 ms  131.529 ms  131.502 ms
4  115.255.239.45  131.478 ms  131.464 ms  199.741 ms
5  72.14.212.118  199.674 ms  199.637 ms  199.603 ms
6  209.85.241.52  199.578 ms  199.549 ms  209.838 ms
7  209.85.241.187  199.488 ms  177.264 ms  177.196 ms
8  173.194.36.7  177.159 ms  187.463 ms  187.434 ms

Nous voyons donc qu'aucun nom d'hôte n'est affiché dans la sortie.

3. Configurer le temps d'attente de réponse

Le temps d'attente de l'utilitaire traceroute après l'émission d'une sonde peut également être configuré. Cela peut être fait via l'option '-w' qu'il fournit. L'option -w attend une valeur que l'utilitaire prendra comme temps de réponse à attendre. Dans cet exemple, le temps d'attente est de 0,1 seconde et l'utilitaire traceroute n'a pu attendre aucune réponse et a imprimé tous les *.

$ traceroute google.com -w 0.1
traceroute to google.com (74.125.236.101), 30 hops max, 60 byte packets
1  * * *
2  * * *
3  * * *
..
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *

Nous voyons donc que traceroute a tenté 30 tentatives (le nombre maximal de tentatives de saut) puis a abandonné car aucun paquet ICMP n'a été reçu en 0,1 seconde.

4. Configurer le nombre de requêtes par saut

Comme déjà expliqué précédemment, l'utilitaire traceroute envoie 3 paquets par saut pour fournir 3 temps d'aller-retour. Cette valeur par défaut de 3 est configurable à l'aide de l'option '-q'. Cette option attend un entier qu'elle définit comme nouvelle valeur du nombre de sondes par saut.

$ traceroute google.com -q 5
traceroute to google.com (173.194.36.46), 30 hops max, 60 byte packets
1  220.224.141.129 (220.224.141.129)  91.579 ms  91.497 ms  91.458 ms  91.422 ms  91.385 ms
2  115.255.239.65 (115.255.239.65)  91.356 ms  91.325 ms  98.868 ms  98.848 ms  98.829 ms
3  124.124.251.245 (124.124.251.245)  94.581 ms  107.083 ms  107.044 ms  107.017 ms  106.981 ms
4  115.255.239.45 (115.255.239.45)  106.948 ms  106.918 ms  144.432 ms  144.412 ms  144.392 ms
5  72.14.212.118 (72.14.212.118)  115.565 ms  115.485 ms  115.446 ms  115.408 ms  115.381 ms
6  72.14.232.202 (72.14.232.202)  115.351 ms  87.232 ms  117.157 ms  117.123 ms  117.049 ms
7  209.85.241.189 (209.85.241.189)  126.998 ms  126.973 ms  126.950 ms  126.929 ms  126.912 ms
8  bom04s02-in-f14.1e100.net (173.194.36.46)  126.889 ms  95.526 ms  95.450 ms  95.418 ms  105.392 ms

Nous voyons donc qu'après avoir configuré le nombre de sondes sur 5, la sortie a commencé à afficher cinq temps d'aller-retour par saut.

5. Configurez la valeur TTL pour commencer

L'utilitaire Traceroute est suffisamment flexible pour accepter la valeur TTL avec laquelle l'utilisateur souhaite démarrer l'utilitaire. Par défaut, sa valeur est 1, ce qui signifie qu'il commence par le premier routeur du chemin, mais en utilisant l'option "-f" (qui attend la nouvelle valeur de TTL), une nouvelle valeur du champ TTL peut être définie. Par exemple, j'ai essayé une opération traceroute normale, puis j'ai essayé une traceroute avec une valeur TTL différente.

$ traceroute google.com
traceroute to google.com (74.125.236.132), 30 hops max, 60 byte packets
1  220.224.141.129 (220.224.141.129)  89.181 ms  101.540 ms  101.503 ms
2  115.255.239.65 (115.255.239.65)  101.468 ms  101.431 ms  101.324 ms
3  124.124.251.245 (124.124.251.245)  121.373 ms  121.350 ms  158.694 ms
4  115.255.239.45 (115.255.239.45)  101.223 ms  141.135 ms  123.932 ms
5  72.14.212.118 (72.14.212.118)  123.867 ms  123.832 ms  123.802 ms
6  72.14.232.202 (72.14.232.202)  123.773 ms  123.742 ms  587.812 ms
7  216.239.48.179 (216.239.48.179)  587.723 ms  587.681 ms  587.642 ms
8  bom03s02-in-f4.1e100.net (74.125.236.132)  577.548 ms  577.524 ms  587.512 ms

$ traceroute google.com -f 8
traceroute to google.com (74.125.236.129), 30 hops max, 60 byte packets
8  bom03s02-in-f1.1e100.net (74.125.236.129)  96.961 ms  96.886 ms  96.849 ms

Nous voyons donc qu'après avoir utilisé l'option -f avec la valeur 8, seule la dernière (8e) ligne de la sortie précédente a été affichée.


Linux
  1. UNIX / Linux :10 exemples de commandes Netstat

  2. 10 exemples de commandes Xargs sous Linux / UNIX

  3. Exemples de commande "uname" pour vérifier la version UNIX/Linux

  4. Exemples de commandes sa sous Linux

  5. ac Exemples de commandes sous Linux

Commande Linux wc avec exemples

10 exemples de commandes iftop sous Linux

Commande Linux Traceroute, expliquée avec des exemples

16 exemples pratiques de la commande Traceroute sous Linux

15 exemples pratiques de commande Grep sous Linux / UNIX

Exemples de commandes id sous Linux