• Aucun résultat trouvé

Domain Name Server (DNS)

Dans le document Administration système UNIX version 7.0 (Page 120-136)

§ 42.1 Principes du DNS

Impossibilité pratique de maintenir à jour les fichiers

/etc/hosts

.

remplacement par un mécanisme d’annuaire réparti dont chacun gère sa entrée propre : le Domain Name Server

Particularités de la base de données du DNS : – répartie

– petite

– avec une faible fréquence de changements des données – hiérarchisée

– accès en consultation uniquement ; pas de requête de modification

Formation permanente – ARS 7.0 219

Domain Name Server (DNS) Zone DNS

§ 42.2 Zone DNS

zone DNS : reflet de l’aspect réparti et hiérarchisé du DNS

– partie contigüe de l’arbre

– une zone parente délègue une zone fille à un ou plusieurs serveurs d’informations (nameservers) sur la zone fille

.

com net fr

lycos jussieu

formation aero www

ars1 ars5

Domain Name Server (DNS) Requête d’interrogation du DNS

§ 42.3 Requête d’interrogation du DNS

Le DNS est bâti selon un modèle client – serveur

Formation permanente – ARS 7.0 221

Domain Name Server (DNS) Requête d’interrogation du DNS

Le DNS utilise des root nameservers :

Pour assurer un service fiable, une zone est servie par un nameserver primaire et plusieurs nameservers secondaires de secours qui se synchronisent entre eux.

Domain Name Server (DNS) Requête d’interrogation du DNS Principe de mémorisation des informations passées recueillies pour accélérer les réponses aux requêtes.

L’information a une date de péremption (TTL = Time To Live).

Le serveur qui mémorise un record DNS n’a pas autorité dessus.

Chaque enregistrement de la base de données a : – une classe ; la plus courante : IN (Internet) – un type : A, PTR, NS, SOA, MX, CNAME, . . . et est donc de la forme :

(classe, type, clé, valeur, TTL)

Une requête ressemble alors à :

(classe, type, clé, ?, ? ) (classe, * , clé, ?, ?)

Formation permanente – ARS 7.0 223

Domain Name Server (DNS) Implémentation : BIND,named

§ 42.4 Implémentation : BIND, named

URL :

http://www.isc.org/products/BIND/

Versions 8.3.3 et 9.2.1 (vérifier la disponibilité de versions plus récentes) Démon

named

Fichier de configuration

/etc/named.conf

(en général).

Directory

/etc/namedb

stockant les fichiers de zone (en général).

Domain Name Server (DNS) Implémentation : BIND,named

Pour connaitre la version de

named

:

% dig nameserver version.bind chaos

Exemple 1 :

% dig sorbon version.bind chaos txt

; <<>> DiG 8.2 <<>> sorbon version.bind chaos txt

;; res options: init recurs defnam dnsrch

;; got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4

;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUERY SECTION:

;; version.bind, type = TXT, class = CHAOS

;; ANSWER SECTION:

version.bind. 0S CHAOS TXT "bind 9"

;; Total query time: 3 msec

;; FROM: apollinaire.paris4.sorbonne.fr to SERVER: default -- 134.157.0.129

;; WHEN: Mon Sep 30 00:20:19 2002

;; MSG SIZE sent: 30 rcvd: 49

Formation permanente – ARS 7.0 225

Domain Name Server (DNS) Implémentation : BIND,named

Exemple 2 :

% dig dmi.ens.fr version.bind chaos txt

; <<>> DiG 9.2.1 <<>> dmi.ens.fr version.bind chaos txt

;; global options: printcmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63986

;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 5, ADDITIONAL: 4

;; QUESTION SECTION:

;dmi.ens.fr. IN A

;; ANSWER SECTION:

dmi.ens.fr. 172800 IN A 129.199.96.11

;; AUTHORITY SECTION:

ens.fr. 172800 IN NS oseille.ens.fr.

ens.fr. 172800 IN NS dmi.ens.fr.

ens.fr. 172800 IN NS ext.lri.fr.

ens.fr. 172800 IN NS ns2.nic.fr.

