Hello à toutes et tous,
Avant de commencer, joyeuses pâques
Cette fois-ci j’essaie de faire un script bash pour lancer iperf3 en mode client.
Et de pouvoir basculer sur un autre port si celui utilisé est occupé ou renvoie un erreur.
#!/bin/bash
if iperf3 -c bouygues.iperf.fr -4 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
if iperf3 -c bouygues.iperf.fr -4 -p 5202 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
if iperf3 -c bouygues.iperf.fr -4 -p 5203 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
if iperf3 -c bouygues.iperf.fr -4 -p 5204 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
if iperf3 -c bouygues.iperf.fr -4 -p 5205 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
if iperf3 -c bouygues.iperf.fr -4 -p 5206 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
if iperf3 -c bouygues.iperf.fr -4 -p 5207 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
if iperf3 -c bouygues.iperf.fr -4 -p 5208 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
if iperf3 -c bouygues.iperf.fr -4 -p 5209 | grep 0.00-10.00 | tr -s ' ' | cut -d ' ' -f 5 >>/diagbox/web/tmp/iperf_upload.txt;then
echo "test debit termine"
else
echo "echec test débit sur tous les ports(5201 a 5209)"
fi
fi
fi
fi
fi
fi
fi
fi
fi
Les erreurs souvent retournés par iperf sont
- “iperf3: error - unable to receive control message: Connection reset by peer”
ou encore quand le port est déjà utilisé - iperf3: error - the server is busy running a test. try again later
Mon but final est d’écrire dans un fichier texte soit les valeurs du débit, soit le message erreur retourné.