« Actualiser une adresse DNS dynamique » : différence entre les versions

De Lea Linux
Aller à la navigation Aller à la recherche
Ligne 54 : Ligne 54 :
<code multi>
<code multi>
$ tar zxf ddclient-3.7.3.tar.gz
$ tar zxf ddclient-3.7.3.tar.gz
$cd ddclient-3.7.3
$ cd ddclient-3.7.3
</code>
</code>
En listant le contenu du répertoire, on constate que le programme n'a pas besoin d'être compilé: en effet, ddclient est un fichier perl prêt à l'emploi ! Il ne vous reste plus qu'à le déplacer :
En listant le contenu du répertoire, on constate que le programme n'a pas besoin d'être compilé: en effet, ddclient est un fichier perl prêt à l'emploi ! Il ne vous reste plus qu'à le déplacer :

Version du 24 juillet 2008 à 13:23

Attention ! Cet article est en cours de rédaction. Il n'a donc encore été ni relu, ni corrigé, ni validé par un modérateur.
Léa vous encourage à éditer les articles pour les améliorer ou les corriger.

Introduction

Une adresse sous forme de nom de domaine (ou adresse DNS) est associée à une adresse IP (quatre nombres entre 0 et 255 séparés par des points, par exemple 12.144.0.254) : il suffit de taper $ ping google.fr et de copier l'adresse IP correspondante dans la barre d'adresse du navigateur pour s'en convaincre.).

Les serveurs DNS (Domain Name Server ou Serveur de noms de domaine) présents sur internet effectuent la correspondance entre les noms de domaines et les adresses IP.

Il existe 2 types d'adresses IP attribuées par les fournisseurs d'accès Internet :

  • Les adresses IP statiques -> L'adresse IP reste la même à chaque connexion internet
  • Les adresses IP dynamiques -> L'adresse IP peut changer à chaque connexion à internet

Remarque : Si vous voulez savoir si votre adresse IP est statique ou dynamique, allez sur cette page, relevez votre adresse IP, puis coupez et relancez votre connexion internet : si l'adresse IP a changé, c'est que votre adresse est dynamique, sinon elle est statique.

Quel est l'intérêt d'associer un nom de domaine à son adresse IP ?

Attribuer un nom de domaine à l'adresse IP de sa connexion Internet est surtout utile si l'on crée un serveur, quel qu'il soit (serveur Web, FTP, ssh...).

Prenons un exemple : vous avez créé un serveur FTP sur votre ordinateur, et vous souhaiter qu'il soit accessible de l'extérieur ; si votre adresse IP est dynamique, il faudrait alors connaître systématiquement son adresse IP alors qu'elle change souvent (par exemple toutes les 24 heures, ou à chaque reconnexion) ! En associant un nom de domaine à votre adresse IP, l'adresse sous forme de nom sera non seulement facile à retenir, mais elle ne changera pas.

Création d'un compte de DNS dynamique

Il suffit d'aller sur un des sites suivants, y créer un compte avec un mot de passe, un ordinateur (host) et choisir un nom pour votre machine.

La plupart de ces sites vous proposeront soit d'utiliser un nom de domaine que vous possédez (comme lea-linux.org), ou un sous-domaine d'un domaine qu'ils possèdent (lea.is-a-geek.org pour Dyndns par exemple).

Quel-est le fonctionnement d'un client DNS ?

Un client DNS est un petit programme s'installant sur l'ordinateur auquel on veut attribuer une adresse nommée fixe.

