7
septembre
2021
16:02

« Test de la vitesse de transfert de données à l'aide de SSH et iPerf »

7 septembre 2021 16:02

Un moyen simple de vérifier la vitesse d'Internet ou du réseau local consiste à utiliser la commande iPerf.

Introduction

Il existe trois programmes de test de vitesse sous Linux : iPerf (port 5001) et iPerf3 (port 5201).
L'article traite du premier programme iPerf, mais avec le même succès, vous pouvez appliquer les instructions au programme iPerf3, en remplaçant le numéro de port 5001 par 5201.

Plan d'action

  1. Configurez un pare-feu sur le serveur en ajoutant une règle d'autorisation pour le serveur iPerf
  2. Configurer la redirection de port (pour le réseau local, nous ignorons)
  3. Installer iperf sur le client
  4. Connectez-vous au serveur via SSH
  5. Démarrer le serveur iperf
  6. Effectuer un test de vitesse de transfert de données depuis le client

Étape 1. Autoriser le port 5001 pour les tests de vitesse

Nous configurons le pare-feu sur le serveur :

sudo ufw allow 5001

où 5001 est le port par défaut du service iPerf.

Étape 2. Redirection de port

Pour un réseau local ou VPN, j'ignore le point de transfert vers le port 5001.

Pour Internet, vous devez ouvrir et rediriger 2 ports secrets sur le routeur :
1) pour contrôler un PC via SSH (transfert vers le port 22 du serveur) - numéro de port 22334.
2) pour les tests de vitesse (redirection vers le port 5001 du serveur iPerf par défaut) - numéro de port 12345.

Étape 3. Installation du client/serveur iPerf

Sur un ordinateur de bureau - un serveur Ubuntu Linux et sur un client - un netbook exécutant MX Linux), j'ai exécuté la même commande :

sudo apt-get install iperf

Étape 4. Connectez-vous via SSH au serveur

Sur le réseau local :

ssh user@192.168.1.8 -p 22334

Si de l'extérieur :

ssh user@123.45.67.89 -p 22334

où : user est le nom d'utilisateur sur le serveur, 123.45.67.8 est remplacé par l'adresse IP du serveur SSH sur Internet (adresse IP « blanche »), 22334 est le port secret pour la gestion via SSH.

J'ai entré le mot de passe et suis entré dans la console du serveur.

Étape 5. Lancez le serveur iPerf

Grâce à une session SSH sur le serveur, j'ai lancé le programme avec la touche "-s"

iperf -s

J'ai laissé la session ssh en cours. L'adresse IP du serveur sur le réseau local est statique - 192.168.1.8.

Étape 6. Test de la vitesse de transfert de données à l'aide d'iPerf au sein du réseau local

Lancement d'une autre instance (fenêtre) du terminal sur le client.

Sur un client du réseau local, j'ai exécuté la commande suivante :

iperf -c 192.168.1.8 -n 10M

Où 192.168.1.8 est l'adresse IP du serveur sur le réseau local, 10M est la taille du paquet de données pour mesurer la vitesse,
et le port par défaut est 5001.

Ou, si iperf3 est utilisé, la commande est :

iperf3 -c 192.168.1.8 -n 10M

Résultat :

$ iperf -c 192.168.1.8 -n 10M

Client connecting to 192.168.1.8 TCP port 5001

TCP window size: 110 KByte (default)

------------------------------------------------

[ 1] local 192.168.1.101 port 49772 connected with 192.168.1.8 port 5001

[ ID] Interval Transfer Bandwidth

[ 1] 0.0000-1.1685 sec 10.0 MBytes 71.8 Mbits/sec

Étape 7. Mesurer la vitesse depuis l'extérieur du réseau local à l'aide d'iPerf

Le côté serveur reste le même :

iperf -s

Partie client : appel d'une commande avec une adresse IP « blanche » (123.45.67.8) et la touche « -p » - le numéro de port transmis au serveur iPerf.

iperf -c 123.45.67.8 -p 12345  -n 10M

Résultat :

J'ai appris à mesurer la vitesse entre deux points.

À l'avenir, la configuration étant terminée, seules les étapes 4, 5 et 7 pourront être effectuées pour mesurer la vitesse.

Différences entre iperf et iperf3

Les programmes ont été écrits à des moments différents.
iperf3 est le port le plus récent du premier 5001, et le dernier iperf3 est le port 5201.

iperf3 en tant que service

iPerf3 dans systemd (le sous-système d'initialisation et de gestion des services sous Linux) peut être démarré en tant que service :

systemctl enable --now operf3.service

Après avoir exécuté la commande spécifiée, le service iperf3 spécifié sera activé et immédiatement démarré.
Vous pouvez connaître l'état d'un service à l'aide de la commande

systemctl status iperf3.service

Comme mentionné ci-dessus, le port externe pour la connexion via le protocole iperf3 est le 5201/TCP.
Si le service iperf3.service est en cours d'exécution, la commande "iperf3 -s" pour démarrer le serveur iperf3 n'a pas besoin d'être exécutée, car l'ordinateur sur lequel le service iperf3.service est en cours d'exécution répond toujours aux requêtes adressées au port 5201 lors de l'exécution de la commande depuis un autre ordinateur client.iperf3 -c ip_адрес_сервера -n 10M.

Dernier changement : 21/08/2022



Publications connexes