Domain Name System. Erwan.Mas@nic.fr Mohsen.Souissi@nic.fr AFNIC (12/12/07) DNS - 1



Documents pareils
Domain Name Service (DNS)

Domain Name Service (DNS)

Domain Name System. F. Nolot

Domain Name System ot ol F. N 1

DNS. Olivier Aubert 1/27

DNS : Domaine Name System

B1-4 Administration de réseaux

Résolution de noms. Résolution de noms

Nommage et adressage dans Internet

Gérer son DNS. Matthieu Herrb. tetaneutral.net. Atelier Tetaneutral.net, 10 février

Master d'informatique 1ère année Réseaux et protocoles

Domaine Name Service ( DNS )

Bind, le serveur de noms sous Linux

Réseaux. DNS (Domaine Name System) Master Miage 1 Université de Nice - Sophia Antipolis. (second semestre )

Installation Serveur DNS Bind9 Ubuntu LTS

Introduction au DNS. Les noms de domaine s'écrivent de la gauche vers la droite, en remontant vers la racine et sont séparés par un "." (point).

Le service de nom : DNS

M Architecture des réseaux

Ce cours est la propriété de la société CentralWeb. Il peut être utilisé et diffusé librement à des fins non commerciales uniquement.

Administration Système & Réseau. Domain Name System Historique & Concepts Fonctionnalités & Hiérarchie Requêtes & Base de donnée DNS

Sur un ordinateur exécutant Windows 2000 Server Ayant une adresse IP statique

LOSLIER Mathieu. Filière Informatique et Réseau 1 ère année. TP DNS. Responsable : LOHIER Stephane. Chargé de TD : QUIDELLEUR Aurélie

Réseaux IUP2 / 2005 DNS Système de Noms de Domaine

Résolution de nom avec Bind

TP de réseaux : Domain Name Server.

- FICHE DE PROCEDURE - Configurer un serveur DNS avec Bind9 sur Debian

Service de noms des domaines (Domain Name System) Cours administration des services réseaux M.BOUABID,

TP DNS Utilisation de BIND sous LINUX

Domaine Name System. Auteur: Congduc Pham, Université Lyon 1. Figure 1: Schéma des salles TP11 et TD4

machine.domaine

Administration réseau Résolution de noms et attribution d adresses IP

Étude de l application DNS (Domain Name System)

DNS ( DOMAIN NAME SYSTEM)

Résolution de noms. Résolution de noms

INTERNET & RESEAUX. Dino LOPEZ PACHECO lopezpac@i3s.unice.fr

Il est possible d associer ces noms aux langages numérique grâce à un système nommé DNS(Domain Name System)

Chapitre 2: Configuration de la résolution de nom

Cours admin 200x serveur : DNS et Netbios

Présentation du système DNS

DNS et Mail. LDN 15 octobre DNS et Mail. Benjamin Bayart, Fédération FDN. DNS - fichier de zone. DNS - configuration

TCP/IP - DNS. Roger Yerbanga contact@yerbynet.com

BIND : installer un serveur DNS

1 Configuration réseau des PC de la salle TP

titre : CENTOS_BIND_install&config Système : CentOS 5.7 Technologie : Bind 9.3 Auteur : Charles-Alban BENEZECH

Installer un domaine DNS

Comment fonctionne le serveur cache (1) DNS Session 2: Fonctionnement du cache DNS. Historique du support de cours

1 Présentation du module sr005 2 I Administration d un serveur DNS... 2 II Organisation... 2

L annuaire et le Service DNS

LYCEE FRANCO-MEXICAIN HOMERO 1521 COLONIA POLANCO MEXICO ; D.F.

6 1 ERE PARTIE : LES PRINCIPES DE BASE DE DNS

TP DHCP et DNS. Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A

Administration de Parc Informatique TP03 : Résolution de noms

DOMAIN NAME SYSTEM. CAILLET Mélanie. Tutoriel sur le DNS. Session Option SISR

Internet Le service de noms - DNS

CREER UN ENREGISTREMENT DANS LA ZONE DNS DU DOMAINE

Domain Name System. Schéma hiérarchique. Relation

Introduction au DNS. Bertrand Bonnefoy-Claudet. 10 février 2014

Module 12 : DNS (Domain Name System)

Exemple d application: l annuaire DNS Claude Chaudet

V - Les applications. V.1 - Le Domain Name System. V Organisation de l espace. Annuaire distribué. Définition. Utilisation par le resolver

Installation du service DNS sous Gnu/Linux

Réseaux. 1 Généralités. E. Jeandel

TP2 - Conguration réseau et commandes utiles. 1 Généralités. 2 Conguration de la machine. 2.1 Commande hostname

Réseaux - Cours 4. Traduction d adresse (NAT/PAT) et Service de Nom de Domaine (DNS) Cyril Pain-Barre. IUT Informatique Aix-en-Provence

Mise en place Active Directory / DHCP / DNS

Le NIC France. Annie Renard INRIA. BP , Le Chesnay CEDEX Septembre 1995

Windows Internet Name Service (WINS)

LE RESEAU GLOBAL INTERNET

Introduction...3. Objectifs...3 Contexte...3 nslookup/dig/host...3 whois...3. Introduction...4

L3 informatique Réseaux : Configuration d une interface réseau

1 Résolution de nom Introduction à la résolution de noms Le système DNS Les types de requêtes DNS...

INSTALLATION D UN SERVEUR DNS SI5

Protocoles DHCP et DNS

Installation d un serveur DNS (Domaine name System) sous Ubuntu Server 12.10

Outils de l Internet

Introduction aux Technologies de l Internet

Mise en place d un serveur DNS sous linux (Debian 6)

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

ASRb/Unix Avancé II. Chapitre 2. Utilitaires réseaux. Arnaud Clérentin, IUT d Amiens, département Informatique

