Linux 'ping' - Zeigt an, wann ein Timeout auftritt?

2866
Dario

Gibt es eine Möglichkeit, die Linux-Implementierung von 'ping' so zu gestalten, dass sie sich wie die Windows-Implementierung so verhält, wie sie angezeigt wird, wenn ein Timeout auftritt. Ich möchte nicht, dass es beendet wird, sondern nur eine Timeout-Nachricht.

Wir haben einige Netzwerkprobleme im Unternehmen und ich würde gerne "Ping" über Nacht arbeiten lassen und dann durchgehen, um zu sehen, ob und wann Timeouts aufgetreten sind.

2

2 Antworten auf die Frage

1
Tadeusz A. Kadłubowski

Wie wäre es mit so etwas

ping -c 1 -t 10 > /dev/null || date 

in einer Endlosschleife, die die ganze Nacht läuft?

0
Sabrina

Wenn Sie nur die Uhrzeit sehen möchten, zu der das Timeout auftritt, verwenden Sie diesen Code

while :; do ping -c 1 -t 1 192.168.0.254 > /dev/null && sleep 1 || echo "`date` >>> Request timed out"; done 

Beispiel

192.168.0.1 reagiert auf Ping, 192.168.0.254 nicht

[user@Linux ~]$ while :; do ping -c 1 -t 1 192.168.0.1 > /dev/null && sleep 1 || echo "`date` >>> Request timed out"; done ^Z [28]+ Stopped sleep 1 [user@Linux ~]$   [user@Linux ~]$ while :; do ping -c 1 -t 1 192.168.0.254 > /dev/null && sleep 1 || echo "`date` >>> Request timed out"; done Wed Jan 3 03:51:23 GMT 2018 >>> Request timed out Wed Jan 3 03:51:24 GMT 2018 >>> Request timed out Wed Jan 3 03:51:25 GMT 2018 >>> Request timed out ^Z [30]+ Stopped ping -c 1 -t 1 192.168.0.254 >/dev/null [user@Linux ~]$  

Wenn Sie fortlaufendes Ping wie Fenster und mit Zeitstempel durchführen möchten, verwenden Sie dieses. Fühlen Sie sich frei, durch 192.168.0.1Ihre eigene IP-Adresse zu ersetzen

while :; do ping -c 1 -t 1 192.168.0.1 > /dev/null && echo "`date` >>> Reply OK" && sleep 1 || echo "`date` >>> Request timed out"; done 

Beispielantwort OK

[user@Linux ~]$ while :; do ping -c 1 -t 1 192.168.0.1 > /dev/null && echo "`date` >>> Reply OK" && sleep 1 || echo "`date` >>> Request timed out"; done Wed Jan 3 03:41:49 GMT 2018 >>> Reply OK Wed Jan 3 03:41:50 GMT 2018 >>> Reply OK Wed Jan 3 03:41:51 GMT 2018 >>> Reply OK ^Z [23]+ Stopped sleep 1 [user@Linux ~]$ 

Beispiel für Zeitüberschreitung bei Anforderung

[user@Linux ~]$ while :; do ping -c 1 -t 1 192.168.0.254 > /dev/null && echo "`date` >>> Reply OK" && sleep 1 || echo "`date` >>> Request timed out"; done Wed Jan 3 03:41:36 GMT 2018 >>> Request timed out Wed Jan 3 03:41:37 GMT 2018 >>> Request timed out Wed Jan 3 03:41:38 GMT 2018 >>> Request timed out ^Z [22]+ Stopped ping -c 1 -t 1 192.168.0.254 >/dev/null [user@Linux ~]$