TP de réseaux : Domain Name Server.
Transcription
TP de réseaux : Domain Name Server.
ADJIDO Idjiwa, ARIB El Mehdi, CLOIREC Olivier Groupe 1 TP de réseaux : Domain Name Server. Introduction................................................................................................................. 2 Présentation du Système de nom de domaines ......................................................... 2 Le DNS ................................................................................................................... 2 L’accès aux machines ......................................................................................... 2 Le fichier host ...................................................................................................... 2 Nécessité d’un DNS ............................................................................................ 2 La notion de domaine .......................................................................................... 3 Un exemple de fonctionnement........................................................................... 3 Les composantes du DNS ...................................................................................... 3 L’espace de noms ............................................................................................... 3 Les serveurs de noms ......................................................................................... 4 Les solveurs de noms.......................................................................................... 4 Description du cadre du TP ........................................................................................ 4 Le matériel........................................................................................................... 4 La topologie mise en place.................................................................................. 4 Détails des configurations effectuées ......................................................................... 5 Configuration du réseau ...................................................................................... 5 Configuration du serveur de nom ........................................................................ 5 Configuration du solveur des machines clientes ................................................. 7 Utilisation de nslookup................................................................................................ 7 Difficultés rencontrées ................................................................................................ 9 Organisation entre étudiants ................................................................................... 9 Contrainte technique ............................................................................................... 9 Contrainte horaire ................................................................................................... 9 Conclusion................................................................................................................ 10 Introduction L’objectif premier des séances de travaux pratiques à été de comprendre comment marche le système de nom de domaines. Nous avons ensuite pu mettre en pratique les informations relatives à la configuration des différents éléments de ce système, puis tester le bon fonctionnement de la manœuvre. Présentation du Système de nom de domaines Le DNS (DNS pour Domain Name System) Il s’agit de présenter succinctement les éléments qui ont motivé la création du DNS, et de montrer par un exemple simple ce que ce système permet de faire. L’accès aux machines Toute machine est identifiable par une adresse IP. L’accès à ces machines est rendu possible notamment par la technologie tcp/ip. Actuellement, l’aspect d’une adresse IP (dans sa version 4) est 194.153.205.26. L’être humain peut difficilement retenir les adresses des machines sous cette forme. Il est vite devenu urgent d’associées aux machines des noms plus explicites pour nous. C’est la raison pour laquelle une politique à été mise en place pour coupler les adresses machines avec des noms représentatifs. Le fichier host Une solution (issu du début de tcp/ip) pour les réseaux non étendus, c'est-à-dire comportant peu de machines, est de remplir une table de conversion manuellement. Cette table consiste en un fichier (host) que les administrateurs renseignent. A chaque ligne du fichier se trouve une adresse IP et le nom qui lui est associé. Nécessité d’un DNS On comprend très vite, que lors d’une modification d’une adresse IP ou d’un nom de machine, il faut modifier la table de conversion. La maintenance de réseaux bien plus grands devient alors très laborieuse. D’où la nécessité d’un nouveau système, qui centralise la gestion de nom. Le DNS. Très simplement, ce système consiste en une hiérarchie de noms permettant de garantir l’unicité d’un nom dans une structure arborescente. 2 La notion de domaine La première composante du nom de domaine désigne une organisation ou une société. La deuxième composante est un suffixe qui permet la classification générale du domaine (comme com, gov, net... qui sont appelés Top-Level Domains). Les composantes sont séparées par un point. Chaque machine d'un domaine est appelée hôte et c’est le nom attribué à cet hôte qui doit être unique dans le domaine considéré (par exemple, le serveur web d'un domaine porte généralement le nom www). Un exemple de fonctionnement Un exemple simple et courant du fonctionnement de DNS est l’utilisation quasi quotidienne d’un navigateur internet. Lorsque l’on tape une adresse Internet, le navigateur effectue en interne via le système de nom de domaines la résolution de l’adresse « représentative » en adresse ip. Cette résolution peut se résumer (simplement) en deux étapes. La première étape : - le navigateur demande au serveur dns racine qui s’occupe des « .com » - le navigateur demande au serveur indexant les .com qui s’occupe de « serveur.com » - le navigateur demande au serveur indexant « serveur.com » qui s’occupe de www.serveur.com, ce dernier lui répond que c’est lui-même. La seconde étape : - le navigateur lui demande alors qu’elle est l’adresse ip de www.serveur.com - il peut maintenant établir une connexion. Les composantes du DNS L’espace de noms à gérer est vaste. Il est nécessaire de le faire de manière distribuée, de créer des caches locaux afin d'éviter la surcharge des serveurs de noms. De plus, DNS doit pouvoir fonctionner avec différents réseaux, différents types de routage (datagramme et circuit virtuel), différentes applications, mais surtout avec un très grand nombre d'ordinateurs. L'administrateur système doit pouvoir définir des zones qui sont sous son contrôle. Ces quelques obligations, ont donné lieu aux trois composantes suivantes. L’espace de noms Cet espace définit un ensemble de noms et ait représenté sous forme d’arbre ou chaque nœud et feuille contiennent des informations. Ces informations sont utilisées lors des différentes requêtes. Nous n’irons pas plus dans le détail. 3 Les serveurs de noms Les serveurs de noms (name servers) sont des programmes qui assurent la traduction des noms en adresses IP et réciproquement. Ils ont une vision sur une partie de l’arbre (celui énoncé plus haut) et possèdent également les références d'autres serveurs susceptibles de fournir des informations sur le reste de l'arbre. L'espace de noms consiste en un ensemble d'informations locales appelé zone. Les solveurs de noms Un solveur est un programme qui peut interroger un serveur de nom (en fait il interroge d’abord un cache ce qui permet de rester en locale) et utiliser l'information reçue pour répondre à la demande ou pour interroger un autre serveur susceptible de connaître la réponse. Il s’occupe principalement de deux fonctions : - la conversion d'un nom d'hôte vers une adresse. - la conversion d'une adresse vers un nom d'hôte (utilisation de l'adresse ARPA). L'intérêt d'utiliser un solveur plutôt que d'interroger directement le serveur est d'éviter une surcharge de travail au programme sur lequel travaille l'utilisateur et de minimiser le trafic sur le réseau. Description du cadre du TP Des moyens ont été mis à notre disposition pour nous permettre de mettre en œuvre un système de noms de domaine. Le matériel Initialement, on nous a fournis une série de câbles (rj45 droit), des hubs, et des postes de travails (que nous utilisons en environnement unix). La premier manœuvre consistait pour les étudiants à mettre en place deux sous réseaux reliés par une passerelle. La topologie mise en place Deux sous réseaux ont donc été construit. Chaque sous réseau est relié à un hub (concentrateur). Chaque hub est relié à une passerelle (bob). Un schéma représentant la topologie est représentée au niveau de la rubrique configuration du réseau. 4 Détails des configurations effectuées Configuration du réseau Chaque machine a été configurée (avec la commande ifconfig habituelle) selon le réseau sur laquelle elle se trouve. Les deux interfaces de la passerelle ont été configurées, une sur chaque réseau. La route (via la passerelle) vers le réseau annexe a été définie (avec la commande route –add) sur chaque machine. Configuration du serveur de nom Une machine sur chaque réseau a été choisie pour faire serveur de noms, deux autres pour faire serveur de courrier. Nous ne montrerons la configuration que pour un des deux serveurs. La première étape a été de modifier le fichier /etc/bind/named.conf. Nous avons rajouté une zone : zone « tp-maitrise.fr » { type master ; file « tp-maitrise.dns » ;} ; Et pour la résolution inverse : zone «11.168.192.in-addr.arpa » { type master ; file « tp-maitrise.rev » ; } ; 5 Nous avons ensuite modifié le fichier /etc/bind/tp-maitrise.dns dans lequel nous avons rajouté les lignes : @ IN SOA bobby.tp-maitrise.fr. root.tp-maitrise.fr. ( 1999032500 ; serial 8H ; refresh, seconds 2H ; retry, seconds 4W ; expire, seconds 1D ; minimum, seconds ) NS MX MX bobby.tp-maitrise.fr. ; 10 courrier1.tp-maitrise.fr.; 20 courrier2.tp-maitrise.fr.; localhost A 127.0.0.1 booby A 192.168.11.1 windows1 A 192.168.11.2 courrier1 A 192.168.11.3 MX 10 courrier1.tp-maitrise.fr. courrier2 A 192.168.11.4 MX 20 courrier2.tp-maitrise.fr. ; alias mail CNAME courrier1.tp-maitrise.fr. Enfin, la configuration du fichier /ect/bind/tp-maitrise.rev : @ IN SOA bobby.tp-maitrise.fr. root.tp-maitrise.fr. ( 1999032403; serial 28800; refresh 7200; retry 604800; expire 86400; minimum) NS 1 2 3 4 PTR PTR PTR PTR booby.tp-maitrise.fr. bobby.tp-maitrise.fr. windows1.tp-maitrise.fr. courrier1.tp-maitrise.fr. courrier2.tp-maitrise.fr. 6 Configuration du solveur des machines clientes Sur chaque machine, doit être configuré le fichier resolv.conf. Il contient une liste de noms de serveurs à interroger que la machine doit consulter pour déterminer les adresses correspondantes. Par exemple, la machine 192.168.11.3 a le fichier resolv.conf suivant : nameserver 192.168.11.1 (nom du serveur auquel est adressé la requête ip et son @ip) nameserver 192.168.10.4 (second serveur si le premier ne répond pas) search tp-maitrise.fr tp-maitrise2.fr (liste de domaine, rajoutée à la requête) (Où tp-maitrise2.fr est le nom de domaine du réseau 192.168.10.0) Utilisation de nslookup C’est un outil permettant de manière « plus conviviale » d’interroger le système de résolution de noms. Il peut s’utiliser en ligne de commande, ou de manière interactive. Quelques requêtes ont été formulées avec l’outil : - Adresse IP de berlioz.elysee.fr L’enregistrement de type A permet de déterminer l’adresse internet de la machine. - Nom et adresse IP du serveur de noms de domaine elysee.fr 7 - Autorité administrative du domaine Le type NS nous permet de consulter la liste des serveurs faisant autorité sur un domaine. Le message « réponse ne faisant pas autorité » m’intriguant, j’ai continué en cherchant des informations sur oleane.net, puis sur nic.fr, puis sur ripe.net et enfin sur ns-pri.ripe.net (193.0.0.195) première machine ne m’affichant pas le message. Je suppose donc que c’est l’autorité administrative du domaine ( ?). - L’enregistrement de type SOA Il permet d’obtenir des informations sur les domaines de « start of authority ». - Une requête sur les serveurs mails C’est ce que permet d’obtenir le champ de type mx. Le nom des machines du domaine columbia.edu : > server ns1.nic.fr > ls -a columbia.edu [ns1.nic.fr] *** Impossible de fournir la liste du domaine columbia.edu : Query refused ! L’enregistrement de type cname permet d’obtenir les noms d’alias. Une machine peut avoir plusieurs noms (deux DNS différents qui associe à une même adresse IP des noms différents) ou plusieurs adresses IP (sur autant d’interfaces différentes!). 8 - Recherche du nom DNS à partir d’une IP : - L’enregistrement PTR C’est un pointeur qui désigne l’adresse de la machine si la requête est une adresse Internet, une autre information sinon. - Serveur de courrier de inria.fr Difficultés rencontrées Organisation entre étudiants La première séance n’a pas été très productive. Tous les étudiants sont partis de leur coté, attrapant chacun leur câble. Il aurait peut-être été plus judicieux de les maintenir assis pour décider ensemble (5 minutes maximum) du réseau qu’ils souhaitaient faire, et de répartir les rôles (par équipe éventuellement). Contrainte technique L’obligation d’utiliser des éditeurs comme vi ou joe, diminue l’efficacité. Il s’agit pour le tp, de configurer des fichiers textes. Pour les étudiants ne sachant pas utiliser vi et/ou joe (en supposant que les raccourcis marchent correctement), cela peut être fastidieux. Contrainte horaire La mise en place des nouveaux créneaux horaires ne va pas dans les délais nécessaires pour une bonne réalisation du TP. A titre d’exemple, au bout de la première séance, nous avions à peine configuré les réseaux et configuré les premiers fichiers de configuration. Il a fallu tout recommencer à la deuxième séance (mise en place du réseau et (re)configuration des fichiers). Certes, c’était plus rapide la deuxième fois, l’habitude aidant, mais il aurait été plus simple de continuer à la première séance. 9 Pour remédier au problème, nous avons quand même eu l’idée (enfin !) de sauvegarder nos fichiers de configurations pour la dernière séance. Conclusion L’objectif du TP semble avoir été atteint, nous avons compris ce qu’étais un DNS, un système permettant de faire une correspondance entre les adresses IP et les noms de machines. De plus, nous savons quels sont les fichiers vers lequel il faut se tourner pour le configurer. Un regret cependant aura été de ne pas avoir eu le temps d’étudier et d’utiliser correctement avec assistance l’utilitaire nslookup. Les questions annexes ont bien contribuées à ce que l’on regarde le man de cet outil, mais à part les requêtes simples, nous ne somme pas sur d’avoir intégré son fonctionnement, et les réponses ont été faite par analogie entre les questions et les commandes disponibles, mais sans réelle compréhension. Ce sera donc un point à réétudier. 10