ens.fr. 172800 IN NS clipper.ens.fr.

Domain Name Server (DNS) Implémentation : BIND,named

;; ADDITIONAL SECTION:

ext.lri.fr. 290218 IN A 129.175.15.4

ns2.nic.fr. 285943 IN A 192.93.0.4

clipper.ens.fr. 172800 IN A 129.199.129.1 oseille.ens.fr. 172800 IN A 129.199.98.16

;; Query time: 831 msec

;; SERVER: 127.0.0.1#53(127.0.0.1)

;; WHEN: Mon Sep 30 00:19:28 2002

;; MSG SIZE rcvd: 210

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48476

;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:

;version.bind. CH TXT

;; ANSWER SECTION:

version.bind. 0 CH TXT "9.2.1"

;; Query time: 42 msec

;; SERVER: 127.0.0.1#53(127.0.0.1)

;; WHEN: Mon Sep 30 00:19:28 2002

;; MSG SIZE rcvd: 48

Formation permanente – ARS 7.0 227

Domain Name Server (DNS) F.root-servers.net

§ 42.5 F.root-servers.net

(cfhttp://www.isc.org/servicespublic/F-root-server.html)

The Internet Software Consortium is proud to operate one of 13 root DNS servers as a public service to the Internet. The ISC has operated

F.root-servers.net

for the IANA

(

http://www.iana.org/

) since 1993. F (

http://f.root-servers.org

) answers more than 272 million DNS queries per day, making it one of the busiest DNS servers in the world. In fact, it is often the busiest root nameserver on the Internet.

F is a virtual server made up of multiple (currently two) HP AlphaServers, donated to us by HP’s Western Research Laboratory (

http://www.research.digital.com/wrl/

). Each server is a HP ES40 AlphaServer with 4 500mhz CPUs and 8Gig of RAM, and runs ISC BIND 8.3.2 as its DNS server.

Domain Name Server (DNS) F.root-servers.net The servers are hosted at PAIX.net, Inc. (

http://www.paix.net/

) in Palo Alto, California and are connected to the Internet via fdx Fast Ethernet connections which are provided by UUNET (

http://www.uu.net/

), Teleglobe (

http://www.teleglobe.com/

), and MFN (

http://www.mfn.com/

).

For more information on the root DNS system, see : BCP 40 (RFC2870) - Operational guidelines for Root Name Servers (

http://www.isi.edu/in-notes/rfc2870.txt

).

Formation permanente – ARS 7.0 229

Domain Name Server (DNS) Utilitairerndc

§ 42.6 Utilitaire rndc

Syntaxe :

rndc [options] cmd

Il contrôle le fonctionnement de

named

à distance via TCP (

rndc.conf

contient des clefs d’accès).

Quelques options :

– commande

status

: status de NAMED

– commande

dumpdb

: dumpe la base et le cache dans

/var/tmp/named_dump.db

– commande

reload

: recharge les zones primaires et secondaires

– commande

stats

: dumpe les statistiques dans

/var/tmp/named.stats

– commande

trace/notrace

: gestion du niveau de trace dans

/var/tmp/named.run

– commande

start

: démarre NAMED

– commande

stop

: arrête NAMED en sauvant les mises à jour en cours – commande

halt

: arrête NAMED froidement

– commande

restart

: arrête et redémarre NAMED

Domain Name Server (DNS) Fichier/etc/resolv.conf

§ 42.7 Fichier /etc/resolv.conf

Consultation des nameservers indiqués via le fichier

/etc/resolv.conf

Exemple de fichier

/etc/resolv.conf

: domain formation.jussieu.fr

search formation.jussieu.fr jussieu.fr nameserver 134.157.253.1

nameserver 134.157.0.129

Attention :

– Au plus 3 lignes

nameserver

.

– Tous les Unix ne comprennent pas la directive

search

.

Formation permanente – ARS 7.0 231

Domain Name Server (DNS) Utilitairenslookup

§ 42.8 Utilitaire nslookup

Syntaxe :

nslookup [options] à-résoudre

% /usr/sbin/nslookup www.playboy.com Server: sunars1.formation.jussieu.fr Address: 134.157.253.1

Non-authoritative answer:

Name: www.playboy.com Address: 206.251.29.10

La machine est dans le cache du DNS parce qu’elle a déjà été résolue dans un passé récent.

Cet utilitaire tombe en désuétude.

Domain Name Server (DNS) Utilitairedig

§ 42.9 Utilitaire dig

C’est le remplaçant de

nslookup

. Il est très low level.

Syntaxe :

dig [options] à-résoudre

Quelques flags utilisés : – flag

QR

: Query

– flag

AA

: Authoritative Answer – flag

TC

: TCP

– flag

RD

: Recursion Desired – flag

RA

: Recursion Available – flag

AD

: Authentic Data (DNSSEC) – flag

CD

: Checking Disabled (DNSSEC)

1 1 1 1 1 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

| ID |

+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

|QR| Opcode |AA|TC|RD|RA| Z|AD|CD| RCODE | +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

Formation permanente – ARS 7.0 233

Domain Name Server (DNS) Utilitairedig

Exemple 1 : récursivité jusqu’à la racine

% dig +trace www.formation.jussieu.fr

; <<>> DiG 9.2.1 <<>> +trace www.formation.jussieu.fr

;; global options: printcmd

. 3600000 IN NS K.ROOT-SERVERS.NET.

. 3600000 IN NS L.ROOT-SERVERS.NET.

. 3600000 IN NS M.ROOT-SERVERS.NET.

. 3600000 IN NS A.ROOT-SERVERS.NET.

. 3600000 IN NS B.ROOT-SERVERS.NET.

. 3600000 IN NS C.ROOT-SERVERS.NET.

. 3600000 IN NS D.ROOT-SERVERS.NET.

. 3600000 IN NS E.ROOT-SERVERS.NET.

. 3600000 IN NS F.ROOT-SERVERS.NET.

. 3600000 IN NS G.ROOT-SERVERS.NET.

. 3600000 IN NS H.ROOT-SERVERS.NET.

. 3600000 IN NS I.ROOT-SERVERS.NET.

. 3600000 IN NS J.ROOT-SERVERS.NET.

;; Received 244 bytes from 127.0.0.1#53(127.0.0.1) in 5 ms

fr. 172800 IN NS DNS.CS.WISC.EDU.

fr. 172800 IN NS NS1.NIC.fr.

fr. 172800 IN NS NS3.NIC.fr.

fr. 172800 IN NS DNS.INRIA.fr.

Domain Name Server (DNS) Utilitairedig

fr. 172800 IN NS NS2.NIC.fr.

fr. 172800 IN NS DNS.PRINCETON.EDU.

fr. 172800 IN NS NS-EXT.VIX.COM.

fr. 172800 IN NS NS3.DOMAIN-REGISTRY.NL.

;; Received 373 bytes from 193.0.14.129#53(K.ROOT-SERVERS.NET) in 273 ms

jussieu.fr. 345600 IN NS shiva.jussieu.fr.

jussieu.fr. 345600 IN NS cendrillon.lptl.jussieu.fr.

jussieu.fr. 345600 IN NS soleil.uvsq.fr.

;; Received 166 bytes from 128.105.2.10#53(DNS.CS.WISC.EDU) in 337 ms

www.formation.jussieu.fr. 172800 IN CNAME serveur.formation.jussieu.fr.

serveur.formation.jussieu.fr. 172800 IN A 134.157.46.129 formation.jussieu.fr. 172800 IN NS cendrillon.lptl.jussieu.fr.

formation.jussieu.fr. 172800 IN NS shiva.jussieu.fr.

formation.jussieu.fr. 172800 IN NS soleil.uvsq.fr.

;; Received 204 bytes from 134.157.0.129#53(shiva.jussieu.fr) in 217 ms

On voit bien le mécanisme de consultations des différents nameservers.

Formation permanente – ARS 7.0 235

Domain Name Server (DNS) Utilitairedig

Exemple 2 : consultation à la nslookup

% dig www.formation.jussieu.fr

; <<>> DiG 9.2.1 <<>> www.formation.jussieu.fr

;; global options: printcmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62679

;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 3, ADDITIONAL: 3

;; QUESTION SECTION:

;www.formation.jussieu.fr. IN A

;; ANSWER SECTION:

www.formation.jussieu.fr. 172790 IN CNAME serveur.formation.jussieu.fr.

serveur.formation.jussieu.fr. 172789 IN A 134.157.46.129

;; AUTHORITY SECTION:

formation.jussieu.fr. 172789 IN NS cendrillon.lptl.jussieu.fr.

formation.jussieu.fr. 172789 IN NS shiva.jussieu.fr.

formation.jussieu.fr. 172789 IN NS soleil.uvsq.fr.

Domain Name Server (DNS) Utilitairedig

;; ADDITIONAL SECTION:

shiva.jussieu.fr. 74075 IN A 134.157.0.129 soleil.uvsq.fr. 222426 IN A 193.51.24.1

cendrillon.lptl.jussieu.fr. 172790 IN A 134.157.8.24

;; Query time: 5 msec

;; SERVER: 127.0.0.1#53(127.0.0.1)

;; WHEN: Thu Aug 29 00:22:06 2002

;; MSG SIZE rcvd: 204

Formation permanente – ARS 7.0 237

Domain Name Server (DNS) Utilitairedig

Exemple 3 : réponse en cas d’erreur

% dig cerise

; <<>> DiG 9.2.1 <<>> cerise

;; global options: printcmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 45146

;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:

;cerise. IN A

;; AUTHORITY SECTION:

. 10800 IN SOA A.ROOT-SERVERS.NET. NSTLD.VERISIGN-GRS.COM. 2002082801 1800 900 604800 86400

;; Query time: 206 msec

;; SERVER: 127.0.0.1#53(127.0.0.1)

;; WHEN: Thu Aug 29 00:22:13 2002

;; MSG SIZE rcvd: 98

Domain Name Server (DNS) Utilitairedig Exemple 4 : précision du type du record

Première fois :

% dig www.crlv.org SOA

; <<>> DiG 8.2 <<>> www.crlv.org SOA

;; res options: init recurs defnam dnsrch

;; got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUERY SECTION:

;; www.crlv.org, type = SOA, class = IN

;; AUTHORITY SECTION:

crlv.org. 2H IN SOA ns.easynet.fr. hostmaster.easynet.fr. ( 2001020101 ; serial

1H ; refresh

30M ; retry

4W ; expiry

2H ) ; minimum

;; Total query time: 14 msec

;; FROM: apollinaire.paris4.sorbonne.fr to SERVER: default -- 195.220.107.3

;; WHEN: Thu Aug 29 15:06:22 2002

;; MSG SIZE sent: 30 rcvd: 90

Formation permanente – ARS 7.0 239

Domain Name Server (DNS) Utilitairedig

Deuxième fois :

% dig www.crlv.org SOA

; <<>> DiG 8.2 <<>> www.crlv.org SOA

;; res options: init recurs defnam dnsrch

;; got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4

;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUERY SECTION:

;; www.crlv.org, type = SOA, class = IN

;; AUTHORITY SECTION:

crlv.org. 1h55m43s IN SOA ns.easynet.fr. hostmaster.easynet.fr. ( 2001020101 ; serial

1H ; refresh

30M ; retry

4W ; expiry

2H ) ; minimum

;; Total query time: 13 msec

;; FROM: apollinaire.paris4.sorbonne.fr to SERVER: default -- 195.220.107.3

;; WHEN: Thu Aug 29 15:10:39 2002

;; MSG SIZE sent: 30 rcvd: 98

Domain Name Server (DNS) Record de type PTR

§ 42.10 Record de type PTR

On peut aussi interroger un nameserver pour résoudre des adresses :

% /usr/sbin/nslookup 193.252.79.61 Authoritative answers can be found from:

79.252.193.in-addr.arpa nameserver = ns1.fth.net 79.252.193.in-addr.arpa nameserver = ns2.fth.net ns1.fth.net internet address = 193.252.251.253 ns2.fth.net internet address = 193.252.69.217

Formation permanente – ARS 7.0 241

Domain Name Server (DNS) Record de type PTR

.

Une faute courante : oublier de mettre à jour l’entrée relative à l’adresse IP de la machine.

Domain Name Server (DNS) Fichier/etc/nsswitch.conf

§ 42.11 Fichier /etc/nsswitch.conf

Certains systèmes Unix permettent de spécifier quelles méthodes de résolution utiliser (DNS,

/etc/hosts

, NIS) ainsi que l’ordre d’enchaînement des méthodes.

Sur Linux et Solaris, cf

/etc/nsswitch.conf

: ...

hosts: files nisplus nis dns ...

ou ...

hosts: xfn nisplus dns [NOTFOUND=return] files ...

Formation permanente – ARS 7.0 243

Domain Name Server (DNS) Délégation d’une partie de classe C

§ 42.12 Délégation d’une partie de classe C

RFC 2317

http://www.lip6.fr/pub/rfc/rfc/rfc2317.txt.gz

Avis : Mécanisme astucieux mais un peu compliqué à mettre en œuvre en pratique.

Domain Name Server (DNS) Délégation d’une partie de classe C

WebDNS

Logiciel WebDNS :

http://www-crc.u-strasbg.fr/webdns/

Principe : générer les données via une vraie base de données avec toutes les possibilités fines associées (par exemple une personne peut avoir le droit SQL de modifier un et un seul record DNS dans la base SQL)

Logiciel non réservé aux sous classes C. En utilisation sur le campus de Jussieu par exemple.

Avis : Approche très tendance pour résoudre un problème de fond dans le principe du DNS lors de vrais déployements.

Avis 2 : Nouvel exemple de couplage à une base de données.

Formation permanente – ARS 7.0 245

Domain Name Server (DNS) Délégation d’une partie de classe C

DNS

Domain Name Server (DNS) Nom de machine,hostname

§ 42.13 Nom de machine, hostname

Caractères autorisés : cf RFC 952 et RFC 1123 En résumé :

– lettres majuscules – lettres minuscules – chiffres

– caractère «

-

»

http://www.lip6.fr/pub/rfc/rfc/rfc952.txt.gz http://www.lip6.fr/pub/rfc/rfc/rfc1123.txt.gz

Formation permanente – ARS 7.0 247

Domain Name Server (DNS) WHOIS

§ 42.14 WHOIS

WHOISbase de données des informations relatives à l’attribution des plages d’adresses IP et des noms de domaines.

Exemple d’un protocole Internet loupé car les implémentations ne sont pas compatibles entre elles.

RFC 954, port TCP 43

Protocole exploitable par la commande

whois

.

Syntaxe :

whois [ -h server-whois ] adresse-ou-domaine

Quelques serveurs WHOIS (cf annexe pour une liste plus longue) : –

rs.internic.net

whois.nic.fr

ou via un interface WWW :

http://www.afnic.asso.fr/cgi-bin/whois

whois.ripe.net

Exemple : cf annexe

Domain Name Server (DNS) Espace de confiance

§ 42.15 Espace de confiance

Formation permanente – ARS 7.0 249

Domain Name Server (DNS) Un peu de documentation

§ 42.16 Un peu de documentation

– cours réseau ARS

– Cf

http://www.isc.org/

et

ftp://ftp.isc.org/isc/bind/

– Cf

http://www.cri.fr/ZoneCheck/

– Cf

http://www.univ-rennes1.fr/DNSRENATER/

– Cf

ftp://ftp.univ-rennes1.fr/pub/reseau/dns/exemple/

– RFC 2317 «Classless IN-ADDR.ARPA delegation»

http://www.uninett.no/navn/domreg.html

ftp://ftp.jussieu.fr/jussieu/doc/local/dnsmail.ps.Z

http://www.cri.ensmp.fr/people/keryell/cours

– DNS and BIND, 4th Edition, By Paul Albitz & Cricket Liu, 4th Edition April 2001, O’Reilly &

Associates, Inc. 622 pages, $44.95

Partage de fichiers NFS

Dans le document Administration système UNIX version 7.0 (Page 120-136)