Un petit script – 1
Cet article a été initialement écrit sur le blog-libre aujourd’hui fermé, certains liens dans l’article peuvent donc être morts.
J’ai écrit un petit script qui ne casse pas 3 pattes à un canard.
#!/bin/bash ip=$(dig +short myip.opendns.com @resolver1.opendns.com) oldip='86.87.88.89' if [ "$ip" != "$oldip" ]; then echo "Adresse IP WAN de $HOSTNAME : $ip" | mail -s "Changement d'adresse IP WAN de $HOSTNAME" root fi
Je lance ce script via une tâche cron toutes les heures. Ça me permet de savoir si mon adresse IP WAN a changé car je m’auto-héberge et mon accès ADSL ne me donne qu’une adresse IP dynamique.
Ce qu’il y a d’intéressant dans ce script, c’est ceci :
dig +short myip.opendns.com @resolver1.opendns.com
La plupart du temps sur Internet vous trouverez une ligne du type :
curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//' curl ifconfig.me
J’ai toujours trouvé cette dernière commande très longue même si son point fort est de pouvoir la retenir aisément. Un simple time curl ifconfig.me me donne près de 9 secondes d’attente. Maintenant un time dig +short myip.opendns.com @resolver1.opendns.com me donne systématiquement moins de 0,6 secondes.
Quelques raisons de préférer dig pour le besoin de récupérer son adresse IP WAN :
– Plus rapide
– Ne nécessite pas de traitement pour le formatage de l’adresse IP à base de sed notamment
– Les services DNS (tels que OpenDNS, ceux des fournisseurs d’accès à Internet) sont généralement plus stables et plus pérennes que les sites comme ifconfig.me
Les commentaires sont fermés.