Come mostrare il ping fallito?

22

Quando usiamo il ping di Windows, mostreremo i ping falliti. Ubuntu ha una funzione simile?

Il ping fallito è abbastanza utile durante il debug della rete. Come lo risolvete voi ragazzi? Beh, voglio solo una soluzione semplice, non voglio ottenere un lungo script.

    
posta 王子1986 06.04.2013 - 09:29

5 risposte

0

Grazie per tutte le risposte. Sembra che l'ultimo ping di ubuntu possa mostrare il ping fallito.

Grazie ancora.

    
risposta data 王子1986 18.04.2013 - 06:22
21

La risposta corretta è: non esiste " failed lost ping". (Le risposte di errore come "Destinazione irraggiungibile" vengono sempre stampate, è diverso da nessuna risposta.)

L'utilità ping stampa tutte le risposte ricevute, anche se più tardi ha deciso che questo ping specifico è stato perso. È completamente possibile ricevere risposte fuori servizio.

Anche sul mio telefono Android, l'utility ping stock supporta queste 2 opzioni:
-D stampa un timestamp prima di ogni messaggio
-O stampa un messaggio quando la risposta non viene ricevuta in tempo, ed è più o meno ciò che è stato chiesto .
Tuttavia, queste opzioni non sembrano essere supportate ovunque (ad esempio, Debian Wheezy le manca per quanto ne so, mentre Jessie le ha.% Co_de% non le supporta)

Ecco un esempio di output che sono riuscito a ottenere (risposte ping non importanti saltate):

[email protected]:/ $ ping -D -O 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
[1440545014.805478] 64 bytes from 8.8.8.8: icmp_seq=1 ttl=244 time=116 ms
~~~~~~~~~~
[1440545142.995443] 64 bytes from 8.8.8.8: icmp_seq=129 ttl=244 time=110 ms
[1440545144.885601] no answer yet for icmp_seq=130
[1440545145.455485] 64 bytes from 8.8.8.8: icmp_seq=131 ttl=244 time=568 ms
[1440545145.455780] 64 bytes from 8.8.8.8: icmp_seq=130 ttl=244 time=1569 ms
[1440545146.005850] 64 bytes from 8.8.8.8: icmp_seq=132 ttl=244 time=119 ms
~~~~~~~~~~
[1440545254.055962] 64 bytes from 8.8.8.8: icmp_seq=240 ttl=244 time=115 ms
^C
--- 8.8.8.8 ping statistics ---
240 packets transmitted, 240 received, 0% packet loss, time 239250ms
rtt min/avg/max/mdev = 109.062/138.757/1569.620/101.608 ms, pipe 2

Nota come # 130 viene prima segnalato mancante, quindi ricevuto dopo # 131, e infine la perdita di pacchetti è segnalata come zero.

Nota aggiuntiva su Windows:

Su Windows, il ping sembra aspettare più a lungo la risposta, quindi dichiararlo mancante e ignorarlo se viene più tardi.

Per impostazione predefinita, l'intervallo è 1 secondo e il timeout è 4 secondi, quindi:
In caso di RTT basso, i ping verranno inviati con intervalli di 1 secondo.
In RTT & gt; 4, i ping verranno inviati con intervalli di 4 secondi (o 5, non sono sicuro) e verranno tutti segnalati come non riusciti, come se il server non rispondesse.

    
risposta data EvgEnZh 26.08.2015 - 03:49
6

Completare parzialmente la risposta di EvgEnZh, ma con la mia versione:

ping -O -q 8.8.8.8

Questo fa sì che stampi un messaggio quando una risposta impiega troppo tempo o non ritorna mai ( -O ) e sopprime i messaggi per quando ritornano ( -q ). Il risultato è che si ottiene solo l'output quando mancano i pacchetti. Questo può rendere molto più facile la ricerca di problemi intermittenti, in modo da non dover passare a una pila di messaggi "ha funzionato" per i pochi punti in cui è stata interrotta.

    
risposta data Azendale 18.10.2016 - 17:20
2

Forse ping -f è adatto a te. Dal comando ping:

% Bl0ck_qu0te%

Per 1 echo_request ogni secondo sembrerebbe ping -i 1 -f 8.8.8.8

    
risposta data Daniel Yuste Aroca 06.04.2013 - 11:46
0

Anche con l'opzione -v, il ping non lo fa. Vedi questa domanda . Ma se questo è veramente importante (o divertente) per te, puoi scaricare la fonte, modificare il codice per includere una chiamata printf adeguata. Un buon posto per farlo sarebbe alla fine del metodo 'send_probe' (riga 619 su 12.10) ...

Prima ottieni l'origine

apt-get source iputils
cd iputils*

Apporta modifiche

gedit ping.c

Crea e installa il pacchetto generato ...

apt-get install libsysfs-dev
dpkg-buildpackage
    
risposta data Rémi 17.04.2013 - 15:51

Leggi altre domande sui tag