:: News .:. Documents .:. Forum .:. Downloads .:. Bibliographie .:. Liens .:. Contact  :: 


Home
  :. News
  .: Documents
    .: Notions
    .: Protocoles
    .: Sécurité
    .: Architecture
    .: Prog
    .: Systèmes
  :. Forum
  .: Downloads
  :. Bibliographie
  .: Liens
  :. Contact

Chat

  Nickname:


irc: #guill.net

Forum



 
Installation et configuration d'un serveur DNS  
 

 

Introduction

Le DNS est le Domain Name System. C'est l'ensemble des règles utilisées par les machines et les logiciels pour établir, entre autres choses, la correspondance entre les noms de machines et les adresses IP, dont chaque machine sur le net est pourvue. Ce document explique comment définir ces correspondances à l'aide d'un système Linux. Une correspondance est tout simplement une relation entre deux objets, un nom de machine et l'adresse IP de cette machine.

Le service de résolution de nom sous Linux est assuré par un programme appelé named. Il fait partie du paquetage « bind ». named est inclus dans la plupart des distributions de Linux. Le service DNS est une base de données à l'échelle du réseau tout entier.

Notre propre domaine

J’ai défini le propre domaine de l’entreprise : guill.net et y est déclaré quelques machines. Celui-ci ne sera pas publié sur Internet car nous n’y étions pas autorisés et ceci nous était inutile. Il nous servira uniquement comme serveur de nom interne.

J’ai commencé à créer le domaine guill.net avec cette ligne dans /etc/named.conf :

  ______________________________________________________________________
  zone "0.0.127.in-addr.arpa" {
          type master;
          file "pz/127.0.0";
  };
  ______________________________________________________________________

L'absence de « . » à la fin des noms de domaine de ce fichier signifie que nous allons définir la zone 0.0.127.in-addr.arpa et que tout est stocké dans un fichier appelé pz/127.0.0. Ce fichier se présente comme ceci :

  ______________________________________________________________________
   0.0.127.in-addr.arpa. IN SOA ns.guill.net support.guill.net. (
   6  ;Serial
   108000 ; Refresh
   36000  ; Retry
   4320000 ; Expire
   38400 ) ; Minimum TTL
                           NS      ns.guill.net.
   1                       PTR     localhost.
  ______________________________________________________________________

Notez bien le « . » à la fin de tous les noms de domaine complets de ce fichier. L'origine (l'emplacement dans la hiérarchie du service DNS) d'un fichier de zone est indiquée dans la zone section du fichier named.conf. Dans notre cas, c'est 0.0.127.in-addr.arpa.

Ce « fichier de zone » (« zone file »), contient 3 « resource records » (RRs) : un SOA RR, un NS RR et un PTR RR.

SOA est l'abréviation de « Start Of Authority » (Origine de l'Autorité).

NS est le « resource records » pour le serveur de noms (NS = Name Server). La ligne NS      ns.guill.net. dit au service DNS quelle machine est le serveur de noms pour le domaine 0.0.127.in-addr.arpa, c'est ns.guill.net. ns est le nom habituel des serveurs de noms, tout comme www pour les serveurs Web, mais c'est simplement une habitude, on peut choisir n'importe quel nom.

Et finalement le PTR dit que l'adresse 1 dans le sous réseau 0.0.127.in-addr.arpa, donc 127.0.0.1 est appelé localhost.

Le champ SOA est le préambule de tous les fichiers de zone, et il doit y en avoir exactement un dans chaque fichier de zone. Ce champ SOA décrit la zone, son origine (ici, une machine appelée ns.guill.net), qui est responsable de son contenu (support@guill.net), de quelle version du fichier de zone il s'agit (serial : 6), et quelques autres paramètres pour le cache et les serveurs DNS secondaires.

J’ai relancé le service named (avec la commande ndc restart) et j’ai regardé le résultat avec la commande nslookup :

  $ nslookup

  Default Server:  localhost
  Address:  127.0.0.1

  > 127.0.0.1
  Server:  localhost
  Address:  127.0.0.1

  Name:    localhost
  Address:  127.0.0.1

Je suis arrivé à obtenir localhost à partir de 127.0.0.1. Maintenant, pour le sujet qui nous préoccupe, le domaine guill.net, j’ai inséré une nouvelle zone dans le fichier named.conf :

  ______________________________________________________________________
  zone "guill.net" {
  notify no;
  type master;
  file "pz/guill.net";
  };
  ______________________________________________________________________

J’ai ensuite décrit le fichier de la zone guill.net :

  ______________________________________________________________________
  guill.net. IN SOA ns.guill.net. support.guill.net. (
   2004
   108000
   36000
   4320000
   38400 )
   NS ns
   MX 10 mail.guill.net. ;serveur de mail de guill.net
   ;
   localhost A 127.0.0.1
   mail  A 192.98.1.68
   ns  A 127.0.0.1
   www  A 195.25.252.194
  _____________________________________________________________________

Il y a deux choses à noter à propos du champ SOA. ns.guill.net doit absolument être une vraie machine possédant un champ A. Il n'est pas légal d'avoir un champ CNAME pour la machine mentionnée dans le champ SOA. La deuxième chose à noter est que support.guill.net doit se lire comme support@guill.net. Ce doit être un alias de mail ou une véritable boîte aux lettres électroniques, et la personne qui maintient le DNS doit la lire régulièrement. Tous les mails concernant l'administration du domaine seront envoyés à cette adresse.

