Il mio comando Ping sembra non finire mai. Significa che sta succedendo?


10

Sto eseguendo il ping di un IP remoto. So molto poco del comando Ping. Quando eseguo il ping dell'IP, continua a funzionare ... Non sto usando l' opzione -t .

Me$ ping 137.30.124.104
PING 137.30.124.104 (137.30.124.104): 56 data bytes
64 bytes from 137.30.124.104: icmp_seq=0 ttl=62 time=3.378 ms
64 bytes from 137.30.124.104: icmp_seq=1 ttl=62 time=3.825 ms
64 bytes from 137.30.124.104: icmp_seq=2 ttl=62 time=4.882 ms
64 bytes from 137.30.124.104: icmp_seq=3 ttl=62 time=1.822 ms
64 bytes from 137.30.124.104: icmp_seq=4 ttl=62 time=4.572 ms
....
64 bytes from 137.30.124.104: icmp_seq=290 ttl=62 time=3.273 ms

Significa che sta eseguendo correttamente il ping dell'IP? O che sta provando, fallendo e riprovando? Come faccio a farlo smettere?


4
Sì, esegue correttamente il ping. Puoi fermarlo con Ctrl-C.
Faheem Mitha,

7
Unix-like pingnon si ferma come windowsper impostazione predefinita.
Gilles Quenot,

@sputnick sì, questo era ciò che mi confondeva
bernie2436,

Guarda come puoi controllarlo nella mia risposta!
slm

Risposte:


17

Ecco come funziona il comando ping. È possibile controllarlo utilizzando l'interruttore di conteggio, -c.

Esempio

$ ping -c 2 skinner
PING skinner.bubba.net (192.168.1.3) 56(84) bytes of data.
64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=1 ttl=64 time=1.00 ms
64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=2 ttl=64 time=1.13 ms

--- skinner.bubba.net ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 1.001/1.069/1.138/0.075 ms

Ripartizione dell'output

Linee come questa indicano che sta eseguendo correttamente il ping dell'altro host:

64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=2 ttl=64 time=1.13 ms

Queste righe mostrano i dettagli su ogni "ping" che si verifica tra l'host e l'host che si sta tentando di eseguire il ping.

6a colonna

La colonna che contiene questo valore icmp_req=2indica quale pacchetto ICMP riguarda. Il pingcomando produce pacchetti di rete. Esistono molti tipi, probabilmente hai sentito parlare di pacchetti TCP o forse UDP. Un altro tipo è ICMP. ICMP è simile agli SMS nelle reti di telefonia cellulare. Il suo scopo principale è il comando e il controllo sulla rete.

7a colonna

La terza colonna che è interessante è la TTL=64. TTL - "aka. Time to Live", significa che il pacchetto attraverserà al massimo 64 nodi prima del timeout. Quindi se il sistema si trova a più di 64 "hop" di distanza dal sistema, non è possibile eseguire il ping, a meno che non si aumenti il ​​TTL.

8a colonna

Questa colonna mostra quanto tempo, nel tempo, ha avuto luogo il ping (in millisecondi). Questa sarebbe la colonna che assomiglia a questo: time=1.13 ms.

Le altre colonne sono abbastanza autoesplicative.

Versioni di ping

pingComandi diversi sono implementati in modo diverso nei vari Unix. Quindi è necessario prestare attenzione alla versione.

$ ping -V
ping utility, iputils-sss20100418

Sono su un Fedora 14, sistema Linux.


1

La risposta di slm è ottima, ma se vuoi solo verificare rapidamente se un host è vivo (e raggiungibile e risponde al ping) allora puoi usare fpinginvece di ping. Esegue il ping degli host e attende brevemente una risposta. fpingIl codice di uscita segnala il successo o il fallimento.

per esempio

cas @ ganesh: ~ $ fping kali
Kali è vivo
cas @ ganesh: ~ $ echo $?
0

cas @ ganesh: ~ $ fping durga 
Host ICMP non raggiungibile da 203.xx.xxx.1 per l'eco ICMP inviato a durga (203.xx.xxx.14)
Host ICMP non raggiungibile da 203.xx.xxx.1 per l'eco ICMP inviato a durga (203.xx.xxx.14)
Host ICMP non raggiungibile da 203.xx.xxx.1 per l'eco ICMP inviato a durga (203.xx.xxx.14)
Host ICMP non raggiungibile da 203.xx.xxx.1 per l'eco ICMP inviato a durga (203.xx.xxx.14)
durga è irraggiungibile
cas @ ganesh: ~ $ echo $?
1

I messaggi 'Host non raggiungibile dall'ICMP' possono essere scartati reindirizzando stderr su / dev / null. Per esempio:

cas@ganesh:~$ fping durga 2>/dev/null 
durga is unreachable
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.