Mettre à jour le DynHost OVH

Ovh offre une méthode ultra simple et rapide pour mettre à jour son DynHost : il suffit d’exécuter cette commande (dont vous aurez au préalable modifié les variables HOST et CURRENT_IP):

https://www.ovh.com/nic/update?system=dyndns&hostname=HOST&myip=CURRENT_IP"

Sur le site yann.me, on trouve une méthode automatique pour :

  • tester la concordance entre l’adresse IP de son serveur et l’adresse du DynHost,
  • mettre à jour si c’est necessaire.

Après avoir copié le code suivant dans /etc/cron.hourly/dynhost, vous changez les lignes 7,8 et 9 pour votre situation.

 1#/bin/sh
 2 
 3#
 4# CONFIG
 5#
 6 
 7HOST=votre.url.dynhost
 8LOGIN=votre-login-dynhost
 9PASSWORD=votre-mot-de-passe
10 
11PATH_LOG=/var/log/dyndns
12 
13#
14# GET IPs
15#
16 
17HOST_IP=`dig +short $HOST`
18CURRENT_IP=`curl ifconfig.co`
19 
20#
21# LOG
22#
23echo > $PATH_LOG
24echo "Run dyndns" >> $PATH_LOG
25date >> $PATH_LOG
26 
27echo "Current IP" >> $PATH_LOG
28echo "$CURRENT_IP" >> $PATH_LOG
29echo "Host IP" >> $PATH_LOG
30echo "$HOST_IP" >> $PATH_LOG
31 
32#
33# DO THE WORK
34#
35if [ -z $CURRENT_IP ] || [ -z $HOST_IP ]
36then
37        echo "No IP retrieved" >> $PATH_LOG
38else
39        if [ "$HOST_IP" != "$CURRENT_IP" ]
40        then
41                echo "IP has changed" >> $PATH_LOG
42                RES=`curl --user "$LOGIN:$PASSWORD" "https://www.ovh.com/nic/update?system=dyndns&hostname=$HOST&myip=$CURRENT_IP"`
43                echo "Result request dynHost" >> $PATH_LOG
44                echo "$RES" >> $PATH_LOG
45        else
46                echo "IP has not changed" >> $PATH_LOG
47        fi
48fi

Tester votre configuration

chmod +x /etc/cron.hourly/dyndns
. /etc/cron.hourly/dyndns
less /etc/cron.hourly/dyndns

Liens utiles