by Haruka :: 2016/04/30 :: 4 min read
#cli #mémo #raspberry-pi

Mémo : Gestion du DynDNS sous Linux avec OVH

Pour cet article, j’ai utilisé un Raspberry Pi sous Raspbian, ainsi que le service DynDNS d’OVH.

Mon Raspberry Pi est connecté à Internet derrière ma box Internet, sur laquelle j’ai paramétré une DMZ. Cette option permet de rediriger toutes les connexions entrantes vers une adresse IP du réseau local, en l’occurrence, celle du Raspberry Pi.

Plus d’informations sur le Raspberry Pi en cliquant ici.

Ainsi mon Raspberry est accessible depuis Internet via l’adresse IP public de ma box.


Le Principe

Un nom de domaine (DNS) permet d’accéder à un service sans devoir utiliser l’adresse IP. OVH.com est l’un des sociétés permettant d’acheter des noms de domaine. Le problème est que mon FAI ne me fournit pas d’adresse IP statique à associer à mon nom de domaine, mais une adresse IP dynamique, qui se renouvelle automatiquement (au redémarrage de la box, par exemple).

Afin d’éviter de rendre indisponible mon service auto-hebergé, et de voir mettre à jour systématiquement ma nouvelle adresse IP public sur les DNS d’OVH, j’ai la possibilité d’utiliser un service de “DNS dynamique”.

Le principe est simple, c’est mon Raspberry Pi qui va détecter l’adresse IP publique de ma box et l’envoyer automatiquement à OVH à chaque changement, pour mettre jour dynamiquement le couple IP-DNS.


Activation et paramétrage du service DynDNS

Commençont par nous rendre sur le manager web d’OVH, puis dans le menu de gauche, cliquez sur votre nom de domaine.

Première étape : il faut créer un login et un mot de passe, pour gérer l’authentification de l’outil qui viendra mettre à jour l’adresse IP. Cliquez sur “DynHost” puis sur “Gérer les accès” et enfin sur “Créer un identifiant”. Cet identifiant est composé des éléments suivants : le login (“nomdedomaine.net-login”), un sous domaine (“dyn.nomdedomaine.net”), et d’un mot de passe (“dyndns”).

Deuxième étape : il ne reste plus qu’à créer le DynHost. Cliquez sur “Ajouter un DynHost”, saisissez le sous domaine paramétré précédement (“dyn.nomdedomaine.net”) ainsi que l’adresse IP publique de votre box (nécessaire la première fois). Pour connaître votre IP publique, connectez vous sur l’interface d’administration de votre box (exemple : 192.168.1.1) ou sur monippublique.com.

Dernière étape (facultatif) : avec ce paramétrage votre service auto-hébergé sera directement accessible par l’adresse dyn.nomdedomaine.net. Si vous le souhaitez, vous pouvez rendre votre service accessible directement par l’adresse nomdedomaine.net, sans utiliser de sous domaine. Pour cela il faut paramétrer une redirection de nomdedomaine.net vers dyn.nomdedomaine.net. Cliquez sur “Zone DNS”, puis sur “Ajouter une entrée”. Choisissez un champs DNS de type “CNAME” et saisissez le sous domaine “dyn.nomdedomaine.net.” (champs “Cible”), attention, le “.” à la fin du sous domaine est obligatoire. Gardez à l’esprit qu’une mise à jour de la zone DNS, peut mettre jusqu’à 24h pour être diffusez sur tous les serveurs DNS publiques. Il est donc possible que cette redirection ne fonctionne pas avant quelques heures.


Installation et paramétrage du client

Il existe plusieurs outils qui permettent de dynamiser sont DNS. Je vous recommande ddclient qui est pour moi le plus simple à utiliser. Sous Raspbian ça donne :

sudo apt-get install ddclient

Editez le fichier /etc/ddclient.conf afin d’y saisir les informations nécessaires à la mise à jour du couple IP/DNS. Ci-dessous, avec notre exemple pour OVH :

# Configuration file for ddclient generated by debconf
#
# /etc/ddclient.conf
protocol=dyndns2
use=web, web=checkip.dyndns.com
server=www.ovh.com
login=nomdedomaine.net-login
password='dyndns'
dyn.nomdedomaine.net

Redémarrez ddclient pour prendre en compte les modifications :

sudo service ddclient restart

Enfin, la commande ci-dessous, vous permettra de vérifier le bon fonctionnement de ddclient :

sudo ddclient -daemon=0 -debug -verbose -noquiet

Sources images : Norlando Pobre (CCByv2) et Guides OVH.com

Documentation Ubuntu-fr pour ddclient : https://doc.ubuntu-fr.org/ddclient