Plus facile à lire avec un fond crème, une teinte, plus de contraste ou un texte plus grand ? Choisissez vos couleurs et votre texte, une fois pour toutes les pages.

Leçon gratuite

Trouver la panne avec ping et traceroute

La leçon entière est à lire ici. Créez un compte gratuit pour lancer ses commandes dans un laboratoire et passer ses quiz et ses exercices.

Leçon de 50 minAucune commande

« Internet ne marche plus »

Mardi, 14 h. Le service logistique d'un entrepôt près de Lille ne peut plus envoyer ses bons de livraison. Le ticket dit seulement : « Internet ne marche plus. »

Le problème peut venir du poste, de la box, de l'opérateur ou du serveur du transporteur. Deux commandes suffisent souvent pour savoir où chercher. Un technicien support s'en sert tous les jours.

À la fin de cette leçon

Remarque

Je peux utiliser la sortie de ping et de traceroute pour trouver où une connexion échoue.

Mots clés

MotCe que ça veut direExemple
pingune commande qui demande à une machine de répondre
Latencele temps d’un aller-retour, en millisecondes2.1 ms
Perte de paquetsla part des messages qui ne reviennent pas25 %
Sautun routeur traversé sur le chemin
tracerouteune commande qui liste les sauts jusqu’à une machine

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

ping demande : êtes-vous là ?

La commande ping envoie quelques petits messages à une adresse et attend la réponse.

Chaque réponse donne la latence, le temps d'un aller-retour. À la fin, ping fait le compte : envoyés, reçus, et le pourcentage de perte. 0 % de perte, c'est sain. 100 % de perte, rien ne revient. Entre les deux, la ligne est instable.

Vraie sortie de ping

Code: bash
$ ping -c 4 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=2.1 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=1.9 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=2.6 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=64 time=2.2 ms

--- 192.168.1.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms

$ ping -c 4 203.0.113.25
PING 203.0.113.25 (203.0.113.25) 56(84) bytes of data.

--- 203.0.113.25 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3062ms

Une erreur fréquente

Attention

Beaucoup pensent qu'un serveur qui ne répond pas au ping est en panne. Beaucoup de serveurs et de pare-feu bloquent ping exprès. Avant de conclure, testez le vrai service, par exemple le site sur le port 443.

On teste du plus proche au plus loin

Un bon diagnostic avance pas à pas, en partant du poste. D'abord, lancez ping vers la passerelle. Si elle ne répond pas, le problème est local : câble, Wi-Fi ou box.

Ensuite, lancez ping vers une adresse publique connue. Si elle répond, internet fonctionne. Enfin, testez le nom du site. Si l'adresse marche mais pas le nom, c'est le DNS.

Lire le résultat de chaque étape

TestRésultatCe que cela veut dire
ping 192.168.1.1 (la box)Pas de réponseProblème local : câble, Wi-Fi ou box
ping 9.9.9.9 (adresse publique)Pas de réponseLa box ne sort pas : voir l'opérateur
ping transporteur.exampleNom inconnuProblème de DNS
ping 203.0.113.25 (le serveur)100 % de perteLancer traceroute pour voir où ça coupe

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

traceroute montre le chemin

Un message traverse plusieurs routeurs avant d'arriver. Chacun est un saut.

La commande traceroute liste les sauts dans l'ordre, avec leur adresse et leur latence. Une ligne * * * veut dire que ce saut n'a pas répondu. Si toutes les lignes suivantes sont des étoiles, la coupure est juste après le dernier saut qui répond.

Vraie sortie de traceroute

Code: bash
$ traceroute 203.0.113.25
traceroute to 203.0.113.25 (203.0.113.25), 30 hops max, 60 byte packets
 1  192.168.1.1     2.3 ms   2.1 ms   2.0 ms
 2  198.51.100.1    9.8 ms  10.1 ms   9.7 ms
 3  198.51.100.65  14.2 ms  13.9 ms  14.5 ms
 4  * * *
 5  * * *
 6  * * *

La même sortie, saut par saut

SautAdresseLatenceLecture
1192.168.1.12 msLa box de l'entrepôt répond
2198.51.100.110 msLe premier routeur de l'opérateur répond
3198.51.100.6514 msDernier saut qui répond
4 à 6* * *aucuneCoupure après le saut 3

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Essayez : trouver le dernier saut

Code: bash
# Une copie de la sortie de traceroute, enregistrée dans un fichier
printf '%s\n' " 1  192.168.1.1  2.3 ms" " 2  198.51.100.1  9.8 ms" " 3  198.51.100.65  14.2 ms" " 4  * * *" " 5  * * *" > trace.txt

# grep -v garde les lignes SANS étoiles, tail -n 1 garde la dernière
grep -v '[*] [*] [*]' trace.txt | tail -n 1

# Remplacez "tail -n 1" par "wc -l" pour compter les sauts qui répondent, puis cliquez sur Exécuter.

Vous enseignez à une classe ? Proposez ce module à vos étudiants avec un guide de l'enseignant, des devoirs corrigés et un laboratoire pour chaque étudiant.