Un petit script – 2 : Adresse IP WAN, localisation, speedtest

Ce petit script va faire 3 choses : Afficher votre adresse IP WAN (externe), la localisation géographique de cette adresse, la bande passante en download de cette connexion. Je me sers de ce script quand je me connecte avec OpenVPN à des serveurs VPN étrangers. Je sais ainsi d’un coup d’œil si je ne suis pas sur l’adresse IP de mon domicile, à quel endroit je suis connecté et si je peux télécharger comme un cochon la vitesse de download est intéressante.

Dans un petit script – 1, j’avais expliqué pourquoi j’utilisais dig (plus rapide notamment). Je me base sur le service ipinfo.io (le meilleur à ma connaissance mais qui donne parfois des réponses inexactes pour la ville) pour récupérer les informations géographiques, jq va traiter le JSON en sortie enfin speedtest-cli permet d’avoir la bande passante.

Vous aurez donc besoin de dnsutils (pour dig), jq et speedtest-cli. Le script se lance basiquement avec bash /chemin/vers/le/script.sh (vous pouvez le rendre exécutable avec chmod +x /chemin/vers/le/script.sh). A noter que le (gros) défaut de ce script est speedtest-cli dont le test de bande passante est assez long, il faut en général 20 secondes pour que toutes les informations soient affichées.

#!/bin/bash
# sudo apt install dnsutils jq && sudo -H pip3 install speedtest-cli

myip=$(dig +short myip.opendns.com @resolver1.opendns.com)
geoip=$(curl -s ipinfo.io/"$myip" | jq -r '[.country, .city] | join(", ")')

echo "$myip ($geoip)"
speedtest-cli --no-upload --simple --secure | grep Download

exit 0

Vous aurez ce type de sortie :
153.92.40.6 (CA, Toronto)
Download: 21.90 Mbit/s

37.72.175.85 (US, New York)
Download: 9.57 Mbit/s

Si vous voulez Ping, Download et Upload speedtest-cli --simple --secure, si vous voulez juste Download et Upload speedtest-cli --simple --secure | grep Mbit

Tcho !

Vus : 792
Publié par blog-libre : 132