DNS

Published on December 2016 | Categories: Documents | Downloads: 48 | Comments: 0 | Views: 454
of 22
Download PDF   Embed   Report

Comments

Content

Résolution de nom avec Bind Stéphane Gill [email protected]

Table des matières Introduction

3

Principe de fonctionnement

3

Type de serveur DNS

4

Serveur de noms primaire

4

Serveur de nom secondaire

4

Serveur cache

5

Configuration d’un client DNS

5

/etc/hosts.conf

5

/etc/resolv.conf

7

Installer le serveur bind

7

Configurer bind

7

/etc/named.conf

8

Fichiers de zone

11

Directive de fichier de zone

12

Enregistrement de ressources

12

Named.ca

15

named.local

15

Exemple de DNS cache

15

Exemple de DNS primaire

16

Gérer un serveur DNS

19

Démarrage du serveur DNS

19

Recharger la configuration d’un serveur DNS

19

Arrêt du serveur de noms

19

Document écrit par Stéphane Gill © Copyright 2004 Stéphane Gill Ce document est soumis à la licence GNU FDL. Permission vous est donnée de distribuer et/ou modifier des copies de ce document tant que cette note apparaît clairement.

Afficher les statistiques Tester un serveur DNS

19 19

Ping

20

dig

20

Équilibrage des charges

21

Références

22

Document écrit par Stéphane Gill © Copyright 2004 Stéphane Gill Ce document est soumis à la licence GNU FDL. Permission vous est donnée de distribuer et/ou modifier des copies de ce document tant que cette note apparaît clairement.

Résolution de nom avec Bind

Introduction Le Domain Name System (DNS) est une base de données mondialement répartie qui contient des informations concernant les ordinateurs sur Internet et Intranet. Les données qui y sont enregistrées sont généralement composées du nom de l’ordinateur, de son adresse IP et des informations de routage de mail. Dans ce chapitre, les items suivants sont présentés : •

Le fonctionnement du DNS;



La configuration d’un client DNS;



la configuration d’un serveur DNS avec Bind.

Principe de fonctionnement Les données ou nom de domaine stockées dans un serveur DNS sont organisés en arborescence. Chaque nœud de l’arbre, appelé domaine, reçoit une étiquette. Le nom de domaine du nœud est la concaténation de toutes les étiquettes des nœuds sur le chemin du domaine racine.

Domaine racine

com

google

ftp

© Copyright 2004 Stéphane Gill

org



edu







www

Page 3

Résolution de nom avec Bind

Le nom de domaine est séparé en parties appelées zone. Chaque zone part d’un nœud et va vers un nœud où commence une nouvelle zone. Les données pour chaque zone sont stockées dans le serveur de noms, qui répondra aux requêtes d’une zone utilisant le protocole. Les trois principaux composants du Domain-Name-System sont : •

la bibliothèque de résolution (resolver),



le serveur de noms lui-même (named),



et le domaine de dénomination.

Lorsqu’un client souhaite voir un nom d’ordinateur converti en son adresse IP, il transmet une requête au serveur de noms par la bibliothèque de résolution. Le serveur renvoie l’information demandée, dirige la requête vers un autre serveur de noms ou renvoie un message d’erreur, s’il ne peut pas fournir un résultat à la requête.

Type de serveur DNS Un serveur DNS peut être configuré pour fonctionné de différentes manières, soit en serveur : •

primaire;



secondaire;



ou cache.

Serveur de noms primaire Un serveur de noms primaire contient toutes les données de la zone ou du domaine. Toutes les modifications concernant ces données sont réalisés sur ce serveur.

Serveur de nom secondaire Le serveur de noms secondaire reçoit les données nécessaires pour gérer sa zone d’autorité à partir du serveur de nom maître (master). Ce serveur peut être un serveur de noms primaire ou un autre serveur de nom secondaire. La transmission des informations de zone est définie par le

© Copyright 2004 Stéphane Gill

Page 4

Résolution de nom avec Bind

terme de « transfert de zone ». Lors du démarrage d’un serveur de noms secondaire, celui-ci établit une connexion vers son serveur de nom maître et démarre le transfert de zone.

