Confirmation de la bonne configuration de BIND

Bonsoir en faite je viens de configurer un bind et j’aimerai avoir savoir s’il est bien configuré ou pas je me ss referer à certain info trouvé sur les sites donc pour verifier si bind fonctionne correctement il faut utiliser la commande “dig” et une verification avec nslookup donc coté nslookup je pense que sa se passe bien car j’obtiens mais je comprend pas bienle Non-authoritative anserwer

# nslookup leadertech.com
Server:		192.168.15.2
Address:	192.168.15.2#53

Non-authoritative answer:
Name:	leadertech.com
Address: 207.66.2.53

et coté dig j’obtiens

 dig -x leadertech.com

; <<>> DiG 9.5.1-P1 <<>> -x leadertech.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 4753
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;com.leadertech.in-addr.arpa.	IN	PTR

;; AUTHORITY SECTION:
in-addr.arpa.		5	IN	SOA	A.ROOT-SERVERS.NET. dns-ops.ARIN.NET. 2009062816 1800 900 691200 10800

;; Query time: 305 msec
;; SERVER: 192.168.15.2#53(192.168.15.2)
;; WHEN: Sun Jun 28 17:48:49 2009
;; MSG SIZE  rcvd: 112

et coté Answer j’ai 0(Zero) est ce que c’est normal sinon dois je avoir quoi comme resultat merci si quelqu’un à une idee

  1. Configuré pour quoi faire ? Cache récursif, autorité pour des zones (publiques ou privées ?) en maître ou esclave, les deux ?

  2. Tu ne spécifies pas le serveur à interroger dans tes commandes, donc je suppose que 192.168.15.2 est l’adresse d’un serveur récursif figurant dans resolv.conf. Dans ce cas le fait que ce serveur ne fasse pas autorité est normal. Est-ce le BIND en question ?

  3. L’option -x de dig sert à faire une résolution inverse (adresse -> nom) et transforme l’argument qui est normalement une adresse x.y.z.t en nom d’enregistrement équivalent t.z.y.x.in-addr.arpa comme on peut le voir dans la section QUESTION. Appliquer ce processus à un nom de domaine et non une adresse a de grandes chances de produire un nom qui n’existe pas comme com.leadertech.in-addr.arpa, donc “ANSWER: 0” est encore normal. Pour résoudre un nom en adresse, il n’y a pas besoin de passer d’option à dig.

Merci pour ta reponse en fait je suis entrain de faire des tester sur les differentes configurations de Bind donc pour le 1er cas je l’utilise pour faire du cache recursif et il est de type master aussi

voila le contenu du fichier /etc/bind/named.conf

zone "leadertech.com"{
	type master;
	file "/etc/bind/db.leadertech.com";
};

puis pour que mon serveur ne serve pas de relais au pirate j’ai ajouter la ligne dans /etc/bind/named.conf.options

allow-recursion {localhost; };

puis la configuration du fichier /etc/bind/db.leadertech.com

mais mon gros probleme se trouve à ce niveau je comprend pas trop bien ce que represent "ksXXXXX.kimsufi.com."dans se exemple olange.developpez.com/articles/d … age=page_4

moi voila ce que j’ai mis dans mon fichier de configuration de “db.leadertech.com

