0 votes

Comment envoyer une requête ping à un hôte du réseau à intervalles réguliers ?

J'essaie de résoudre des problèmes de connectivité WiFi sur mon réseau domestique. J'ai un Macbook et un client de bureau Linux. Je voudrais exécuter ping sur les deux machines et comparer leurs résultats. Je suis à l'aise avec Linux, mais cette question concerne exclusivement le Macbook.

$ ping 192.168.0.1 | while read pong; do echo "[$(date +%s)] $pong"; done
...
[1596203814] 64 bytes from 192.168.1.254: icmp_seq=8900 ttl=64 time=9.800 ms
[1596203815] 64 bytes from 192.168.1.254: icmp_seq=8901 ttl=64 time=5.546 ms
[1596205241] Request timeout for icmp_seq 8902
[1596205241] 64 bytes from 192.168.1.254: icmp_seq=8903 ttl=64 time=26.988 ms
[1596205242] 64 bytes from 192.168.1.254: icmp_seq=8904 ttl=64 time=4.397 ms
...

Comme vous pouvez le voir sur les horodatages, il y a un écart de plus de 20 minutes à un moment donné. J'ai laissé l'installation fonctionner pendant 3 heures et cela s'est produit à 5 occasions différentes. Le Macbook était verrouillé avec Amphetamine en cours d'exécution, le couvercle était fermé mais un écran externe était connecté via un hub USB-C avec sortie HDMI. Je ne pense pas que le Macbook puisse se mettre en veille dans ces circonstances.

Quelqu'un peut-il me dire comment réparer mon installation pour qu'elle envoie des ping à intervalles réguliers, sans grand écart ?

0 votes

L'écart de 20 minutes est difficilement perceptible avec le format de date choisi (voir l'onglet --apple-time ), mais il semble que cela se produise en même temps que l'expiration du délai de la demande. L'écart et le délai d'attente se produisent-ils toujours en même temps ? Si vous exécutez une while sleep 10; do date; done dans une fenêtre séparée, est-elle interrompue au même moment que la boucle de ping ?

0 votes

Exécutez la même commande dans un second terminal, mais avec echo au lieu de ping. Vous verrez alors si l'écart est dû au réseau ou au système.

0 votes

Inonder votre réseau de paquets ICMP n'est pas un moyen de déboguer les problèmes liés au WiFi. Vous avez besoin d'un analyseur de réseau approprié. Le problème, c'est que lorsqu'un appareil traite un trafic légitime (c'est-à-dire les applications de votre Mac qui se mettent à jour), votre ping peut être retardé, ce qui vous fait croire qu'il y a un problème de réseau alors qu'il n'y en a pas.

1voto

DanO Points 1173

Le Macbook était verrouillé avec Amphetamine en cours d'exécution, le couvercle était fermé mais un écran externe était connecté via un hub USB-C avec sortie HDMI. Je ne crois pas que le Macbook puisse se mettre en veille dans ces circonstances.

Je n'en serais pas si sûr. Vérifiez simplement la sortie de pmset -g log | grep "Display is turned off" - si c'est arrivé quand le ping a été interrompu, le Mac s'est endormi. Je trouve les Macbooks particulièrement têtus lorsque le chargeur est débranché. Notez également que si l'écran externe a été éteint, ou commuté sur une autre entrée, cela peut aussi être parfois détecté (cela dépend du modèle/de la connexion, je suppose), donc cela pourrait aussi déclencher la mise en veille.

Il n'y a pas d'interrupteur magique pour ping pour émettre régulièrement des demandes d'écho - il le fait par défaut.

0 votes

Excellente réponse, merci. Le chargeur était connecté, mais j'ai changé la source d'entrée sur le moniteur et c'était le problème. Il fonctionne si je laisse le couvercle ouvert.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X