Serveur cache Les fonctions d’un serveur cache ne consistent qu’à prendre en compte et à exécuter des requêtes, à assurer l’enregistrement intermédiaire des réponses et à renvoyer les résultats. Un serveur cache ne dispose d’aucune autorité de domaine, c’est-à-dire que les informations de zone n’y sont pas enregistrées. Au démarrage, un serveur cache ne peut fournir aucune information, car elles ne seront construites qu’au cours du fonctionnement, lors du traitement des réponses aux requêtes.

Configuration d’un client DNS Pour accéder aux différents serveurs de l’Internet, il est necessaire de configurer le client DNS. La partie cliente d’un DNS s’appelle un « resolver ». Il s'agit d'un ensemble de fonctions écrites en C permettant aux différents programmes de lancer une requête de résolution de nom. Les fichiers de configuration du « resolver » s'appellent /etc/resolv.conf et /etc/hosts.conf.

/etc/hosts.conf Ce fichier contient des paramètres nécessaires pour le pilotage de la bibliothèque de résolution des noms (en anglais, Resolver). Lorsqu’un ordinateur est appelé par son nom, la bibliothèque de résolution se charge de résoudre le nom de manière correcte pour l’environnement de l’ordinateur. Selon le cas, la résolution du nom sera réalisée à partir du fichier /etc/hosts de l’ordinateur local, ou en interrogeant un serveur de nom (Name Server). L’application qui est à l’origine de la résolution du nom n’est pas concernée par les différents processus. C’est pourquoi le processus de résolution des noms est enregistré dans une bibliothèque externe. L’un des fichiers de configuration de la bibliothèque de résolution est /etc/hosts.conf. Exemple de fichier /etc/hosts.conf # /etc/hosts.conf # order hosts, bind multi on

© Copyright 2004 Stéphane Gill

Page 5

Résolution de nom avec Bind

La première ligne des fichiers définit l’ordre dans lequel les services de résolution de noms doivent être interrogés. Dans notre exemple, c’est d’abord le fichier local /etc/hosts qui est parcouru. Si aucune correspondance n’est trouvée, le programme interroge le serveur de noms. La deuxième ligne indique, par le terme « multi on », qu’un ordinateur enregistré dans le fichier /etc/hosts peut disposer de plusieurs adresses IP. Cette disposition est souvent utilisée sur des serveurs WWW sur lesquels plusieurs entités mettent leurs services à la disposition, sous différentes adresses réseau. Les utilisateurs de ces services ont alors l’impression de s’adresser à plusieurs ordinateurs différents, alors qu’une seule et même machine abrite les différentes adresses. Le tableau ci-après présente la liste des différentes options : Paramètre order hosts bind yp

Signification Détermination de l’ordre dans lequel les services de résolution de noms doivent être consultés. •

hosts : Analyse du fichier /etc/hosts de l’ordinateur local.



bind : Interrogation d’un serveur de noms (DNS). La désignation bind (Berkeley Internet Name Deamon) trouve son origine dans l’histoire des serveurs de noms, développés initialement à l’université de Berkeley.



yp : Interrogation d’un serveur NIS. La désignation yp signifie yellow pages, et fait référence aux « pages jaunes » du service Network Information System, développé initialement par la société Sun.

multi on/off

nosproof on alert on/off

trim <Nom_de_domaine>

© Copyright 2004 Stéphane Gill

Un ordinateur enregistré dans le fichier /etc/hosts peut disposer de plusieurs adresses IP. Protection contre le procédé Adress-Spoofing. Si le paramètre alert est activé, les attaques de ce type sont enregistrées dans un journal. Le nom de domaine est séparé du nom de l’ordinateur avant le traitement par le processus de résolution des noms.

Page 6

Résolution de nom avec Bind

/etc/resolv.conf Ce fichier joue également un rôle très important dans la configuration de la bibliothèque Resolver. Si ce fichier est présent, c’est le serveur de noms qui apparaît en premier qui est interrogé. Si le fichier contient plusieurs noms de serveurs, ils sont interrogés dans l’ordre correspondant. Pour certaines distributions de Linux, si aucun nom n’est indiqué, ce fichier est effacé. L’entrée « search » impose au programme de tenter de résoudre un nom incomplet. Ce nom de domaine est ajouté après les noms incomplets. Cette entrée s’appelait précédemment « domain », pour ce fichier. Conformément à la demande RFC1535 (Request For Comment 1535), il est fortement recommandé de ne plus utiliser l’entrée « domain ». L’exemple ci-après présente un contenu possible pour ce fichier :

