- ping (logiciel)
-
Pour les articles homonymes, voir Ping.
Ping est le nom d'une commande informatique permettant de tester l'accessibilité d'une autre machine à travers un réseau IP. La commande mesure également le temps mis pour recevoir une réponse, appelé round-trip time (temps aller-retour).
Ping utilise une requête ICMP Echo et attend une réponse Echo reply. L'envoi est répété pour des fins statistiques : déterminer le taux de paquet perdu et le délai moyen. Si d'autres messages ICMP sont reçus de la part de routeurs intermédiaires (comme TTL exceeded, Fragmentation needed, administratively prohibited...), ils sont affichés à l'écran. Quand le paramètre TTL (Time to Live) est affiché, il permet d'estimer le nombre de routeurs intermédiaires.
Un délai élevé et variable ou un taux de paquet perdu non nul peut s'expliquer par un problème de congestion dans le réseau, un problème de qualité sur un lien ou un problème de performance affectant le système cible.
Des options de ping permettent d'effectuer le test avec des tailles de paquets variables et de le répéter un certain nombre de fois. Il est parfois possible de lancer de nombreux paquets sans attendre de réponse (flood ping), ce qui peut constituer une attaque par déni de service si la machine de destination ou le réseau intermédiaire est submergé.
Certains pare-feux bloquent les paquets ICMP Echo, rendant la commande inopérante.
Sommaire
Histoire
Mike Muuss a écrit ce programme en décembre 1983 pour déboguer un comportement anormal sur réseau IP. Le nom est tiré de l'onomatopée décrivant le son émis par un sonar puisque leur action est similaire (émission d'un signal qui vient rebondir sur une cible pour revenir à l'envoyeur). Par la suite, David L. Mills a fourni un rétro-acronyme : « Packet InterNet Groper ».
Exemples
Exemple de ping sous Windows, vers l'adresse IP du serveur DNS de Wikipédia :
C:\>ping 66.230.200.16 Pinging 66.230.200.16 avec 32 octets de données : Réponse de 66.230.200.16 : octets=32 temps<10ms TTL=255 Réponse de 66.230.200.16 : octets=32 temps<10ms TTL=255 Réponse de 66.230.200.16 : octets=32 temps<10ms TTL=255 Réponse de 66.230.200.16 : octets=32 temps<10ms TTL=255
Exemple de ping sous Linux, vers fr.wikipedia.org :
$ ping fr.wikipedia.org PING r, r.knams.wikimedia.org (145.97.39.137): 56 data bytes 64 bytes from 145.97.39.137: icmp_seq=0 ttl=53 time=51.9 ms 64 bytes from 145.97.39.137: icmp_seq=1 ttl=53 time=16.9 ms 64 bytes from 145.97.39.137: icmp_seq=2 ttl=53 time=16.7 ms --- rr.knams.wikimedia.org ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 16.7/28.5/51.9 ms
fping est similaire à ping et dispose d'options supplémentaires et permet de tester de nombreuses cibles simultanément.
Exemple de (f)ping(6) sous Linux, vers une adresse IPv6 :
$ fping6 fe80::211:d8ff:fe25:2092 fe80::211:d8ff:fe25:2092 is alive
Autre exemple de (f)ping(6) sous Linux, vers une adresse IPv6 :
$ fping6 -c 2 -e fe80::211:d8ff:fe25:2092 fe80::211:d8ff:fe25:2092 : [0], 64 bytes, 0.06 ms (0.06 avg, 0% loss) fe80::211:d8ff:fe25:2092 : [1], 64 bytes, 0.06 ms (0.06 avg, 0% loss) fe80::211:d8ff:fe25:2092 : xmt/rcv/%loss = 2/2/0%, min/avg/max = 0.06/0.06/0.06
Autres utilisations du terme
Le terme ping est parfois utilisé comme synonyme de Round trip time dans le jeu en ligne. Dans les jeux fortement interactifs, un délai élevé (désigné par lag ou latence) peut constituer un désavantage pour un joueur.
Certains autres protocoles de la couche application utilisent le nom ping quand il s'agit de déterminer un délai avec une cible. Sur la plupart des clients IRC par exemple, la commande /ping pour connaître le temps de réponse d'un utilisateur ou d'un salon de discussion.
Voir aussi
Articles connexes
Liens externes
- (fr) Réaliser des pings directement en ligne
- (fr) Le Man linux de la commande PING
- (en) Site pour effectuer des ping entre autres choses
- (en) The Story of the PING Program par Mike Muuss
- (en) Online Ping
Catégories :- Logiciel d'analyse du réseau informatique
- Logiciel libre de sécurité informatique
Wikimedia Foundation. 2010.