Mac OS X Server Administration des services réseau. Pour la version 10.3 ou ultérieure

TP HTTP. Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A

Algorithmique et langages du Web

Applications. Applications. Le système de nommage d Internet: Domain Name System. Applications. service de noms

DHCP et NAT. Cyril Rabat Master 2 ASR - Info Architecture des réseaux d entreprise

Protocoles IP (2/2) M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom Contributions : S Lohier

Ce TP consiste à installer, configurer et tester un serveur DNS sous Linux. Serveur open source : bind9 Distribution : Mandriva

Serveurs de noms Protocoles HTTP et FTP

IP & Co. 1. Service DHCP. L'objectif de ce TP est de voir l'ensemble des services élémentaires mis en oeuvre dans les réseaux IP.

Gilles GUETTE IRISA Campus de Beaulieu, Rennes Cedex, France

Installation Windows 2000 Server

Construction d un fichier de zone Déboguage et dépannage

Proxy et reverse proxy. Serveurs mandataires et relais inverses

Serveur DNS et DHCP couplé à LDAP Debian GNU/Linux

Télécommunications. IPv4. IPv4 classes. IPv4 réseau locaux. IV - IPv4&6, ARP, DHCP, DNS

TD n o 8 - Domain Name System (DNS)

Plan. Programmation Internet Cours 3. Organismes de standardisation

Quelques protocoles et outils réseaux

Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt

Transcription:

Domain Name System Erwan.Mas@nic.fr Mohsen.Souissi@nic.fr DNS - 1

Introduction DNS - 2

INTERNET Un espace de communication, sans frontière, où des millions d 'ordinateurs sont connectés. Les services les plus courants : - Le service Web - La messagerie électronique DNS - 3

INTERNET L'ordinateur qui est connecté à Internet est identifié par numéro l' adresse IP. exemple : 192.56.23.87 Pour communiquer un programme doit connaître l'adresse IP de son interlocuteur. DNS - 4

INTERNET et le nommage Les adresses IP ce n'est pas facile a mémoriser. On a préféré nommer les machines. On a construit une base de donnée, pour associer un nom et une adresse IP. Système DNS DNS - 5

Le système DNS (Domain Name System) DNS - 6

DNS Sommaire introduction arborescence architecture base de données une implémentation du DNS : BIND DNS - 7

Introduction (1) Besoin nommer une machine sur le réseau en effectuant une correspondance entre le nom choisi et le numéro IP (résolution de nom) trouver le nom d 'une machine à partir de son numéro IP (résolution inverse) identifier un groupe de machines ayant des ressources réseau communes (relais de messagerie,... ) DNS - 8

Introduction (2) Quelques exemples simples : nom de domaine : afnic.asso.fr nom de machine : ftp.afnic.asso.fr adresse ip 192.134.4.13 nom de machine : relay1.afnic.asso.fr adresse ip 192.134.4.17 nom de machine : www.afnic.asso.fr adresse ip 192.134.4.11 nom de machine : www.nic.fr adresse ip 192.134.4.11 adresse IP : 192.134.4.11 www.afnic.asso.fr www.nic.fr Une information dans le DNS indique vers quelle machine diriger le courrier électronique : Jean.Dupont@afnic.asso.fr relay1.afnic.asso.fr adresse ip 192.134.4.17 DNS - 9

Introduction (3) DNS URL Soit un nom de domaine : abcd.fr Url de site web : - http://www.abcd.fr - http://dom.abcd.fr/doc - http://www.tot3.abcd.fr/doc - http://abcd.fr/info/pub/prod.htm Adresse de messagerie électronique : - info@abcd.fr - isabel@www.abcd.fr - isabel@sousdom.abcd.fr DNS - 10

Introduction (4) Jusqu'en 1984 : fichier hosts.txt /etc/hosts inadapté à grande échelle temps de diffusion des infos (par ftp!) système centralisé quelques centaines de machines dans les années 70 plusieurs millions aujourd'hui correspondance statique ne contient que des infos réduites noms enregistrés sous le domaine arpa collision rapide de noms DNS - 11

Introduction (5) Après 1984 : Domain Name System Paul Mockapetris - RFC 882 883 puis 1034 1035 système hiérarchisé et distribué modèle en arborescence ( similaire à l'arborescence d'un système de fichiers avec ses répertoires ) gestion décentralisée des bases de données chaque site est maître de ses données informations complémentaires : relais de messagerie,... correspondance dynamique limite les risques de collisions de noms DNS - 12

Introduction (6) RFC's 1032, 1033, 1034, 1035, 1101, 1122, 1123, 1183, 1713, 1794, 1912, 1995, 1996, 2010, 2136, 2137, 2181, 2308, 2317, 2535-2541, 2606 Documentation http://www.dns.net/dnsrd/ (RFC, drafts, FAQ,... ) http://www.nic.fr/guides/ http://www.nic.fr/formation/ Livres DNS and BIND (Paul Albitz & Cricket Liu) DNS - 13

Arborescence (1) Organisation générale le système est organisé sous la forme d'une arborescence, composée par la racine (root), sommet de l'arbre, qui est notée par un point «.» des noeuds, identifiés par un label (fr, com,... ), dont les informations sont stockées dans une base de données propre à chacun des noeuds base de données du système une base de données par noeud l'ensemble de ces bases de données constitue le système d'information hiérarchique et distribué du DNS DNS - 14

Arborescence (2) adresse IP nom nom adresse IP. arpa com net fr in-addr apnic ripe Nic 193 192 whois whois www 0 1... 255 2 www.nic.fr. whois.ripe.net. 192.134.4.11 193.1.2.133 133 193.1.2.133 133.2.1.193.in-addr.arpa. whois.ripe.net DNS - 15

