Introduzione

Il comando ping è uno degli strumenti più comuni e utili per il networking. Viene utilizzato per testare la connettività, misurare la latenza e rilevare la perdita di pacchetti tra un dispositivo e l’altro. Il suo funzionamento si basa sull’Internet Control Message Protocol (ICMP), che opera a livello di rete del modello OSI.

Quando un utente esegue il comando, il computer invia un pacchetto ICMP Echo Request all’host di destinazione. Questo pacchetto contiene un timestamp e un numero di sequenza. Se il dispositivo di destinazione è raggiungibile, risponde con un pacchetto ICMP Echo Reply. Confrontando l’ora di invio della richiesta e l’ora di ricezione della risposta, il programma calcola il tempo di andata e ritorno, noto anche come latenza. Durante questo processo, ping mostra informazioni dettagliate come la dimensione del pacchetto, il numero di sequenza, il valore time-to-live che indica il numero di hop rimanenti e il tempo di risposta misurato. Al termine dell’esecuzione, il comando riassume i risultati riportando il numero di pacchetti inviati e ricevuti, la percentuale di perdita di pacchetti e la latenza media.

Lo stack di rete del sistema operativo svolge un ruolo importante in questo processo. La richiesta ICMP viene passata al livello IP del kernel, dove viene incapsulata in un pacchetto IP e inviata attraverso la rete. Quando arriva una risposta, il kernel la restituisce al processo di ping nello spazio utente. Il programma interpreta la risposta, calcola statistiche come il tempo medio di andata e ritorno e la perdita di pacchetti e visualizza i risultati in un formato leggibile.

Perché il comando Ping è assente?

Diversi motivi possono causare la mancata disponibilità del comando ping in Ubuntu:

  1. Installazione minimale – Se avete installato Ubuntu utilizzando l’opzione “Installazione minimale”, gli strumenti di rete essenziali come ping potrebbero non essere inclusi di default.
  2. Installazione corrotta o incompleta – Gli aggiornamenti del sistema o la rimozione di pacchetti potrebbero aver accidentalmente disinstallato ping.
  3. Problemi di permessi – In alcuni casi, i permessi impropri possono limitare l’accesso ad alcune utilità di sistema.

Come installare Ping in Ubuntu

Il comando ping è fornito dal pacchetto iputils-ping in Ubuntu. Per installarlo, seguite i passaggi seguenti.

Passo 1: Aggiornare l’elenco dei pacchetti

Prima di installare qualsiasi software, è sempre una buona idea aggiornare l’elenco dei pacchetti del sistema per assicurarsi di ottenere l’ultima versione dei pacchetti disponibili:

sudo apt update

Passo 2: installare iputils-ping

Ora installate il pacchetto che include il comando ping:

sudo apt install iputils-ping -y 
  • sudo: Esegue il comando con i privilegi di amministratore (root).
  • apt install: Utilizza il gestore di pacchetti APT (su sistemi basati su Debian/Ubuntu) per installare il software.
  • iputils-ping: Il pacchetto specifico che viene installato. Fornisce l’utilità ping, utilizzata per testare la connettività della rete inviando richieste di echo ICMP a un host.
  • y: Risponde automaticamente “sì” a tutte le richieste durante l’installazione, in modo che il processo venga eseguito senza chiedere conferma.

Questo comando scarica e installa iputils-ping insieme a tutte le dipendenze.

Passo 3: Verificare l’installazione

Dopo l’installazione, verificare che ping sia ora disponibile eseguendo:

ping -V
Se tutti i pacchetti sono stati installati correttamente, dovrebbe essere visualizzato il seguente messaggio:

Metodi alternativi per installare Ping

Se il metodo predefinito non funziona, ecco alcuni approcci alternativi:

1. Installare usando Snap (se applicabile)

Alcune distribuzioni minimali di Ubuntu non includono apt per impostazione predefinita. Se Snap è installato sul vostro sistema, potete installare ping usando:

sudo snap install iputils

2. Utilizzare BusyBox

BusyBox è un’alternativa leggera che include diverse utilità Unix, tra cui ping. Installatelo usando:

sudo apt install busybox

Quindi, eseguire:

busybox ping google.com

Questo confermerà che il ping è disponibile tramite BusyBox.

Errori comuni e correzioni

1. “Ping: autorizzazione negata”

Se si riceve un errore di autorizzazione, il problema potrebbe essere dovuto a restrizioni di sicurezza. Provate a eseguire:

sudo chmod u+s /bin/ping

Questo imposta i permessi corretti per consentire agli utenti non root di usare ping.

2. “Pacchetto non trovato”

Se Ubuntu non riesce a trovare il pacchetto iputils-ping, assicuratevi che i sorgenti del vostro repository siano aggiornati:

sudo apt update && sudo apt upgrade

Se il problema persiste, controllare l’elenco dei sorgenti in /etc/apt/sources.list.

Quando usare il comando Ping

1. Controllare la connettività a Internet

ping google.com
  • Motivo: Per verificare se il computer è in grado di raggiungere i server di Google.
  • Se si ottengono risposte, si sa che la connessione a Internet funziona.

2. Prova di connessione a un dispositivo locale

ping 192.168.1.1
  • Motivo: Per verificare se il router o il gateway è raggiungibile nella rete locale.
  • Utile per risolvere problemi di Wi-Fi o LAN.

3. Misurare la latenza (tempo di risposta)

ping avahost.com
  • Motivo: Per verificare quanto tempo impiegano i pacchetti di dati a raggiungere l’host e a tornare indietro.
  • Bassa latenza = connessione più veloce (importante per i giochi, le videochiamate, ecc.).

4. Rilevare la perdita di pacchetti

ping -c 5 avahost.com
  • Motivo: Invia 20 richieste e mostra le statistiche sui pacchetti persi.
  • Se si nota una perdita di pacchetti, ciò indica una connessione cattiva o instabile.