$TTL    604800
leadertech.com.       IN      SOA     abdoul.leadertechplus.com. webmaster.leadertech.com. (
                         2009062802         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
leadertech.com.       IN      NS      abdoul.leadertechplus.com.
leadertech.com.       IN      A       192.168.15.129
#@       IN      AAAA    ::1

Si quelqu’un à une idee par rapport à la bonne configuration de ce fichier merci

Salut kakashi05,

mon domaine est " fabien493.com" je te post mon named.conf.local, et ma db.fabien493.com, prend exemple

named.conf.local :

#fabien493.com
zone "fabien493.com" {
        type master;
        file "/etc/bind/db.fabien493.com";
};

ma zone est fabien493.com en Master

ma zone db.fabien493.com :

;
; BIND data file for local loopback interface
;
$TTL    86400
@        IN     SOA    fabien493.com. root.fabien493.com. (
                 2009060902        ; Serial
                      43200         ; Refresh
                       7200         ; Retry
                    2419200         ; Expire
                     604800 )       ; Negative Cache TTL
;-------------------------------------------------------
;Configuration du domaine fabien493.com
;------------------------------------------------------
@       IN      NS      ns
@       IN      NS      ns2
@       IN      A       82.239.213.159
;------------------------------------------------
;Configuration des DNS
;-----------------------------------------------
ns      IN      A       82.239.213.159
ns2     IN      A       81.57.134.218
;-----------------------------------------------
www     IN      CNAME   @

le SOA cest le nom de la zone (domaine)

remplace leadertech.com. par @ c’est mieux
ton : abdoul.leadertechplus.com. cela veut dire que ta zone est abdoul.leadertechplus.com et que tu a acheté ton nom de domaine en abdoul.leadertechplus.com ce qui m’étonne et à mon avis ton domaine c’est leadertechplus.com. et non abdoul.leadertechplus.com. dans ce cas la modifie ton SOA :

et ajoute en bas tu veut :

ce qui fait que ta zone est leadertechplus.com et que tu as ajouté un host abdoul ( leadertechplus.com)

c’est un peut compliqué, mais réfère toi a ma db, et tu verra que ma zone c’est fabien493.com avec un host www, cela me permet que quand les gens tape, fabien493.com cela tombe sur la meme page. (bien sur avec un vhost apache correctement configuré)

donc maintenant tu peut répondre à la question

[quote]
mais mon gros probleme se trouve à ce niveau je comprend pas trop bien ce que represent "ksXXXXX.kimsufi.com."dans se exemple olange.developpez.com/articles/d … age=page_4
[/quote] >>> c’est le nom de ta zone, le nom du domaine. en gros ton bind vas expliquer au monde entier que la zone leadertechplus.com. existe.

mdr, :

leadertech.com. IN NS abdoul.leadertechplus.com. leadertech.com. IN A 192.168.15.129

le serveur sur lequel tu a paramétré bind, est le master de ta zone, ce qui fait que c’est ton premier serveur DNS,

en créer les DNS pour ta zone :

@       IN      NS      ns
@       IN      NS      ns2

ce qui donne : ns.leadertechplus.com et ns2.leadertechplus.com

ensuite on défini les ip des DNS, le Premier DNS c’est toi, donc tu met ton ip public :
ns IN A IP.PUBLIC.DU.SERVEUR
ns2 IN A IP.PUBLLIC.DU.SERVEUR.DNS.SECONDAIRE
[/code]

et tu as oublié le plus important quand tu déclare ta zone tu doit expliqué à BIND que ta zone : leadertechplus.com est égal à ton ip public :

@ IN A IP.PUBLIC.DE.TON.SERVEUR

ton fichier BIND devrais etre comme ça :

$TTL    604800
@       IN      SOA     leadertechplus.com. webmaster.leadertech.com. (
                         2009062802         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      ns            # déclaration ns.leadertech.com
@       IN      NS      ns2           # déclaration ns2.leadertech.com
@       IN      A       IPPUBLIC      # déclaration de l'ip de la zone ( l'ip public du serveur)

# déclaration des DNS
ns      IN      A     IPPUBLIC        # déclaration de l'ip public du serveur DNS principale (master)
ns2     IN      A     IPPUBLIC        # déclaration de l'ip public du serveur DNS secondaire (master)

#décalration des HOSTS 

abdoul  IN      CNAME    @            # déclaration du host abdoul.leadertech.com

Amicalement,
Fabien493

Le fichier de “configuration” de db.leadertech.com s’appelle un fichier de zone. Un bon fichier de zone, ça commence par :

  • ne pas utiliser un nom de domaine existant qui ne vous appartient pas comme “leadertech.com” qui est enregistré par la société Leader Technologies aux Etats-Unis à laquelle je doute que tu sois lié ;
  • ne pas utiliser un nom de domaine inexistant mais qui pourrait exister comme “leadertechplus.com” ;
  • définir au moins un enregistrement d’adresse (A ou AAAA) pour chacun des enregistrements NS qui pointent vers un nom appartenant à la zone comme “abdoul.leadertechplus.com”.

D’autre part, tu n’as pas répondu complètement à mes questions.
S’agit-il d’une zone publique ou privée ? Etant donné l’absence d’un second NS et la présence d’un enregistrement A avec une adresse IP privée, je penche pour la seconde hypothèse.
Le BIND en question est-il sur la machine ayant l’adresse 192.168.15.2 que tes requêtes ont interrogée ? Cette machine ayant fourni en réponse ne faisant pas autorité la vraie adresse IP du vrai domaine leadertech.com, j’en doute.

Dans l’exemple de la page que tu cites, “ksXXXXX.kimsufi.com” est le nom du serveur de primaire de la zone, qui figure à la fois dans un enregistrement NS (comme les autres éventuels NS de la zone) et dans le SOA. L’équivalent d’abdoul.leadertechplus.com dans ta zone.

si tu déclare un zone avec BIND, c’est pour expliquer au monde entier que ton domaine existe et qu’il as une ip, tu peut pas utiliser un nom de domaine qui ne t’appartiens pas, mon domaine fabien493.com m’appartient et je la paye tout les ans.

amicalement,
fabien493

Pas forcément. Ça peut être pour une utilisation locale et privée.

Pas forcément. Il y a bien d’autres types d’enregistrements DNS que que les enregistrements d’adresse.

Non, tu le loues.

S’il t’appartenait, tu ne ne le paierais pas tous les ans.

c’est jouer sur les mots… et je suis d’accord ! :smiley:

Bonsoir je tiens à vous remercier pour l’aide et les precisions que vous m’avait apportés je comprend mieu car je suis entrain d’apprendre à configurer les differents serveur sur Debian et je vous remerci pour vos conseils donc pour repondre au question de PascalHambourg
en fait par rapport à l’adresse ip j’utilise une adresse privée et c’est l’adresse de mon serveur aussi.
Et tu as vu juste aussi je ne travail pas pour la compagnie Leadertech qui se trouve au Etat Unis lol je pensais pouvoir prendre un nom comme ça histoire de faire mon test lol mais maintenant j’ai compris qu’il fallait chercher un nom de domain qui n’est pas utilisé et je comprend mieu pour quoi lorsque je faisais un nslookup leadertech.com j’avais une reponse car cette reponse provenait du vrai nom de domain et non du mieu

Pour repondre à fabien493
je tiens à te remercier pour ton explication on a l’impression de faire un tuto donc pour eviter les problemes de nom de domain je me suis permis de verifier d’abord si se nom n’etait pas deja pris et j’ai finalement choisie “salicompagny.com” donc je te montre mon fichier db.salicompagny.com

;Ma configuration Bind

$TTL 86400
@       IN      SOA     salicompagny.com.     webmaster.salicompagny.com.(
                        2009062902      ;Serial
                        43200           ;Refresh
                        7200            ;Retry
                        2419200         ;Expire
                        604800)         ;Negative Cache TTL

;------------------------------------------------
;Configuration du domaine salicompagny.com
;------------------------------------------------
@               IN      NS      ns
@               IN      A       192.168.15.129

;--------------------------------------------------
;Configuration des DNS
;--------------------------------------------------
ns              IN      A       192.168.15.129
;---------------------------------------------------
;Determination des hosts
;---------------------------------------------------
www             IN      CNAME   @
abdoul          IN      CNAME   @

maintenant lorsque je veux tester ma configuration lorsque lance
dig -x salicompagny.com

; <<>> DiG 9.5.1-P1 <<>> -x salicompagny.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 64149
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;com.salicompagny.in-addr.arpa.	IN	PTR

;; AUTHORITY SECTION:
in-addr.arpa.		5	IN	SOA	A.ROOT-SERVERS.NET. dns-ops.ARIN.NET. 2009062916 1800 900 691200 10800

et lorsque je fais un nslookup il ne trouve rien voila le resultat

;; connection timed out; no servers could be reached

ce qui n’est pas normal donc pour faire un autre test
j’ai creer un virtual host donc lorsque je lance salicompagny.com
il m’affiche bien la page mais lorsque je fais appel à l’alias
salicompagny.com il ne trouve pas la page donc apres ses 3 tests je deduis que mon Bind n’a pas ete bien configurer.Est ce que j’aurai oublier quelque chose je vous remercis

Re,

ta pensé à rajouter le ServerAlias dans ton vhost apache ?

ServerAdmin admin@salicompagny.com
        ServerName salicompagny.com
        ServerAlias www.salicompagny.com
        DocumentRoot /va/www/salicompagny.com/

amicalement,
fabien493

Bon, il y a quelques points qui semblent mal compris.

  1. J’ai écrit qu’il ne fallait pas utiliser un nom de domaine qui pourrait exister. Or salicompagny.com pourrait exister, il suffit que quelqu’un l’enregistre. Il vaut mieux utiliser un nom avec un TLD qui a peu de chances d’être créé comme par exemple “.localdomain”. Eviter le TLD “.local” qui est déjà utilisé par la résolution de noms par zeronconf/avahi/mDNS.

  2. Comme je l’ai déjà écrit, “dig -x” ne sert que pour faire la résolution inverse d’une adresse IP en nom de domaine. Pour la résolution directe d’un nom de domaine en adresse IP, c’est “dig” tout court sans -x.

  3. Fabien a fait une erreur : le premier champ de donnée du SOA ne contient pas le nom de la zone (le nom de la zone est déjà à gauche du SOA). Comme je l’ai également déjà écrit, il doit contenir le nom du serveur DNS “principal” de la zone, celui qui sert de maître pour les éventels autres serveurs DNS de la zone. Dans le cas où il y a un seul serveur DNS, et un seul enregistrement NS, c’est le même nom dans le SOA et le NS.

  4. Il n’est pas nécessaire de définir un enregistrement d’adresse (A ou AAAA) pour le nom de la zone si celui-ci ne correspond pas à une machine.
    Exemple : ta zone est “mazone”, tes machines “toto.mazone” et “titi.mazone”, tu ne définis des enregistrements d’adresse que pour “toto.mazone” et “titi.mazone”, pas pour “mazone” (ou @).

  5. Eviter les CNAME autant que possible car c’est une notion difficile à appréhender. Un CNAME ne définit pas un host mais une équivalence entre deux noms de domaine. Un host se définit avec un enregistrement d’adresse.

  6. Le nom du NS d’une zone “mazone” n’est pas obligatoirement de la forme “ns.mazone”. “abdoul.mazone” convient très bien aussi si c’est le nom de la machine (qui doit donc avoir un enregistrement d’adresse par ailleurs, mais surtout pas de CNAME).

  7. Il faut être plus précis dans tes rapports d’erreur. Il faut indiquer la commande ou l’URL saisie et le message d’erreur exact. Quand tu écris “il ne trouve pas la page”, est-ce le navigateur qui ne trouve pas l’adresse du serveur web (erreur DNS), ne parvient pas à s’y connecter (erreur TCP/IP) ou est-ce le serveur web qui ne trouve pas la page (site ou page inexistant sur le serveur) ? Dans le dernier cas il s’agit probablement d’une erreur de configuration d’apache comme l’a écrit Fabien.

j’ai eu un peut de difficulté à comprendre tout ton dernier message PascalHambourg.

dans mes réponses donnée à kakashi05, j’ai été bref, très peut d’explication, et pas sur tout.
parce qu’on ne peut ce lancer dans BIND, ou dans la gestion des DNS, sans avoir un minimum cherché à comprendre comment cela fonctionne. (et je m’en excuse)

lol, c’est pas contradictoire ? ou alors j’ai rien compris excuse moi…

d’après ce que tu dit il n’est pas nécessaire de mettre l’enregistrement @ IN A IPpublic ou privé dans la db ? donc ta zone ne pointe pas sur l’ip de ton serveur DNS. comment le monde entier sais que toto.com c’est ton serveur ? (ps: excusez moi je n’ai utilisé bind que en public et non en privé)

sa m’étonne qu’on puisse faire un host avec une ip, genre :
www IN A @, d’après ce que je sais l’enregistrement CNAME n’est utilisé que pour les noms et non les IP.

pour ma zone j’ai pris ns1 et ns2 mais on n’aurait put mettre toto ou titi, ou ce que tu veut, c’est juste que quand tu vas déclarer tes ns sur ton domaine c’est plus simple de dire ns1 et ns2, c’est juste une question de style…:slightly_smiling:

On peut pas faire de CNAME pour un DNS genre : ns1 IN CNAME IPDUSERVEURDNS ???
lol

effectivement, plus on n’est précis sur un problème, plus y’a de chance de trouvé LA solution.

faudrait mettre une obligation avec d’installer Linux, Apprendre par-cœur l’OSI !

amicalement,
Fabien493

C’est très vrai. Je n’ai pas honte de dire que j’ai potassé des docs sur DNS et BIND pendant environ deux semaines (pas à plein temps hein, un peu chaque jour) avant d’être assez sûr de moi pour mettre en ligne mon serveur DNS avec ma première zone publique.

quote: le premier champ de donnée du SOA ne contient pas le nom de la zone (le nom de la zone est déjà à gauche du SOA).
(Fabien): c’est pas contradictoire ?[/quote]
Non. Un enregistrement de ressource (“resource record” ou RR) se compose de plusieurs éléments, notamment :

  • le nom de domaine (la “partie gauche”) qui peut être implicite dans un fichier de zone, on reprend alors le nom de domaine de l’enregistrement précédent ;
  • la classe, qui est toujours ‘internet’ (IN) dans l’utilisation avec un réseau IP (v4 ou v6) ;
  • la durée de vie ou TTL (time to live), optionnel dans un fichier de zone ;
  • le type : SOA, NS, MX, A, AAAA, CNAME, PTR, TXT, SRV… parmi les plus courants ;
  • le champ de données dont le contenu dépend du type : nom de domaine pour NS, CNAME ou PTR, adresse IPv4 pour A, adresse IPv6 pour AAAA, chaîne de caractères pour TXT, composite pour SOA, MX, SRV…

Dans un enregistrement SOA, le nom de la zone est contenu dans le nom de domaine à gauche, pas dans le champ de donnée à droite. Exemple :

[quote]1) d’après ce que tu dit il n’est pas nécessaire de mettre l’enregistrement @ IN A IPpublic ou privé dans la db ?
2) donc ta zone ne pointe pas sur l’ip de ton serveur DNS.
3) comment le monde entier sais que toto.com c’est ton serveur ?[/quote]

  1. Exact.
  2. Une zone est un ensemble d’enregistrements, elle ne pointe vers rien du tout. Ce sont les enregistrements d’adresse qui pointent vers une adresse. Ne pas confondre zone, domaine, nom de domaine, nom d’hôte…
  3. Si “toto.com” est le nom de ton domaine (et de la zone), ce n’est pas obligatoirement aussi le nom de ton serveur qui peut être “www.toto.com” ou n’importe quoi d’autre. Si tu veux que “toto.com” soit aussi le nom de ton serveur, alors il faut effectivement lui créer un enregistrement d’adresse. Mais uniquement dans ce cas, ce n’est donc pas systématique même si c’est assez courant (en général c’est l’adresse du serveur web et non du serveur DNS, ainsi les gens qui tapent le nom de domaine sans www tombent sur le site).

