Verifica della velocità di connessione con iperf
iperf3 è uno strumento gratuito che misura il throughput di rete tra due computer. A differenza degli speed test nel browser, consente di scegliere entrambi gli estremi del test: il proprio server e un server iperf3 pubblico, oppure due server di proprietà. iperf3 funziona su Linux e Windows e può misurare il throughput in entrambe le direzioni.
Installazione di iperf3
Linux
Su Ubuntu e Debian:
sudo apt update sudo apt install -y iperf3
Su AlmaLinux e Rocky Linux:
sudo dnf install -y iperf3
Su Ubuntu e Debian, il programma di installazione potrebbe chiedere se avviare iperf3 come demone. Selezionare No. Per i test descritti in questa guida non è necessario un server iperf3 in esecuzione permanente.
Windows e Windows Server
Nella pagina di download di iPerf sono elencate build di iperf3 per Windows realizzate da terze parti. Ad esempio, aprire la pagina delle release di iperf3-win-builds su GitHub e, nell'ultima release, scaricare l'archivio denominato iperf-<version>-win64.zip, ad esempio iperf-3.22-win64.zip. Estrarre l'archivio. Spostare i file dalla cartella estratta, incluso iperf3.exe, in una cartella con un percorso breve, ad esempio C:\iperf3.
Aprire il Prompt dei comandi e passare a questa cartella:
cd C:\iperf3
In Windows, eseguire i comandi di questa guida con iperf3.exe al posto di iperf3.

Test della velocità con un server iperf3 pubblico
Per testare la connessione del proprio server, eseguire iperf3 in modalità client verso un server iperf3 pubblico. Scegliere un server pubblico nella regione che si desidera testare. Gli elenchi dei server pubblici con i relativi indirizzi e porte sono disponibili nel documento INTROSERV Regole per la gestione dei problemi di connettività di rete e sul sito web di iPerf.
Per impostazione predefinita, iperf3 misura il traffico in una sola direzione alla volta, quindi per misurare entrambe le direzioni occorre eseguire due test.
Per misurare la velocità di upload, dal proprio computer al server iperf3, eseguire:
iperf3 -c <server_address> -p <port> -t 30 -P 10 -i 0
Per misurare la velocità di download, dal server iperf3 al proprio computer, aggiungere l'opzione -R:
iperf3 -c <server_address> -p <port> -t 30 -P 10 -R -i 0
Sostituire <server_address> e <port> con l'indirizzo e la porta del server pubblico. Ogni test dura 30 secondi.

I server iperf3 pubblici consentono un solo test alla volta. Se compare il messaggio the server is busy running a test, attendere un minuto e ripetere il comando oppure scegliere un altro server.
Interpretazione dei risultati
Al termine del test, iperf3 mostra il riepilogo. Poiché il test utilizza più connessioni parallele, fare riferimento alle righe che iniziano con [SUM]: indicano il throughput complessivo di tutte le connessioni.
Nel test di upload i dati vengono inviati dal proprio computer, quindi si deve considerare la velocità riportata nella riga [SUM] sender. Nel test di download con -R, i dati vengono inviati dal server e ricevuti dal proprio computer, quindi si deve considerare la velocità riportata nella riga [SUM] receiver. La velocità è indicata nella colonna Bitrate, in Mbits/sec o Gbits/sec.
Il risultato indica il throughput tra due punti specifici. Dipende dal percorso e dal carico del server pubblico, pertanto è consigliabile eseguire il test più volte e con server diversi prima di trarre conclusioni.
Opzioni dei comandi
I comandi riportati sopra utilizzano le seguenti opzioni:
- -c si connette al server iperf3 all'indirizzo indicato;
- -p imposta la porta del server;
- -t 30 esegue il test per 30 secondi;
- -P 10 utilizza 10 stream paralleli, il che può aiutare a ottenere un throughput più elevato su connessioni veloci o ad alta latenza;
- -i 0 nasconde i report al secondo e mostra solo il risultato finale;
- -R inverte la direzione, in modo che il server invii i dati al proprio computer.
Salvataggio dei risultati in un file
Per inviare i risultati al supporto tecnico o confrontarli in un secondo momento, salvarli in un file:
iperf3 -c <server_address> -p <port> -t 30 -P 10 -i 0 > iperf-upload.txt iperf3 -c <server_address> -p <port> -t 30 -P 10 -R -i 0 > iperf-download.txt
In Windows, utilizzare gli stessi comandi con iperf3.exe. I file vengono creati nella cartella corrente.
Test della velocità tra i propri server
Per misurare il throughput tra due dei propri server, avviare iperf3 in modalità server su uno di essi e connettersi ad esso dall'altro.
Per impostazione predefinita, iperf3 utilizza la porta 5201. Aprirla per TCP nel firewall del server che riceverà le connessioni. Con UFW su Ubuntu e Debian:
sudo ufw allow 5201/tcp
Con firewalld su AlmaLinux e Rocky Linux:
sudo firewall-cmd --permanent --add-port=5201/tcp sudo firewall-cmd --reload
I test descritti in questa guida utilizzano TCP. Se si prevede di eseguire anche test UDP, consentire anche la porta UDP 5201.
Avviare iperf3 in modalità server:
iperf3 -s
Il server mostra Server listening on 5201 e attende le connessioni.

Sul secondo server, eseguire il client specificando l'indirizzo IP del primo server:
iperf3 -c <first_server_ip> -p 5201 -t 30 -P 10 -i 0
Per la direzione opposta, aggiungere -R allo stesso comando. Al termine, arrestare il server iperf3 con Ctrl+C.
Non lasciare iperf3 in esecuzione in modalità server su un indirizzo IP pubblico quando non lo si utilizza. Chiunque possa raggiungere il server sulla porta 5201 può eseguire test verso di esso e consumare la sua banda.
Per l'elenco completo delle opzioni, eseguire iperf3 --help.