Comando Linux · 4 min read · Sep 19, 2025
Tutorial sul comando ping di Linux per principianti (8 esempi)
Indipendentemente dal tipo di utente Linux che sei (principiante o esperto), ci sono alcuni strumenti di cui devi essere a conoscenza. Una di queste utility è Ping. In questo tutorial, discuteremo le basi di questo strumento utilizzando alcuni esempi facili da comprendere. Ma prima di farlo, vale la pena menzionare che tutti gli esempi nell’articolo qui sono stati testati su una macchina Ubuntu 16.04 LTS.
Comando ping di Linux
In termini molto semplici, il comando ping ti consente di controllare se un host remoto è attivo e risponde. Di seguito è riportata la sintassi dello strumento:
ping [OPTIONS] destinazioneEcco come la pagina man lo spiega:
ping utilizza il datagramma ECHO_REQUEST obbligatorio del protocollo ICMP per sollecitare
una risposta ICMP ECHO_RESPONSE da un host o gateway. I datagrammi ECHO_REQUEST
(``ping'') hanno un'intestazione IP e ICMP, seguita da una struct timeval
e poi un numero arbitrario di byte ``pad'' utilizzati per riempire il
pacchetto.
ping6 è la versione IPv6 di ping e può anche inviare Query di Informazioni sul Nodo
(RFC4620). I salti intermedi potrebbero non essere consentiti, perché
il routing sorgente IPv6 è stato deprecato (RFC5095).Di seguito sono riportati alcuni esempi in stile Q&A che dovrebbero darti una buona idea di come funziona il comando ping.
D1. Come utilizzare il comando ping?
L’uso di base è abbastanza semplice: basta eseguire il comando ‘ping’ con la destinazione come input.
Ad esempio:
ping howtoforge.comDi seguito è riportato il risultato di questo comando prodotto sul mio sistema:

Nota che per impostazione predefinita, il comando continuerà a essere eseguito fino a quando non lo interrompi tramite Ctrl+C.
D2. Come cambiare l’intervallo di tempo tra i pacchetti ping?
Per impostazione predefinita, c’è un intervallo di un secondo tra i pacchetti ping. Tuttavia, se lo desideri, puoi personalizzare questo ritardo utilizzando l’opzione della riga di comando -i.
Ad esempio, il seguente comando assicura che ci sia un intervallo di 3 secondi:
ping -i 3 howtoforge.comE il seguente comando invia pacchetti con un ritardo di mezzo secondo.
ping -i 0.5 howtoforge.comNota che solo l’utente super può impostare l’intervallo a valori inferiori a 0,2 secondi.
D3. Come cambiare la dimensione del pacchetto ping?
Per impostazione predefinita, il numero di byte in un pacchetto ping è 56 (64 se includi 8 byte di intestazione ICMP). Tuttavia, se lo desideri, puoi cambiare questo valore, cosa che puoi fare utilizzando l’opzione della riga di comando -s.
Ad esempio, per inviare un pacchetto di 80 byte (88 inclusi l’intestazione ICMP), usa il seguente comando:
ping -s 80 howtoforge.comD4. Come fare in modo che ping invii un numero impostato di pacchetti?
Il comportamento predefinito di ping è continuare a inviare pacchetti fino a quando non viene interrotto dall’utente. Tuttavia, se lo desideri, puoi forzare ping a smettere di eseguire dopo aver inviato un numero impostato di pacchetti. Questo puoi farlo utilizzando l’opzione della riga di comando -c.
Ad esempio, il seguente comando invierà 3 pacchetti e poi si fermerà.
ping -c 3 howtoforge.comD5. Come avviare un’inondazione di pacchetti utilizzando ping?
Sì, il comando ping offre anche un’opzione per avviare un’inondazione di pacchetti. Questo puoi farlo utilizzando l’opzione della riga di comando -f.
ping -f howtoforge.comEcco cosa dicono i documenti ufficiali su questa opzione:
Per ogni ECHO_REQUEST inviato viene stampato un punto ``.''
mentre per ogni ECHO_REPLY ricevuto viene stampato un backspace.
Questo fornisce una visualizzazione rapida di quanti pacchetti vengono
persi. Se l'intervallo non è fornito, imposta l'intervallo a
zero e restituisce i pacchetti non appena tornano o cento volte
al secondo, a seconda di quale sia maggiore. Solo l'utente super
può utilizzare questa opzione con intervallo zero.D6. Come fare in modo che ping stampi un timestamp prima di ogni riga?
C’è un’opzione (-D) che ti consente di farlo. Il timestamp stampato è una combinazione di tempo unix e microsecondi (come in gettimeofday).
ping -D howtoforge.comEcco uno screenshot di questa opzione in azione:
D7. Come impostare un timeout rigido per ping?
Puoi specificare una scadenza temporale per l’uscita di ping. Questo puoi farlo utilizzando l’opzione della riga di comando -w che richiede un valore numerico che rappresenta il numero di secondi.
Ad esempio, il seguente comando ping si fermerà dopo 3 secondi:
ping -w 3 howtoforge.comEcco come i documenti ufficiali spiegano questa opzione:
Specifica un timeout, in secondi, prima che ping esca indipendentemente
da quanti pacchetti siano stati inviati o ricevuti. In questo caso, ping
non si ferma dopo che sono stati inviati pacchetti contati, aspetta
che scada la scadenza o fino a quando i pacchetti contati vengono
risposti o per qualche notifica di errore dalla rete.D8. Come impostare un timeout morbido per ping?
Mentre l’opzione -w assicura che ping si fermi in ogni caso dopo che la scadenza è scaduta, c’è un’altra opzione (-W, in maiuscolo) che fa sì che ping si fermi ma solo quando non c’è risposta dal lato di destinazione.
ping -W 3 howtoforge.comEcco come la pagina man spiega il comportamento in questo caso:
Tempo da attendere per una risposta, in secondi. L'opzione influisce solo
sul timeout in assenza di risposte, altrimenti ping aspetta per due RTT.Conclusione
Ping è uno strumento importante che viene quasi certamente utilizzato per il debug di problemi legati alla rete. In questo tutorial, abbiamo discusso alcune delle principali caratteristiche (opzioni della riga di comando) di questa utility. Esercitati con queste, e una volta terminato, vai alla pagina man dello strumento per saperne di più.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.