Une fois lancé (la plupart du temps au démarrage de l'ordinateur), il va détecter votre adresse IP. Il va ensuite se connecter au compte DNS que vous aurez créé auparavant, et communiquer votre adresse IP au serveur de noms. Votre adresse DNS sera alors associée à votre adresse IP. Si votre adresse IP change, le client DNS le détectera, et associera alors cette nouvelle adresse IP à votre adresse DNS.

Ainsi votre serveur restera-t-il accessible de l'extérieur en utilisant son nom, sans jamais avoir à se soucier de son adresse IP.

Mise en place d'un client DNS : ddclient

Téléchargement

Les sources de ddclient sont téléchargeables ici (la v3.7.3 à l'heure où j'écris). Préférez l'archive tar.gz.

Note : sur debian, ddclient est présent dans les dépôts de logiciels. Préférez donc la commande suivante pour l'installer (à moins que vous ne vouliez la toute dernière version) : # apt-get install ddclient

Installation

Une fois que vous avez récupéré l'archive de ddclient, allez dans son dossier et tapez : $ tar zxf ddclient-3.7.3.tar.gz $ cd ddclient-3.7.3 En listant le contenu du répertoire, on constate que le programme n'a pas besoin d'être compilé: en effet, ddclient est un fichier perl prêt à l'emploi ! Il ne vous reste plus qu'à le déplacer : mv ddclient /usr/local/bin/ Si vous tentez d'exécuter ddclient directement :

  1. /usr/local/bin/ddclient

"WARNING: file /etc/ddclient/ddclient.conf: Cannot open file '/etc/ddclient/ddclient.conf'. (No such file or directory)". ddclient vous répond qu'il cherche le fichier de configuration, qui n'existe pas encore.

Fichier de configuration ddclient.conf

Commençons par créer le fichier de configuration :

  1. mkdir /etc/ddclient
  2. touch /etc/ddclient/ddclient.conf

Editez ce fichier avec votre éditeur de texte préféré. Remplissez-le comme ceci :

daemon=200 # Vérifie l'adresse toutes les 200 secondes syslog=yes # Enregistre le log dans syslog ssl=yes # Utilise SSL pour crypter les échanges (nécessite le paquet IO::Socket::SSL de Perl) cache=/tmp/ddclient.cache # Emplacement du cache du processus pid=/var/run/ddclient.pid # Emplacement du PID du processus use=web, web=checkip.dyndns.org/, web-skip='IP Address' # Voir détails plus bas Remarque : il est conseillé de désactiver SSL lors des premiers essais.

Ddclient peut récupêrer l'IP de votre connexion de 3 manières différentes:

  • use=web, web=checkip.dyndns.org/, web-skip='IP Address'  : Ddclient utilisera une connexion par le port 80 pour récuperer votre adresse IP. En se connectant sur checkip.dyndns.org, il pourra retrouver votre IP.
Remarque:Si vous êtes derrière un proxy, ajoutez cette ligne proxy=adresse_de_mon_proxy:port
  • use=if, if=eth0 si vous n'êtes pas derrière un routeur ou autre livebox, vous pouvez interroger directement votre modem, en remplacant eth0 par votre interface modem.
  • use=fw permet d'interroger son routeur ou modem ethernet. Cette méthode est déconseillée, car il faut un matériel compatible (voir la liste)

Personnellement, je recommande la méthode use=web, car c'est la plus rapide à mettre en place. La partie qui suit diffère selon le service d'IP dynamique utilisé : login=jekek # Nom d'utilisateur du compte utilisateur password=monmotdepasse # Mot de passe protocol=protocole_service # Protocole utilisé par le service server=serveur_service # Serveur du service DDNS wildcard=NO # Voir plus bas nom_de_domaine.exemple.com # Adresse à synchroniser avec votre IP

Remarque : Wildcard: Le wildcard permet de rediriger toutes les adresses finissant par le même nom de domaine (xxxxx.mon_nom_de_domaine.com) vers la même adresse IP.

Voici les configurations pour les services les plus connus:

  • Pour DynDNS:

login=login_dyndns password=mot_de_passe_dyndns protocol=dyndns2 server=members.dyndns.com wildcard=YES nom_de_domaine.exemple.com

  • Pour DNSPark

login=DNS Park DDNS username password=DNS Park DDNS username protocol=dnspark server=www.dnspark.com wildcard=NO mon_nom_de_domaine.exemple.com

  • Pour EasyDNS

login=EasyDNS username password=EasyDNS password protocol=easydns server=ns1.easydns.com wildcard=NO mon_nom_de_domaine.exemple.com

  • Pour Namecheap

login=Namecheap username password=Namecheap password protocol=namecheap server=ns1.easydns.com wildcard=NO mon_nom_de_domaine.exemple.com

Autres clients DNS dynamique

D'autres logiciels existent qui ont la même fonctionnalité que ddclient, par exemple :

ez-ipupdate

ez-ipupdate

dont un package existe peut-être pour votre distribution - c'est le cas pour Mandriva).

Cependant ez-ipupdate étant incapable d'aller chercher votre adresse IP lorsque le PC a une adresse de réseau local (s'il est derrière un routeur par exemple), cette solution nécessite soit d'être connecté en direct à internet (modem ou box en mode transparent), soit de modifier le script de démarrage afin d'informer ez-ipupdate de l'adresse IP publique.