# /etc/resolv.conf # search microapp.fr # Adresse du serveur de noms nameserver 205.1.1.1 nameserver 205.1.1.5 nameserver 205.1.2.1

Installer le serveur bind Pour installer bind, il suffit d'installer les paquetages : •

bind-utils-9.2.2.P3-9.rpm



bind-9.2.2.P3-9.rpm



caching-nameserver-7.2-10.rpm

Le paquetage caching-nameserver permet d’installer les fichiers : /etc/named.conf, /var/named/named.ca et /var/named/named.local.

Configurer bind La configuration de bind ce fait en modifiant les fichiers suivant :.

© Copyright 2004 Stéphane Gill

Page 7

Résolution de nom avec Bind



/etc/named.conf : Contient les paramètres généraux.



/var/named/named.ca : Indique les serveurs dns racines.



/var/named/named.local : résolution locale des adresses loopback

et en créant des fichiers de zone dans le répertoire /var/named/.

/etc/named.conf Ce fichier contient des déclarations, des lignes de commentaires et des lignes vides.

Balise de commentaires Un commentaire commence avec deux barre obliques comme dans l’exemple suivant : // Ceci est un commentaire Un commentaire peut aussi commencer par le signe #, comme dans l’exemple : # Ceci est un commentaire Un commentaire peut aussi contenir plusieurs lignes commençant par les lignes /* et se terminant par */. Par exemple : /* Ceci est un commentaire comportant plusieurs lignes */

Déclaration options La déclaration options permet de paramétrer des options globales du serveur de noms. Une seule déclaration options peut être utilisée dans le fichier /etc/named.conf. Voici un exemple de déclaration options avec les options les plus utilisés : options { Directory chemin ; Forwarders {[adresse ; [adresse ; …]]} ; Forward (only | first) ; };

© Copyright 2004 Stéphane Gill

Page 8

Résolution de nom avec Bind



directory : spécifie le répertoire de travail du serveur de noms. Par défaut, le répertoire /var/named est utilisé.



forward : contrôle le fonctionnement de la directive forwarders. Les options acceptées sont les suivantes : •

first : Le serveur de noms envoie toutes les requêtes au serveur de noms spécifié dans la directive forwarders avant que bind tente de résoudre le nom lui-même.

• •

only : spécifie que bind ne doit pas résoudre le nom lui-même.

forwarders : spécifie une liste d’adresse IP valides correspondant aux serveurs de noms vers lesquels les requêtes devraient être envoyées pour résolution.

Déclaration include La déclaration include permet à des fichiers de faire partie d'un fichier named.conf. Ce faisant, des données de configurations critiques (comme keys, par exemple)peuvent être stocké dans un fichier séparé doté de permissions restreintes. Une déclaration include se présente sous le format suivant: include

"nom_fichier"

Dans cette déclaration, nom_fichier est remplacé par le chemin d'accès absolu vers un fichier.

Déclaration de zone Une déclaration de zone définit les caractéristiques particulières d’une zone, tels le nom de son fichier de configuration et les zone communément utilisées : Zone nom_domaine in { Type master ; File nom ; } ; zone nom_domaine in { type slave ; masters {adr_ip ; [adr_ip ; …]} ; file nom ; } ; zone «.» in { type hint ;

© Copyright 2004 Stéphane Gill

Page 9

Résolution de nom avec Bind

file nom; };

Dans la déclaration, nom-domaine correspond au nom de la zone. Cet attribut est particulièrement important, puisqu'il représente la valeur par défaut assignée à la directive $ORIGIN utilisés au sein du fichier de zone correspondant. Parmi les options les plus courantes de la déclaration de zone figurent: •

allow-query : spécifie les clients qui sont autorisés à requérir des informations à propos de cette zone. Par défaut toutes les requêtes d'informations sont autorisées.



allow-transfer : spécifie les serveurs esclaves qui sont autorisés à requérir un transfert des informations de la zone. Par défaut toutes les requêtes de transfert sont autorisées.



allow-update : spécifie les hôtes qui sont autorisés à mettre à jour dynamiquement des informations dans leur zone. Par défaut aucune requête de mise à jour dynamique n'est autorisée.