[quote]1) sa m’étonne qu’on puisse faire un host avec une ip
2) genre : www IN A @
3) d’après ce que je sais l’enregistrement CNAME n’est utilisé que pour les noms et non les IP.[/quote]

  1. Et pourtant dans un réseau IP un hôte désigné par son nom est identifié in fine par son adresse IP. D’ailleurs le fichier /etc/hosts contient des associations entre adresses IP et noms d’hôtes. De la même façon dans le DNS un hôte est défini par un enregistrement d’adresse.
  2. Ah non, la donnée d’un enregistrement A (dans la classe IN) est une adresse IPv4, pas un nom de domaine.
  3. En effet un CNAME crée une équivalence entre un nom de domaine et un autre. Et rappelons qu’un nom de domaine n’est pas forcément un nom d’hôte, c’est pourquoi j’insiste sur le fait que le CNAME peut faire plus que dire que deux machines ont la même adresse et peut avoir des effets de bord indésirables si on ne le manie pas correctement.

Non. D’une part la donnée d’un CNAME est un nom de domaine, pas une adresse IP. D’autre part le nom d’un NS ou d’un MX ne doit pas être défini par un CNAME. Trop de risques d’effets de bord.

cool,

on n’est tombé d’accord…

j’ai moi même appris des choses.