Arborescence (3) Parcours de l'arbre et nom de domaine la descente dans l'arbre est représentée de la droite vers la gauche chaque niveau de l'arborescence est séparé par un point nic. fr. séparateur racine 2éme niveau 1er niveau DNS - 16

Arborescence (4). arpa com tn net fr in-addr ffti apnic ripe nic 193 whois = whois.ripe.net 0 1... 255 2 133 = 133.2.1.193.in-addr.arpa DNS - 17

Arborescence (5) Délégation d'un noeud père vers un noeud fils un noeud peut être père de plusieurs noeuds fils le lien est effectué en précisant au niveau du noeud père où trouver la base de donnée des noeuds fils but distribuer la gestion de chaque noeud à des entités différentes une base de données pour chaque noeud, l'ensemble de ces bases étant géré de façon décentralisé pour définir des domaines de responsabilités différentes DNS - 18

Arborescence (6) Dénomination des domaines caractères autorisés 'A...Z' 'a...z' '0...9' '-' pas de différences entre majuscule et minuscule nom total limité à 255 caractères label est unique au niveau d'un noeud label au niveau d 'un noeud limité à 63 caractères DNS - 19

Arborescence (7) IDN - International Domain Name Prendre en compte les alphabets mondiaux Compatible avec le protocole DNS existant 4 RFC RFC 3454/RFC 3491/RFC 3490/RFC 3492 Exemple: http://france2.télévision-française.fr/ http://france2.xn-tlvision-franaise-msbzb.fr/ DNS - 20

Arborescence (8) Notion de domaine et de zone le domaine est l'ensemble d'une sous arborescence exemple : le domaine fr. rassemble toute la sous arborescence à partir du noeud fr la zone est la partie descriptive pour un niveau donné : elle est restreinte à un noeud une zone est constituée de la base de données décrivant un noeud DNS - 21

Arborescence (9) DNS - 22

Arborescence (10) Résolution nom numéro IP le nom de machine est formé en ajoutant le label choisi suffixé avec «.» avec le domaine auquel cette machine appartient ns1. nic. fr. label séparateur racine 2éme niveau 1er niveau DNS - 23

Arborescence (11) Analogie un noeud contient à la fois des noms de machines et des sous-domaines, comme, pour un système de fichiers, un répertoire contient des fichiers et des sous-répertoires DNS - 24

Arborescence (12) Résolution inverse retrouver à partir d'un numéro IP le nom d'une machine associée l'arborescence se trouve sous le domaine in-addr.arpa (sous ip6.int pour ipv6) l'arborescence est subdivisée à partir de la notation classique sur 4 octets des numéros IPv4 DNS - 25

Arborescence (13) Parcours de l'arbre et résolution inverse le nom de domaine est inversé par apport au numéro IP domaine : 133.2.1.193.in-addr.arpa. pour le numéro IP : 193.1.2.133 la descente dans l'arbre est représentée de la droite vers la gauche chaque niveau de l'arborescence est séparé par un point DNS - 26

Arborescence (14). arpa com tn net fr in-addr ffti ripe nic 193 whois = whois.ripe.net 0 1... 255 2 133 = 133.2.1.193.in-addr.arpa DNS - 27

Arborescence (15) Le même mécanisme s'applique pour la sous arborescence in-addr.arpa comme pour les domaines «classiques» (nic.fr) : par exemple le domaine 11.193.in-addr.arpa est un sous domaine du 193.inaddr.arpa, le noeud 11.193.in-addr.arpa étant défini par sa base de données Tout numéro officiellement attribué à une machine doit être déclaré dans cette arborescence DNS - 28

Arborescence (16) Racine : 13 bases de données (serveurs de nom) répartis dans le monde connaissant tous les serveurs des domaines de 1er niveau (.fr.arpa.com... ) serveur origine géré par l 'IANA / ICANN A.ROOT-SERVERS.NET serveurs miroirs de B.ROOT-SERVERS.NET à M.ROOT-SERVERS.NET DNS - 29

Arborescence (17) Top-level domain (TLD) : Domaine de 1er niveau - RFC 1591 à 2 lettres : code ISO-3166 de chaque pays à 3 lettres :.com,.net,.org,.edu,.gov,.mil,.int à 4 lettres :.arpa Nouveaux TLD ( juin 2001 ) :.biz,.info,.name,.aero,.coop,.info,.museum DNS - 30

Architecture (1) Système client/serveur client resolver : interface cliente permettant d'interroger un serveur les machines clientes pointent généralement vers un serveur par défaut (/etc/resolv.conf sur Unix) serveur chaque serveur gère sa propre base de données optimisation par des systèmes de cache et de réplication DNS - 31

Architecture (2) Au-dessus d 'IP service s'exécutant sur le port 53 droits de super utilisateur ( unix ) UDP et TCP (TCP n'est pas réservé qu'au transfert de zone et est utilisé si la taille de la réponse est supérieure à la limite d 'un paquet UDP de 512 octets) RFC 1035 DNS - 32

Architecture (3) Fonctionnement du client : le resolver permet de communiquer avec les serveurs DNS 2 modes d'interrogation récursif : le client envoie une requête à un serveur, ce dernier devant interroger tous les autres serveurs nécessaires pour renvoyer la réponse complète au client (mode utilisé par les machines clientes en général) itératif : le client envoie une requête à un serveur, ce dernier renvoyant la réponse si il la connaît, ou le nom d'un autre serveur qu il suppose plus renseigné pour résoudre cette question (mode utilisé par le resolver des serveurs en général) DNS - 33

Architecture (4) serveur www.inria.fr?.. r e s o l v e r fr ns1.nic.fr, ns2.nic.fr,... www.inria.fr? inria.fr dns.inria.fr,... www.inria.fr? www.inria.fr 128.93.3.29 serveur fr serveur inria.fr serveur fr nic.fr de inria.fr 128.93.3.29 www.inria.fr? resolver Machine A Int. Récursive Int. itérative DNS - 34

Architecture (5) Serveurs types de serveurs serveur cache serveur «faisant suivre» (forwarder) «esclave» (slave - forwarder-only) serveur ayant autorité sur une (plusieurs) zone(s) primaire (source des données) secondaire (miroir des données) DNS - 35

Architecture (6) Serveur cache éviter la surcharge inutile du réseau supprimer les délais du réseau amoindrir la charge des autres serveurs tout serveur possède en général au minimum un cache DNS - 36

Architecture (7) Serveur cache configuration minimale base de données nécessaire adresses des serveurs de la racine reverse du loopback 1.0.0.127.in-addr.arpa les données du cache possèdent une durée de vie limitée Time To Live - ttl) afin de permettre son rafraîchissement et la prise en compte des modifications il s'enrichit au fur et à mesure par les données récoltées pour résoudre les requêtes des clients une requête déjà demandée est résolue à partir du cache du serveur DNS - 37