file : spécifie le nom du fichier qui contient les données de configuration de la zone, dans le répertoire de travail named.



masters : l'option masters établit une liste des adresses IP à partir desquelles demander des informations sur la zone faisant autorité. Cette option ne doit être utilisée que si la zone est définie comme de type slave.



notify : informe les serveurs esclaves lorsqu'une zone est mise à jour. Les options suivantes sont acceptées: •

yes : informe les serveurs esclaves.



no : n’informe pas les serveurs esclaves.



explicit : informe seulement les serveurs esclaves spécifiés dans une liste also-notify à l'intérieur d'une déclaration de zone.



type : définit le type de zone. Ci-après figure une liste des types valides: •

forward : retransmet toutes les requêtes d'informations à propos de cette zone vers d'autres serveurs de noms

© Copyright 2004 Stéphane Gill

Page 10

Résolution de nom avec Bind



hint : un type spécial de zone utilisé pour diriger des transactions vers les serveurs de noms racines qui résolvent des requêtes lorsqu'une zone n'est pas connue autrement. Aucune configuration au-delà de la valeur par défaut n'est nécessaire avec une zone hint.



master : désigne le serveur de noms faisant autorité pour cette zone. Une zone devrait être configurée comme de type master (maître) si les fichiers de configuration de la zone se trouvent sur le système.



slave : désigne le serveur de noms comme serveur esclave pour cette zone. Cette option spécifie également l'adresse IP du serveur de noms maître pour cette zone.



zone-statistics : configure named pour qu'il conserve des statistiques concernant cette zone, en les écrivant soit dans l'emplacement par défaut (/var/named/named.stats) soit à l'emplacement expressément désigné par l'option statistics-file dans la déclaration server.

Ci-dessous se trouve un exemple de déclaration de zone pour le serveur de nom primaire hébergeant ahuntsic-formres.local : Zone “ahuntsic-formres.local” IN { type master; file “ahuntsic-formres.local.zone”; allow-update {none}; }; La déclaration de zone pour le serveur esclave de ahuntsic-formres.local ressemble à l’extrait cidessous : Zone “ahuntsic-formres.local” IN { type slave; file “ahuntsic-formres.local.zone”; masters {192.168.0.1}; };

Fichiers de zone Il existe deux fichiers de configuration pour chaque zone. L’un est nécessaire pour trouver l’adresse IP d’après le nom de l’hôte (résolution directe) et l’autre pour trouver le nom d’hôte d’après l’adresse IP (résolution inverse). Chaque fichier de zone est nommé selon le paramètre fourni à l’option file dans la déclaration zone (/etc/named.conf).

© Copyright 2004 Stéphane Gill

Page 11

Résolution de nom avec Bind

Directive de fichier de zone Les directives sont identifiées par le symbole ($) suivit du nom de la directive. Elles apparaissent au haut du fichier de zone. Les directives les plus couramment utilisées sont les suivantes: •

$INCLUDE : configure named de façon à ce qu'il inclue un autre fichier de zone dans ce fichier de zone à l'endroit où la directive apparaît. Cela permet de stocker des configurations de zone supplémentaires à l'écart du fichier de zone principal.



$ORIGIN : attache le nom de domaine à tout enregistrement non-qualifié. L'utilisation de la directive $ORIGIN n'est pas nécessaire si l'on nomme la zone dans /etc/named.conf parce que le nom de la zone est utilisé par défaut, comme la valeur de la directive $ORIGIN



$TTL : règle la valeur par défaut de Time to Live (TTL) (ou temps de vie) pour la zone. C ette valeur exprimée en secondes, correspond à la durée pendant laquelle les enregistrements de ressources de la zone resteront valides. Chaque enregistrement de ressources peut contenir sa propre valeur TTL, qui remplace alors cette directive. En accroissant cette valeur, les serveurs de noms distants peuvent mettre en cache ces informations de zone pendant plus longtemps. Cela réduit le nombre de requêtes effectuées au sujet de cette zone, mais rallonge également le temps nécessaire pour la prolifération des changements des enregistrements de ressources.

Enregistrement de ressources Les enregistrements de ressources représentent les premier composant d’un fichier de zone. Il existe de nombreux types différents d’enregistrements de ressources, les plus fréquemment utilisé sont énumérés ci-dessous.