merci PascalHambourg.

amicalement,
fabien493.com

Bonsoir et desoler deja pour cette reponse tardive mais je vois qu’il y a eu de bel echange entre vous deux,je pense que j’ai finalement reussi à faire marcher mon dns car j’ai un reponse lol bon voila resultat

dig leadertechplus.ml

; <<>> DiG 9.6.1 <<>> leadertechplus.ml
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37566
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;leadertechplus.ml.             IN      A

;; ANSWER SECTION:
leadertechplus.ml.      7200    IN      A       192.168.0.210

;; AUTHORITY SECTION:
leadertechplus.ml.      7200    IN      NS      ns1.ordinateur.com.

;; ADDITIONAL SECTION:
ns1.ordinateur.com.     7200    IN      A       192.168.0.210

;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Jul  7 08:39:51 2009
;; MSG SIZE  rcvd: 99

Merci encore à Vous deux (fabien493 et PascalHambourg) car j’ai appris quelque chose avec vous sur ce forum et je dois encore m’ameliorer encore sur bind lol merci et à bientot

Juste deux petite remarques :

Merci pour l’info effectivement le tdl “ml” c’est pour le Mali et le domain ordinateur.com existe mais je pense que cette fois le resultat renvoyer par la commande dig et le nslookup est corresponde à mon adressage ip et pour l’info c’est vraiment pour apprendre et savoir comment mettre en place et configurer un serveur dns

C’est toi qui vois si tu veux éviter tout risque de confusion ou de conflit avec des noms de domaines existants ou susceptibles d’exister…