Il y a un nouveau RR (Resource Record) dans ce fichier, c'est le MX, pour Mail eXchanger. Il indique aux systèmes de gestion du courrier électronique à quelle machine envoyer le mail adressé à someone@guill.net, dans notre cas à mail.guill.net. Le nombre devant chaque machine est sa priorité vis-à-vis du champ MX, le RR avec le numéro le plus faible (10) correspond à la machine à laquelle le courrier doit être adressé en priorité.

Le site Internet www.guill.net est hébergé par une société située au Canada et possédant une adresse IP fixe. Pour notre réseau interne, le site www.guill.net devait faire partie de notre réseau, aucune de nos machines dans notre réseau privé ne pouvait avoir accès à notre site Internet. J’ai donc dû redirigé tous les appels à www.guill.net vers l’adresse IP de l’hébergeur de notre site Web. La ligne www A 195.252.252.194 permet de faire cette redirection.

J’ai relancé named en tapant ndc restart et examiné le résultat avec nslookup :

> nslookup
Default Server:  localhost
Address:  127.0.0.1

> set q=any
> guill.net
Server:  localhost
Address:  127.0.0.1

guill.net
        origin = ns.guill.net
        mail addr = support.guill.net
        serial = 2004
        refresh = 108000 (1d6h)
        retry   = 36000 (10H)
        expire  = 4320000 (7w1d)
        minimum ttl = 38400 (10h40m)
guill.net nameserver = ns.guill.net
guill.net preference = 10, mail exchanger = mail.guill.net
guill.net nameserver = ns.guill.net
ns.guill.net      internet address = 127.0.0.1
mail.guill.net    internet address = 192.98.1.68

Voyons ce que cela donne avec www.guill.net :

> www.guill.net
Server:  localhost
Address:  127.0.0.1

www.guill.net     internet address = 195.25.252.194
guill.net nameserver = ns.guill.net
ns.guill.net      internet address = 127.0.0.1

La moitié du travail est faite, il faut maintenant définir la zone inversée qui effectuera le travail inverse de celui que nous venons de faire.

La zone inversée

Maintenant, on a besoin d'une zone inversée pour que l'on puisse retrouver le DNS à partir de l'adresse. Ce nom est utilisé par différents types de serveurs (FTP, IRC, WWW et autres). Pour un accès complet aux services sur Internet, la zone inversée est indispensable.

L’adresse IP de mon réseau étant 192.98.1.0, j’ai alors mis ceci dans mon fichier named.conf :

  ______________________________________________________________________
  zone "1.98.192.in-addr.arpa" {
 notify no;
 type master;
 file "pz/192.98.1";
};
  ______________________________________________________________________

C'est exactement comme pour le 0.0.127.in-addr.arpa et le contenu est similaire :

  ______________________________________________________________________
  1.98.192.in-addr.arpa. IN SOA ns.guill.net support.guill.net. (
   6
   108000
   36000
   4320000
   38400 )
                        NS      ns.guill.net.
  68   PTR mail.guill.net.
  ______________________________________________________________________

J’ai redémarré le service named (ndc restart) et examiné le travail avec nslookup :

  ______________________________________________________________________
  > 192.98.1.68
  Server:  localhost
  Address:  127.0.0.1
  Name:    mail.guill.net
  Address:  192.98.1.68
  ______________________________________________________________________

J’ai ensuite regardé en détail pour m'en assurer :

  ______________________________________________________________________
  > ls -d 1.98.192.in-addr.arpa
  [localhost]
  $ORIGIN 1.98.192.in-addr.arpa.
  @                       10h40m IN SOA   ns.guill.net support.guill.net. (
                                        6               ; serial
                                        1d6h            ; refresh
                                        10H             ; retry
                                        7w1d            ; expiry
                                        10h40m )                ; minimum

                          10h40m IN NS    ns.guill.net.
  68                      10h40m IN PTR   mail.guill.net.
  @                       10h40m IN SOA   ns.guill.net support.guill.net. (
                                        6               ; serial
                                        1d6h            ; refresh
                                        10H             ; retry
                                        7w1d            ; expiry
                                        10h40m )                ; minimum
  ______________________________________________________________________

Xavier
 




Sondage

Quel est votre connexion à Internet aujourd'hui ?
 
RTC 56Kbps
ADSL simple de 128 à 2048 Kbps
ADSL + Téléphonie (+TV) de 128 à 2048 Kbps
ADSL simple jusqu'à 20Mbps
ADSL + Téléphonie (+TV) jusqu'à 20Mbps
Autres (RNIS, Satellites bi-directionnel...)
Total :
3241

Recherche


Docs
   Pflogsumm (Analyseur de log mail pour Postfix)
   Proftpd (Mise en service d'un serveur FTP avec proftpd sous Linux)
   Openldap (Mise en service d'un serveur LDAP sous Linux)
   Gestion des périphériques en c++ builder (Communication RS232 en C++ Builder)
   Les sockets windows (Windows Sockets : un cours accéléré)

guill.net©1999-2024