SOA (Start of Authority) L’enregistrement SOA (ou Origine d’autorité) indique l’origine de la zone. Voici la syntaxe de cet enregistrement : @ IN SOA nom_serveur. email_contact. ( numero_serie ; Serial rafraichissement ; Refreah nombre_essais ; Retry expiration ; Expire ttl_minimum) ; Minimum

© Copyright 2004 Stéphane Gill

Page 12

Résolution de nom avec Bind

Le symbole @ place la directive $ORIGIN (ou le nom de domaine) en tant qu'espace de nom défini par le présent enregistrement de ressources SOA. Le serveur de noms primaire faisant autorité pour ce domaine est utilisé pour le nom_serveur et l'adresse email de la personne à contacter à propos de cet espace de nom est remplacée par email_contact. Voici la description des paramètres d’un enregistrement SOA : •

numéro_série est incrémentée chaque fois que vous changez le fichier de zone afin que named sache qu'il doit recharger cette zone. La valeur numéro_série est utilisée par le serveur esclave pour déterminer s'il est en train d'utiliser des données de zone périmées et doit donc les rafraîchir.



rafraîchissement indique à tout serveur esclave combien de temps il doit attendre avant de demander au serveur de noms maître si des changements ont été effectués dans la zone.



nombre_essai précise au serveur de noms esclave l'intervalle pendant lequel il doit attendre avant d'émettre une autre requête de rafraîchissement, au cas où le serveur de noms maître ne répondrait pas.



Si le serveur maître n'a pas répondu à une requête de rafraîchissement avant que la durée indiquée dans expiration ne se soit écoulée, le serveur esclave cesse de répondre en tant qu'autorité pour les requêtes au sujet de cet espace de nom.



ttl_minimum demande que d'autres serveurs de noms placent en cache les informations pour cette zone pendant au moins cette durée (en secondes).

NS : Name Server L’enregistrement NS indique le serveur de noms responsable d’un domaine. Sa syntaxe est la suivante : IN

NS seveur.

Les champs name et TLL ne sont pas indiqués, car leurs valeurs se trouve dans l’enregistrement SOA. Dans l’exemple suivant IN

NS stephane.gill.

l’enregistrement indique que le système stephane.gill est le serveur de noms pour le fichier de zone courant. Il est possible de spécifier plusieurs enregistrements NS.

© Copyright 2004 Stéphane Gill

Page 13

Résolution de nom avec Bind

A : Address L’enregistrement A indique l’adresse d’un hôte. Voici la syntaxe de cet enregistrement : nom_hôte_complet IN A adresse_IP Par exemple, la ligne : www.stephane.gill. IN A 10.73.127.132 indique l’adresse IP du serveur Web www.stephane.gill. Le fichier de zone doit contenir au moins un enregistrement A par hôte. Il est possible d’indiquer uniquement le nom de l’hôte, comme dans l’exemple suivant : www IN A 10.73.127.132 Le nom de domaine sera automatiquement ajouté au nom de l’hôte.

PTR : Domain Name Pointer Cet enregistrement transforme une adresse IP en nom d’hôte. C’est le service des noms de domaine inverse. Voici la syntaxe d’un enregistrement PTR : adresse_IP IN PTR nom_hôte. Par exemple, l’enregistrement 10.73.127.132 IN PTR www.stephane.gill. associe l’adresse IP 10.73.127.132 à l’hôte www.stephane.gill.

CNAME : Canonical Name L’enregistrement CNAME indique l’alias d’un hôte officiel. Voici la syntaxe d’un enregistrement CNAME : nom_alias IN CNAME nom_hote. Par exemple, l’enregistrement ftp.stephane.gill. IN CNAME www.stephane.gill. que le nom ftp.stephane.gill est associé à www.stephane.gill. Il est aussi possible d’utiliser uniquement les noms d’hôtes comme dans l’exemple suivant :

© Copyright 2004 Stéphane Gill

Page 14

Résolution de nom avec Bind

ftp IN CNAME www

Named.ca Ce fichier n’a pas à être modifier. Il contient les adresses des serveurs dns racine.

named.local @

1

IN

