Lorsque le ping de Windows affiche "Request timed out.", ce n'est pas une erreur en soi. Microsoft a arbitrairement choisi un délai d'attente de 4 secondes, après quoi ils considèrent "l'échec" et le signalent. Si vous deviez faire un ping depuis Mars, ce serait une fausse alerte garantie, mais même sur Terre, un RTT (temps aller-retour) de plus de 4 secondes est parfaitement possible. Le délai d'attente est configurable avec un commutateur /w
.
Sous Linux, l'utilitaire ping ne considère pas que le délai est un échec et n'attend pas de réponse. Normalement, il affiche immédiatement et tel quel, toutes les réponses reçues, y compris les "retardataires", les réponses hors séquence, les doublons et les réponses en conflit (par exemple, une réponse valide après "Destination unreachable").
Cela étant dit, il y a généralement des options pour voir quand une réponse n'est pas reçue trop longtemps. Même sur mon téléphone Android, l'utilitaire ping par défaut prend en charge ces 2 options :
-D
affiche une horodatage avant chaque message, rendant les écarts plus faciles à repérer.
-O
affiche un message lorsque la réponse n'est pas reçue avant d'envoyer le ping suivant, et c'est plus ou moins ce qui était demandé. Le "délai d'attente" est fixé à l'intervalle de ping (-i
), cependant.
Cependant, ces options ne semblent pas être prises en charge partout (par exemple, Debian Wheezy ne les prend pas en charge autant que je sache, tandis que Jessie les prend en charge. busybox ping
ne les prend pas encore en charge).
Voici un exemple de sortie que j'ai réussi à obtenir (les réponses de ping non importantes ont été ignorées) :
u0_a93@NX505J:/ $ ping -D -O 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) octets de données.
[1440545014.805478] 64 octets de 8.8.8.8: icmp_seq=1 ttl=244 temps=116 ms
~~~~~~~~~~
[1440545142.995443] 64 octets de 8.8.8.8: icmp_seq=129 ttl=244 temps=110 ms
[1440545144.885601] pas encore de réponse pour icmp_seq=130
[1440545145.455485] 64 octets de 8.8.8.8: icmp_seq=131 ttl=244 temps=568 ms
[1440545145.455780] 64 octets de 8.8.8.8: icmp_seq=130 ttl=244 temps=1569 ms
[1440545146.005850] 64 octets de 8.8.8.8: icmp_seq=132 ttl=244 temps=119 ms
~~~~~~~~~~
[1440545254.055962] 64 octets de 8.8.8.8: icmp_seq=240 ttl=244 temps=115 ms
^C
--- 8.8.8.8 statistiques ping ---
240 paquets envoyés, 240 reçus, 0% perte, temps 239250ms
rtt min/moy/max/mdev = 109.062/138.757/1569.620/101.608 ms, pipe 2
Remarquez comment le n°130 est d'abord signalé "manquant", puis reçu après le n°131, et enfin la perte de paquets est signalée comme étant nulle. Le ping de Windows ne donnerait jamais un tel résultat : il attendrait une réponse ou un délai d'attente et enverrait ensuite le ping suivant, ignorant toutes les réponses tardives ou non premières.