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=2
indica quale pacchetto ICMP riguarda. Il ping
comando 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
ping
Comandi 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.