SOA linux.stephane.gill. root.linux.stephane.gill.( 2000101500 ; numéro de série 28800 ; rafraîchissement toutes les 8 heures 14400 ; nouvel essai toutes les 4 heures 604800 ; expiration dans 7 jours 86400 ) ; temps de vie minimal 24 heures NS linux.stephane.gill. PTR localhost.

Normalement, les valeurs de ce fichier ne doivent pas être modifiées. Si une modification doit être faite dans ce fichier vous devez modifier le numéro de série doit être modifié afin de faire connaître cette modification aux autres serveurs dns. 20001015 correspond au 15 oct 2000 changer cela lorsque vous faites une modification. Si vous devez faire plusieurs modifications dans la même journée incrémenté le 00.

Exemple de DNS cache named.conf // // Fichier /etc/named.conf // options { // Specifier le chemin ou se trouve les fichiers de zone DNS directory "/var/named"; // Adresse des serveurs a contacter si le serveur de nom local // est incapable de resoudre le nom. Cette option peut etre // remplacer par la commande nameserver du fichier // /etc/resolv.conf. forward only; forwarders {

© Copyright 2004 Stéphane Gill

Page 15

Résolution de nom avec Bind

10.73.127.131; }; }; // // Fichier de cache // zone "." IN { type hint; file "named.ca"; }; // // Fichier pour la resolution inverse de 127.0.0 // zone "0.0.127.in-addr.arpa" IN { type master; file "named.local"; allow-update { none; }; }; include "/etc/rndc.key";

named.local $TTL 86400 @ IN SOA localhost. root.localhost. 1997022700 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS localhost. 1

IN

PTR

