Aller au contenu
DynDNS

DynDNS

DynDNS est le système de DNS dynamique de FreeGateway. Il maintient un nom d’hôte associé à un système dont l’adresse IP est attribuée par DHCP et peut changer à tout moment, de sorte que ce système bénéficie de la plupart des avantages d’une adresse IP statique. Il fonctionne avec votre propre serveur DNS faisant autorité PowerDNS, et ses deux démons sont écrits en C++ pour FreeBSD.

Conçu pour Gateway

DynDNS s’adresse principalement à Gateway. Une succursale dont le Gateway obtient son adresse d’un serveur DHCP reste joignable par son nom d’hôte, car l’enregistrement DNS est mis à jour automatiquement chaque fois que l’adresse change.

DynDNS suppose que vous exploitez un serveur FreeBSD qui exécute PowerDNS comme serveur DNS faisant autorité, configuré avec le moteur SQLite3. Si vous n’en avez pas encore, le script powerdns_manager.py de FreeGateway peut mettre en place un serveur DNS faisant autorité PowerDNS reposant sur une base de données SQLite3.

Deux démons

DémonS’exécute surRôle
dyn_dns_clientLe système client, dont l’adresse IP est attribuée par DHCPEnvoie périodiquement l’adresse IP actuelle du système au serveur DNS
powerdns_updaterLe serveur DNS, aux côtés de PowerDNSReçoit et vérifie les notifications des clients enregistrés, et met à jour leurs enregistrements de nom d’hôte et d’adresse dans la base de données SQLite3 de PowerDNS

Fonctionnement

Le client envoie périodiquement au serveur un message contenant son adresse IP actuelle dans une charge utile chiffrée. Le serveur reçoit le message et lui applique une série de tests pour confirmer qu’il est valide. S’il l’est et que l’adresse du client a changé, le serveur met à jour l’enregistrement du client dans la base de données.

Ces messages périodiques servent aussi de signal de présence (heartbeat) : le serveur connaît ainsi en tout temps l’état de chaque client enregistré.

Communications sécurisées

DynDNS utilise une version UDP du canal que Yumei emploie pour ses communications de grappe fondées sur TCP. Il repose sur la bibliothèque cryptographique Sodium et utilise des clés publiques partagées au préalable. DynDNS n’utilise pas TLS et ne dépend pas de Yumei.

Enregistrement et gestion

Les clients sont actuellement enregistrés en ligne de commande, et les démons se gèrent par SSH. L’enregistrement depuis le tableau de bord système, tant sur le Gateway que sur le serveur DNS, est prévu dans une version ultérieure.