Architecture (8) serveur c a c h e www.inria.fr 128.93.3.29 r e s o l v e r. serveur fr serveur inria.fr serveur 128.93.3.29 www.inria.fr? resolver Machine A Int. Récursive Int. Itérative DNS - 38

Architecture (9) serveur c a c h e r e s o l v e r chronos.inria.fr? chronos.inria.fr 128.93.45.201 fr serveur inria.fr serveur 128.93.45.201 chronos.inria.fr? resolver Machine A int. récursive int. itérative DNS - 39

Architecture (10) Serveur «faisant suivre» / esclave ces types de serveurs possèdent une liste de serveurs à interroger (le serveur fait suivre la requête reçue vers d'autres serveurs par une requête elle-même récursive) «faisant suivre» vérifie si la réponse n'est pas dans son cache sinon fait suivre à un des serveurs la requête en cas d'échec tente de résoudre lui même la demande enrichissement rapide d'un cache partagé (au sein d 'un organisme pour ne pas surcharger la liaison vers l 'extérieur) DNS - 40

Architecture (11) Serveur «faisant suivre» / esclave esclave vérifie si la réponse n 'est pas dans son cache sinon fait suivre à un des serveurs la requête en cas d 'échec avec tous les serveurs, il renvoie un code d'erreur enrichissement rapide d'un cache partagé pour un serveur n'ayant pas d'accès direct à tout l'internet DNS - 41

Architecture (12) Serveur ayant autorité sur une (plusieurs) zone(s) serveur primaire le serveur primaire d'une zone est la source des informations relatives à cette zone (il possède la base de données maître) il contient les informations à partir d'un fichier de données où l'on effectue les mises à jour. il a l'origine de l'autorité (Start Of Authority - SOA) sur cette zone DNS - 42

Architecture (13) Serveur ayant autorité sur une (plusieurs) zone(s) serveur secondaire c 'est un miroir sauvegardé sur disque de la base de données maître fonction de sauvegarde de répartition de charge et d'accessibilité le serveur secondaire d'une zone obtient les informations relatives à celle-ci automatiquement depuis un serveur primaire ou un autre secondaire il a également autorité sur cette zone DNS - 43

Architecture (14) serveur www.inria.fr?.. disque auth c a c h e r e s o l v e r fr : ns1.nic.fr www.inria.fr? inria.fr : dns.inria.fr www.inria.fr? 128.93.3.29 serveur fr serveur nic.fr serveur fr nic.fr de inria.fr 128.93.3.29 www.inria.fr? resolver host A int. récursive int. itérative DNS - 44

Architecture (15) Rafraîchissement des données entres serveurs autoritaires système classique un serveur secondaire d'une zone interroge à intervalles réguliers le serveur primaire de cette zone pour voir si une modification a eu lieu. La fréquence est indiquée par la valeur refresh défini dans le SOA ce type de mise à jour peut se faire entre un primaire et un secondaire ou entre secondaires DNS - 45

Architecture (16) Rafraîchissement des données entre serveurs autoritaires la version d 'une zone est identifiée par son numéro de série (serial) ; à chaque modification celui-ci doit être augmenté le transfert de zone le serveur secondaire transfère d'abord le SOA de la zone et vérifie si le numéro de série a augmenté si c'est le cas toute la zone est transférée (transfert total - AXFR) ou seules les nouvelles modifications entre les 2 versions sont transférées (transfert incrémental - IXFR - RFC 1995) DNS - 46

Architecture (17) Rafraîchissement des données entre serveurs autoritaires reprise en cas d 'échec en cas d 'échec de cette interrogation, le secondaire recommence toutes les retry secondes jusqu'à atteindre le temps d'expiration (expire), ces valeurs étant fixés également dans le SOA DNS - 47

Architecture (18) Rafraîchissement des données entres serveurs ayant autorités sur une zone DNS Change Notification (RFC 1996) après la prise en compte de modifications de la part du serveur primaire, ce dernier notifie les serveurs secondaires qu'une nouvelle version de la zone a été générée ce système de mise à jour ne peut se faire qu'entre un primaire et un secondaire accélère le rafraîchissement des données par rapport au système classique DNS - 48

Architecture (19) Remarques un serveur peut être à la fois serveur cache et autoritaire pour des zones : le cache possède alors des informations locales et non locales un serveur peut être à la fois primaire pour des zones et secondaire pour d'autres zones DNS - 49

Architecture (20) Remarques mode de fonctionnement d'un serveur récursif le serveur résout les requêtes récursives des clients et garde les informations obtenues dans son cache le cache stocke des informations pour lesquelles le serveur n 'a pas autorité serveurs cache de campus par exemple DNS - 50

Architecture (21) Remarques mode de fonctionnement d'un serveur itératif il répond toujours en fonction des données qu'il possède localement ne construit pas de cache pour des données non locales. une machine cliente (d'utilisateur final) ne doit jamais pointer sur un serveur de ce type comme serveur par défaut. mode permettant de limiter la charge d'un serveur (il ne résout pas toute la requête) serveurs de la racine, serveurs ayant autorité pour un grand nombre de zones DNS - 51

A B C D E F G NSI USA ISI USC USA PSI USA UNIV. MARYLAND NASA USA ISC USA DOD NIC USA Architecture (22) H I J K L M Army Resarch Lab USA NORDU SUEDE NSI USA RIPE NCC LINX UK ISI USA Wide Project JAPON http://www.root-servers.org/ DNS - 52

A C D G H J I M K F E B L DNS - 53

2500 2000 1500 1000 500 0 Sep-94 Nov-94 Jan-95 Mar-95 May-95 Jul-95 Sep-95 Nov-95 Jan-96 Mar-96 May-96 Jul-96 Sep-96 Nov-96 Jan-97 Mar-97 May-97 Jul-97 Sep-97 Nov-97 Jan-98 Mar-98 May-98 Jul-98 Sep-98 Nov-98 Jan-99 Mar-99 May-99 Jul-99 Sep-99 Nov-99 a.root-servers.net j.root-servers.net j.gtld-servers.net Ari Balogh abalogh@netsol.com DNS - 54

Base de données (1) Fichier de configuration du serveur Fichier des serveurs de la racine Un fichier par zone décrivant son contenu au moins le fichier du reverse loopback 1.0.0.127.in-addr.arpa DNS - 55

Base de données (2) Fichier de configuration localisation des données fichier serveurs de la racine fichiers de zone déclaration de l'autorité sur des zones primaire / secondaire mode de fonctionnement général récursif/itératif «faisant suivre», esclave,... DNS - 56

Base de données (3) Fichier des serveurs de la racine permet de démarrer la résolution d 'une requête si le serveur n'a aucune information contient la liste des serveurs de nom et leur adresse IP primaire : A.ROOT-SERVERS.NET. une quinzaine de serveurs secondaires à travers le monde peut être généré de la façon suivante : dig @a.root-servers.net. ns > root.cache DNS - 57

Base de données (4) Fichier de zone contient les données propres à chaque zone consiste en une liste de Resource Records (RR) le premier RR doit être le SOA (Start of Authorithy) qui décrit l'autorité technique de la zone directives spéciales DNS - 58

Base de données (5) Directives spéciales $ORIGIN spécifie le nom de domaine à ajouter à des enregistrements non pleinement qualifiés (non suffixés par un point) syntaxe : $ORIGIN <domaine> [<commentaire>] DNS - 59

Base de données (6) Directives spéciales $ORIGIN - exemple $ORIGIN exemple. $ORIGIN mon-domaine www IN CNAME serveur équivalent à : www. mon-domaine.exemple. IN CNAME serveur. mon-domaine.exemple. Par défaut $ORIGIN est positionné au nom du domaine que le fichier de zone décrit DNS - 60

Base de données (7) Directives spéciales $INCLUDE permet d'inclure un fichier dans le fichier de zone syntaxe : $INCLUDE <fichier> [<origin>] [<comment>] Si <origin> n'est pas spécifié la valeur courante est utilisée DNS - 61

Base de données (8) Directives spéciales $TTL (RFC 2308 - bind 8.2) spécifie le Time To Live par défaut à appliquer aux enregistrements qui n'ont pas ce paramètre spécifié dans leur déclaration syntaxe : $TTL <valeur> [<commentaire>] valeur [0-2147483647] DNS - 62

Base de données (9) Directives spéciales $TTL en règle générale lors de modification d une ressource importante il faut abaisser cette valeur (à quelques minutes) ttl+refresh (spécifié dans le SOA) AVANT la modification pour que celle-ci se propage rapidement DNS - 63

Base de données (10) temps t1 t2 emis par le primaire ttl primaire secondaire refresh ttl Information dans les serveurs caches t1 : date de l'abaissement du ttl de la ressouce t2 : date de la modification de la ressource ellemême DNS - 64

Base de données (11) Structure d 'un RR - RFC 1034 < nom @ > [<ttl>] [<classe>] <type> <données> [<commentaire>] <nom> : nom de l 'enregistrement auquel vont s'appliquer les informations @ : utilise la valeur courante de $ORIGIN comme nom <ttl> : durée de vie, en secondes, de l'enregistrement dans les caches <classe> : groupe d'appartenance - IN pour Internet <type> : type de l'enregistrement <données> : données associées au type DNS - 65

Base de données (12) Principaux RR - SOA (Start Of Autority) caractéristiques techniques de la zone : zone IN SOA primaire. email. ( serial refresh retry expire ttl ) DNS - 66

Base de données (13) Principaux RR - SOA email : contact technique de la zone remplacer le @ par le premier point non protégé (\) l'email doit être suivi d 'un point francis\.dupont.inria.fr. pour francis.dupont@inria.fr DNS - 67

Base de données (14) Principaux RR - SOA numéro de série : spécifie la version des données de la zone incrémenter ce numéro à chaque modification (entier sur 32 bits) format conseillé : YYYYMMDDxx 1997052702 DNS - 68

Base de données (15) Principaux RR - SOA refresh : intervalle, en secondes, entre 2 vérifications du numéro de série par les secondaires (24H - 86400s ; à ajuster si la zone est souvent modifiée) retry : intervalle en seconde entre 2 vérifications du numéro de série par les secondaires si la 1ere vérification a échoué (6H - 21400s ; à ajuster en fonction de sa connectivité) expire : durée d 'expiration de la zone sur un secondaire (41 jours -3600000s ) retry<<refresh<<expire DNS - 69

Base de données (16) Principaux RR - SOA ttl (time to live) - RFC 2308 - Negative caching spécifie le TTL pour le «negative caching», soit le temps que doit rester dans les caches une réponse négative suite à une question sur ce domaine (valeur recommandée de 1 à 3 heure). Il existe 2 types de réponses négatives : NXDOMAIN : aucun enregistrements ayant le nom demandé dans la classe (IN) n'existe dans cette zone NODATA : aucune donnée pour le triplet (nom, type, classe) demandé n'existe ; il existe d'autre enregistrements possédant ce nom, mais de type différent DNS - 70

Base de données (17) Principaux RR - NS (Name Server) indique un serveur de nom pour le nom spécifié (ce nom devient une zone dont la délégation est donnée au serveur en partie droite) zone IN NS serveur-nom1.domaine. IN NS serveur-nom2.domaine. Il faut spécifier les serveurs de noms de la zone que l'on décrit (associée au SOA) DNS - 71

Base de données (18) $ORIGIN nic.fr. $TTL 86400 @ IN SOA ns1.nic.fr. hostmaster.nic.fr. ( 1997052704 ;serial 86400 ;refresh 21600 ;retry 3600000 ;expire 3600 ; negative caching ttl ) IN NS ns1.nic.fr. IN NS ns2.nic.fr. www IN CNAME ns2.nic.fr. ftp 21600 IN A 192.34.4.45 DNS - 72

Base de données (19) Principaux RR - A (Adresse IPv4) indique l 'adresse IP associée à un nom machine.domaine. IN A 193.10.20.30 AAAA :Adresse IPv6 DNS - 73

Base de données (20) Principaux RR - PTR (Pointeur) indique le nom associé à un numéro IP dans l 'arborescence in-addr.arpa (ip6.arpa) 10.20.30.192.in-addr.arpa. IN PTR machine.domaine. DNS - 74

Base de données (21) Principaux RR - CNAME (Canonical Name) indique que le nom est un alias vers un autre nom (le nom canonique) alias IN CNAME nom.canonique. Nota un nom en partie droite d'un enregistrement (<données>) ne doit pas pointer vers un alias quand un nom a déjà un CNAME il est interdit de faire figurer d'autres enregistrements pour ce nom DNS - 75

Base de données (22) Principaux RR - CNAME (Canonical Name) - faux zone. IN MX 10 alias.zone. alias.zone. IN CNAME relais.zone. zone. IN NS alias.zone. alias.zone. IN CNAME serveur.zone. zone. IN SOA xxxx. yyy. ( zzzz... ) zone. IN CNAME www.zone. DNS - 76

Base de données (23) Principaux RR - CNAME (Canonical Name) - correct zone. IN MX 10 relais.zone. relais.zone. IN A 193.1.2.3 alias2.zone. IN CNAME alias1.zone. alias1.zone. IN CNAME canonical.zone. zone. IN SOA xxxx. yyy. ( zzzz... ) zone. IN A 193.2.3.4 Et l'enregistrement PTR correspondant dans les reverses DNS - 77

Base de données (24) Fichier de zone pour nic.fr $ORIGIN nic.fr. $TTL 86400 @ IN SOA ns1.nic.fr. hostmaster.nic.fr. ( 1997052704 ;serial 86400 ;refresh 21600 ;retry 3600000 ;expire 3600 ;negative ttl ) IN NS ns1.nic.fr. IN NS ns2.nic.fr. ; Suite ns1 IN A 193.10.20.30 ns2 IN A 192.5.6.7 machine IN A 193.10.20.31 www IN CNAME machine localhost IN A 127.0.0.1 DNS - 78

Base de données (25) Fichier du reverse 0.0.127.in-addr.arpa personne n'a la responsabilité de ce reverse pour le numéro 127.0.0.1dans la hiérarchie in-addr.arpa. le système l'utilise pour la résolution de requête vers lui-même si on ne le configure pas sur le serveur cette requête peut échouer : root serveur contacté mal configuré code erreur renvoie autre chose que localhost DNS - 79

Base de données (26) Fichier de zone pour 0.0.127.in-addr.arpa. 0.0.127.in-addr.arpa IN SOA ns1.nic.fr. hostmaster.nic.fr. ( 1997052704 ;serial 86400 ;refresh 21600 ;retry 3600000 ;expire 3600 ;negative ttl ) IN NS ns1.nic.fr. 1.0.0.127.in-addr.arpa. IN PTR localhost.nic.fr. DNS - 80

DNS et SMTP (1) Principaux RR - MX (Mail exchanger) email à quelqu-un@nom On cherche dans le DNS un MX indiquant la machine sur laquelle il faut envoyer le courrier pour nom. Un paramètre précise le poids relatif de l 'enregistrement MX : si plusieurs MX existent, le courrier est envoyé en 1er à la machine ayant le poids le plus bas, puis dans l 'ordre croissant des poids en cas d'échec nom IN MX 10 nom.relais1. IN MX 20 nom.relais2. IN MX 30 nom.relais3. DNS - 81

DNS et SMTP (2) Principaux RR - MX (Mail exchanger) Envoi d 'un message à nom - RFC 974 - (1) tri les MX par ordre croissant et contacte les machines dans cet ordre ; si une connexion est établie transfert ; sinon mail mis en file d'attente - (2) transfert sur nom.relais1 : le mail est traité localement - (3) transfert sur l'une des autres machines: on trie de nouveau les MX en supprimant les entrées de préférence supérieure on égale à celle associée à cette machine ; si la liste est vide erreur de configuration ; sinon on tente de contacter les machines de la même manière qu'en (1) DNS - 82

DNS et SMTP (3) Principaux RR - MX (Mail exchanger) wilcard MX nic.fr. IN MX 10 relais.nic.fr. *.nic.fr. IN MX 10 relais.nic.fr. associe le MX à tout nom inconnu dans le domaine, il n'est utilisé qu'en l'absence de tout autre RR associé à un nom. Exemple : nom.nic.fr. IN A IP pas de MX hérité des wilcards pour nom associer systématiquement un MX à chaque fois que l 'on définit un A RR et éviter les wilcards DNS - 83

DNS et SMTP (4) Principaux RR - MX (Mail exchanger) Si il n 'y a pas de MX associé à nom : SMTP utilise l 'adresse IP associé à ce nom (A RR) nom IN A IP si il n 'y a pas de RR, SMTP utilise les enregistrement wildcard MX si il n 'y a pas de wildcard MX => erreur DNS - 84

Délégation et sous domaine (1) faire figurer la délégation dans la zone parente => il s'agit d'enregistrement NS zone parente $TTL 86400 nic.fr. IN SOA ns1.nic.fr. hostmaster.nic.fr. ( 1997052704 ;serial 86400 ;refresh 21600 ;retry 3600000 ;expire 3600 ;negative ttl ) IN NS ns1.nic.fr. IN NS ns2.nic.fr. ns1.nic.fr. IN A 193.10.20.30 ns2.nic.fr. IN A 192.5.6.7 fille.nic.fr. IN NS ns1.inria.fr. IN NS ns.urec.fr. DNS - 85

Délégation et sous domaine (2) zone déléguée $ORIGIN fille.nic.fr. $TTL 86400 @ IN SOA ns1.inria.fr. hostmaster.inria.fr. ( 1997052704 ;serial 86400 ;refresh 21600 ;retry 3600000 ;expire 3600 ;negative ttl ) IN NS ns1.inria.fr. IN NS ns.urec.fr. DNS - 86

Délégation et sous domaine (3) Utilisation de la glue permet d'établir des liens nom IP avec les sous zones pour la cohérence de l'arbre DNS elle n'est nécessaire que dans le cas où les serveurs de la zone fille sont dans la même arborescence que le domaine fille.domaine. en cas de changement d 'adresse IP il faut modifier la zone fille et la zone parente DNS - 87

Délégation et sous domaine (4) dans le fichier de zone nic.fr fille.nic.fr. IN NS ns1.fille.nic.fr. IN NS ns.urec.fr. ns1.fille.nic.fr. IN A 192.5.6.7 dans le fichier de zone fille.nic.fr fille.nic.fr. IN SOA ns1.inria.fr. hostmaster.inria.fr. ( 1997052704 ;serial 86400 ;refresh 21600 ;retry 3600000 ;expire 3600 ;negative ttl ) IN NS ns1.fille.nic.fr. IN NS ns.urec.fr. ns1.fille.nic.fr. IN A 192.5.6.7 DNS - 88

BIND (1) Historique JEEVES : première implémentation du DNS par Paul Mockapetris (1984) BIND (The Berkeley Internet Name Domain) implémentation suivante sur système 4.3BSD UNIX par Kevin Dunlap Aujourd'hui BIND maintenu par Paul Vixie avec l 'Internet Software Consortium DNS - 89

BIND (2) Deux parties la partie serveur de noms : implémentée par la commande named (ou in.named) et named-xfer (ou in.named-xfer) pour les transferts de zone la partie client : bibliothèque C (libresolv.a ou libresolv.so.x) avec laquelle sont liées toutes les applications utilisant le DNS. Cette bibliothèque contient notamment une version de getaddrinfo(3) et getnameinfo(3) qui utilisent le DNS. DNS - 90

BIND (3) Développé par l'internet Software Consortium http://www.isc.org/ http://www.isc.org/bind.html Sources disponibles ftp://ftp.isc.org/isc/src/cur (version courante) ftp://ftp.isc.org/isc/src/testing (version en développement) ftp://ftp.nic.fr/pub/programmes/dns/ News comp.protocols.dns.bind comp.protocols.dns.ops comp.protocols.dns.std DNS - 91

BIND (4) Versions 4.9.8 ( ne doit etre utilise que si on ne peut pas utiliser la v8 ou v9 ) dernière version de la série 4.x fichier de configuration named.boot 8.2.4 implémentation des derniers RFCs Dynamic Updates - RFC 2136 Change Notification par défaut - RFC 1996 IXFR - RFC 1995 (expérimental) Secure DNS - RFC 2535 + dnskeygen $TTL - RFC 2308 nouveau format du fichier de configuration named.conf transfert de zone plus performant (format many-answers) pas de libresolv partagée ; la librairie statique s'appelle libbind.a DNS - 92

BIND (5) 9.1.3 Support de DNSSEC,TSIG Support de IP v6 Enregistrements Spécifiques Requêtes Extension du protocole DNS IXFR,... Système de vue pour les zones Support des systèmes multiprocesseur DNS - 93

BIND - serveur cache (6) fichier de config named.conf // répertoire des données options { }; directory "/usr/local/bind/data"; // cache des serveurs de la racine zone "." in { type hint; file "root.cache"; }; // zone primaire du reverse loopback zone "0.0.127.in-addr.arpa" { type master; file "db.localrev"; }; DNS - 94

BIND - serveur cache esclave(7) fichier de config named.conf options { }; zone "." { // répertoire des données directory "/usr/local/bind/data"; // on fait tout suivre forwarders {192.1.2.3 ; 193.1.2.3 }; options forward-only ; // cache des serveurs de la racine type hint ; file "root.cache"; }; zone "0.0.127.in-addr.arpa" { type master; file "db.localrev" ; }; DNS - 95

BIND - serveur autoritaire et cache (8) fichier de config named.conf options { // répertoire des données directory "/usr/local/bind/data"; }; zone "." { // cache des serveurs de la racine type hint; file "root.cache"; }; zone "0.0.127.in-addr.arpa" { // zone primaire type master; file "db.localrev"; }; DNS - 96

BIND - serveur autoritaire et cache (9) fichier de config named.conf - suite zone "nic.fr" { // zone primaire type master; file "db.nic.fr"; }; zone "30.20.192.in-addr.arpa" { // zone primaire type master; file "db.nic-rev"; }; zone "inria.fr" { // zone secondaire type slave; file "db.inria.fr"; masters {192.1.1.1 ; }; }; DNS - 97

BIND - serveur autoritaire (10) fichier de config named.conf options { }; directory "/usr/local/bind/data"; recursion no; // non récursif zone "." { type hint; file "root.cache"; }; zone "0.0.127.in-addr.arpa" { type master; file "db.localrev"; }; DNS - 98

BIND - serveur autoritaire (11) fichier de config named.conf - suite zone "nic.fr" { type master; file "db.nic.fr"; }; zone "30.20.10.in-addr.arpa" { type master; file "db.nic-rev"; }; DNS - 99

BIND (12) - Migration V4 V8 générer named.conf à partir de named.boot outil de conversion bin/named/named-bootconf.pl exemple de fichier named.conf bin/named/named.conf DNS - 100

BIND (13) Relancer le serveur kill -HUP pid Debugger Dump du contenu du cache kill -INT pid le résultat est dans un fichier named_dump.db Passage en mode debug avec trace dans le fichier named.run kill -USR1 pid chaque nouvelle utilisation de cette commande augmente le niveau de début arrêt de ce mode kill -USR2 pid DNS - 101

Outils Dans le package BIND nslookup dig (domain information groper) host h2n (convertit un fichier /etc/hosts en fichiers de zone) checksoa Ripe ftp://ftp.ripe.net/tools/dns/host.tar.z A. Romão : Tools for DNS debugging ftp://ftp.ripe.net/rfc/rfc1713.txt NIC France http://www.nic.fr/zonecheck/ DNS - 102

Pièges à éviter (1) La durée refresh est d'au moins une heure, La durée retry est d'au moins une heure, la durée expire est d'au moins une semaine et est très supérieure à la durée refresh, la durée TTL est d'au moins une heure pour les enregistrements SOA et NS pour une zone stable la durée du negative TTL doit être inférieure à 7 jours Le numéro de série de la zone est cohérent sur chacun des Name Server. DNS - 103

Pièges à éviter (2) Problème avec les Name Server NS not reachable, NS not set up Domaine pas complètement nommé (oubli du point final) $ORIGIN 0.0.193.in-addr.arpa. 1 PTR ns1.nic.fr est résolue comme : 1 PTR ns1.nic.fr.0.0.193.in-addr.arpa La zone n'est pas installée sur les Name Server annoncés dans la zone parente. DNS - 104

DNS - 105

ZoneCheck Outil de validation pour une zone DNS DNS - 106

Zone Check (1) Outil développé par l'afnic L'AFNIC l'utilise pour valider toute modification dans ces zones. Utilisable via l'url suivante : http://www.nic.fr/zonecheck Les sources sont disponibles à l'url suivante : ftp://ftp.nic.fr/pub/programmes/dns/zonecheck/ DNS - 107

Zone Check (2) Pour vérifie la validité de l'installation d un nom de domaine. renseigner le nom de la zone ou directement le n du ticket attribué au nom de domaine. renseigner la méthode pour obtenir les infos concernant ce nom de domaine. Formulaire libre : remplir à la main les différents noms des serveurs de noms et les adresses IP si nécessaire. DNS pour zone existante (dns) : récupère automatiquement les noms des serveurs de noms pour la zone. DNS - 108

Zone Check (3) Le lancement de la vérification, plusieurs choix : Inclure les messages d'aide, Affichage des messages supplémentaires lors d'erreurs. Vérifier la base RIPE, Test de l'existence des enregistrements inetnum et route dans la base RIPE. Vérifier l'envoi de courrier électronique au zone-contact, Vérifie l'existence des adresses électroniques des responsables de la zone. Vérifier le contenu de la zone, Vérifie la validité de la zone sur les Name Server. avec des icônes, le nom du serveur whois. Permet de changer le nom du serveur whois, par défaut est whoiswhois.nic.fr DNS - 109

Zone Check (4) Vérification de la connexion TCP : ping sur le port 53 du serveur de nom. Vérification de la zone sur le serveur : Vérification de la liste de NS présente sur ce serveur Vérification de la liste des serveurs de noms de la racine connus de ce serveur : Vérification de l'enregistrement SOA de in-addr.arpa : Vérification de l'enregistrement SOA de fr DNS - 110

Zone Check (5) Vérification des mappings inverses du n IP de chaque Name Server : Vérification des mappings inverses de 127.0.0.1 de chaque Name Server : DNS - 111

Zone Check (6) Vérification de l'enregistrement inetnum dans la base RIPE Vérification de l'enregistrement route dans la base RIPE Vérification de l'adresse IP des autres serveurs de la zone DNS - 112

Zone Check (7) Vérification de l'enregistrement SOA. vérification des RR : SERIAL PRIMARY CONTACT REFRESH RETRY EXPIRE TTL DNS - 113

Zone Check (8) Vérification des MX Record pour le nom de domaine. Vérification des adresses de courrier électronique Si le relais de messagerie SMTP implémente la commande VRFY conformément aux RFC's ( 1123,.. ) alors ZonecCheck utilise la commande Sinon fait un debut de delivrance de message. DNS - 114

Copyright (c) 2003 Mas, Souissi (AFNIC) Permission est accordée de copier, distribuer et/ou modifier ce document selon les termes de la Licence de Documentation Libre GNU (GNU Free Documentation License), version 1.1 ou toute version ulterieure publiée par la Free Software Foundation. Une copie de la présente Licence est incluse dans la section intitulée Licence de Documentation Libre GNU. http://www.gnu.org/licenses/licenses.html#fdl DNS - 115