(

localhost.

Exemple de DNS primaire named.conf // // Fichier /etc/named.conf // options {

© Copyright 2004 Stéphane Gill

Page 16

Résolution de nom avec Bind

// Specifier le chemin ou se trouve les fichiers de zone DNS directory "/var/named"; // Adresse des serveurs a contacter si le serveur de nom local // est incapable de resoudre le nom. Cette option peut etre // remplacer par la commande nameserver du fichier // /etc/resolv.conf. forward first; forwarders { 10.73.127.131; }; }; // // Fichier de cache // zone "." IN { type hint; file "named.ca"; }; // // Fichier pour la resolution inverse de 127.0.0 // zone "0.0.127.in-addr.arpa" IN { type master; file "named.local"; allow-update { none; }; }; // // Fichier pour la resolution de la zone stephane.gill // zone "stephane.gill" IN { type master; file "stephane_gill"; }; zone "73.10.in-addr.arpa" { type master; file "stephane_gill.rev"; }; include "/etc/rndc.key";

named.local $TTL 86400 @ IN SOA linux.stephane.gill. root.linux.stephane.gill. ( 2003030500 ; Serial 28800 ; Refresh

© Copyright 2004 Stéphane Gill

Page 17

Résolution de nom avec Bind

14400 3600000 86400 )

; Retry ; Expire ; Minimum

IN NS linux.stephane.gill. 1 IN PTR localhost.

stephane_gill $TTL 86400 @ IN SOA linux.stephane.gill. root.linux.stephane.gill. ( 2003030500 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN A 10.73.127.132 IN NS linux IN NS linux.stephane.gill. TXT "Mon serveur DNS" windows novell

IN A 10.73.127.134 IN A 10.73.127.133

stephane_gill.rev $TTL 86400 @ IN SOA linux.stephane.gill. root.linux.stephane.gill. ( 2003030500 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS linux.stephane.gill. 132.127.73.10.in-addr.arpa. IN PTR linux.stephane.gill. 134.127.73.10.in-addr.arpa. IN PTR windows.stephane.gill. 133.127.73.10.in-addr.arpa. IN PTR novell.stephane.gill.

© Copyright 2004 Stéphane Gill

Page 18

Résolution de nom avec Bind

Gérer un serveur DNS BIND possède un utilitaire appelé rndc qui permet d’administrer le démon named à partir de la console locale ou d’un hôte distant.

Démarrage du serveur DNS Il est possible de démarrer le serveur de nom manuellement à l’aide de la commande suivante : service named start

Recharger la configuration d’un serveur DNS Après chaque modification des fichiers de configuration le serveur DNS doit être relancer. La commande suivante permet de changer la nouvelle configuration : rndc reload

Arrêt du serveur de noms La commande suivante permet d’arrêter le serveur de noms : rndc stop

Afficher les statistiques L’utilitaire rndc permet aussi d’afficher différentes statistiques : rndc stats Cette commande crée un fichier nommé named.stats situé dans le répertoire /var/named.

Tester un serveur DNS Une fois l’installation de bind terminée, le serveur DNS doit être testé. Le fichier /var/log/messages doit être consulté après chaque lancement de named puisque les erreurs et

© Copyright 2004 Stéphane Gill

Page 19

Résolution de nom avec Bind

les problèmes y seront consignés. Les commandes ping et dig permettent de tester le serveur DNS, elles sont décrites dans les sections suivantes.

Ping Le programme ping permet de vérifier si une connexion fonctionne en affichant de l’information semblable à celle ci-dessous : # ping shuttle.mike.fr PING shuttle.mike.fr (132.195.99.2): 56 data bytes 64 bytes from 132.195.99.2: imcp_seq=0 ttl=254 time 5.9 ms 64 bytes from 132.195.99.2: imcp_seq=1 ttl=254 time 5.9 ms 64 bytes from 132.195.99.2: imcp_seq=2 ttl=254 time 5.9 ms ^C --- shuttle.mike.fr ping statistics --3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 5.9/5.9/5.9 ms Le programme doit être arrêté par la combinaison de touche Ctrl + C, sinon il continue à transmettre en permanence des paquets de données.

dig L'utilitaire dig permet de faire des requêtes DNS évoluées et fournit un maximum d'informations sur la requête. Il est très utile pour vérifier la bonne configuration d'un serveur DNS. Exemples d'utilisation de dig : Requête sur le champ "A" du nom www.mondomaine.org auprès du serveur DNS 12.42.112.242 : % dig @12.42.112.242 www.mondomaine.org A Requête sur la champ "MX" du nom mondomaine.org auprès du serveur DNS 12.42.112.242 : % dig @12.42.112.242 mondomaine.org MX Requête sur tous les champs du nom mondomaine.org auprès du serveur DNS 12.42.112.242 : % dig @12.42.112.242 mondomaine.org ANY Requête inverse (i.e. reverse DNS) sur l'IP 12.42.111.242 auprès du serveur DNS 12.42.112.242 :

© Copyright 2004 Stéphane Gill

Page 20

Résolution de nom avec Bind

% dig @12.42.112.242 -x 12.42.111.242 La sortie de la commande dig est très détaillée ; la réponse à la requête (la partie qui vous intéressera le plus !) se trouve en dessous de la ligne suivante : ;; ANSWER SECTION:

Équilibrage des charges L’idée est de partager la charge supportée par un serveur Web entre plusieurs serveurs. Cette astuce est connue sous le nom « DNS round robin ». Supposons que deux serveurs Web, www1.stephane.gill (192.168.10.10) et www2.stephane.gill (192.168.10.20) sont disponibles. Les charges entre ces deux serveurs doivent être équilibrées. Pour ce faire, les lignes suivantes doivent être ajoutées dans le fichier de zone stephane.gill : www1 IN A 192.168.10.10 www2 IN A 192.168.10.20 www IN CNAME www1 www IN CNAME www2 Lorsqu’un utilisateur lance une requête sur le serveur www.stephane.gill, c’est le premier serveur qui répond, puis, si un second utilisateur lance une nouvelle requête sur le même serveur, le second serveur répondra et ainsi de suite. L’inconvénient de ce système est qu’il n’existe pas de moyen de savoir quel est le serveur le plus utilisé. Il s’agit uniquement de cycles aveugles. Si l’un des serveurs tombe en panne, le DNS renverra toujours l’adresse de ce serveur. Ainsi, certaines personnes atteindront le serveur Web et d’autres non. Il existe des solutions matérielles pour gérer de façon plus efficace deux serveurs Web. Voici quelque exemple de produits : •

Web Director (http://www.radware.com);



Ace Director (http://wwwalteon.com);



Local Director (http://www.cisco.com).

© Copyright 2004 Stéphane Gill

Page 21

Résolution de nom avec Bind

Références Paul Albitz et Cricket Liu, DNS and Bind, O’Reilly and Associates, 2001, 601 p..

© Copyright 2004 Stéphane Gill

Page 22

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close