Commande ping sous Linux (partie 1)

A quoi sert la commande ping et de quelle manière pouvons-nous l’utiliser sous Linux ?

D’après linux-ip.net, « The ping tool, designed to take advantage of Internet Control Message Protocol (ICMP), can be used to
test reachability of IP addresses. » soit « la commande ping, conçue pour tirer parti de l’ICMP, peut être utilisée pour tester la joignabilité d’une adresse IP ».

Le protocole ICMP (Internet Control Message Protocol) est un protocole qui permet de gérer les informations relatives aux erreurs aux machines connectées. Etant donné le peu de contrôles que le protocole IP réalise, il permet non pas de corriger ces erreurs mais de faire part de ces erreurs aux protocoles des couches voisines. Ainsi, le protocole ICMP est utilisé par tous les routeurs, qui l’utilisent pour signaler une erreur (appelé Delivery Problem). (extrait de commentcamarche.net.)

Nous allons comprendre comment fonctionne la commande ping via quelques exemples.

Tout d’abord, nous allons lancer une commande ping sans option.

ping localhost

Nous remarquons que nous sommes obligés d’arrêter la commande en tapant les touches Ctrl + C.

Un autre exemple en pinguant l’ip de la gateway, l’ip peut être obtenue de différentes manières, en tapant la commande netstat -rn.

Voyons maintenant quelques options de la commande ping.

Option -c :
-c count => le ping s’arrête après x paquets envoyés
Exemple :

ping -c 5 mon_IP

Le test s’arrête après l’envoi de 5 paquets.

Nous allons voir le message d’erreur que nous obtenons quand une adresse IP n’est pas joignable de notre réseau :

ping 10.170.100.200

L’erreur la plus significative est : 100% packet loss => 100% de paquets perdus.

Le code retour de l’erreur est 1, nous le savons en tapant echo $? juste après avoir tapé notre commande ping. Pour en savoir plus sur les codes retour, vous pouvez aller lire l’article sur le protocole ICMP sur commentcamarche.net.

Passons maintenant à l’option -R.

Option -R :
-R Record  route => Cela nous affiche les routes utilisées par le paquet envoyé à l’hôte.

Dans notre exemple, ping de la gateway, nous avons le chemin suivant :
monIP => gateway (chemin aller)
gateway => monIP (chemin retour)

ping -R IP_GW

Nous verrons plus tard comment tester la joignabilité d’un serveur quand le protocole ICMP est bloqué sur un serveur pour des raisons de sécurité. Nous analyserons aussi d’autres options de la commande ping.

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *