Bind9 et alias d'un domaine avec un autre domaine

Bonjour, j’ai un soucis avec bind9 et sa configuration :
J’ai 2 domaines, par exemple a.fr et b.com, et a.fr est un alias de b.com . Donc j’ai créé 2 fichiers de zones dans bind : db.a.fr et db.b.com . Voici leur config :

db.a.fr :

[code]$TTL 900
@ IN SOA serveur.com. admin.serveur.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL

@ IN NS serveur.com.
a.fr. IN CNAME b.com.
www IN CNAME www.b.com.

ns1 IN A xxx.xxx.xxx.xxx

a.fr. IN NS ns1.serveur.com.
[/code]

db.b.com :

[code]$TTL 900
@ IN SOA serveur.com. admin.serveur.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL

@ IN NS serveur.com.
b.com. IN A xx.xx.xx.xx
www IN A xx.xx.xx.xx

ns1 IN A xxx.xxx.xxx.xxx
b.com. IN NS ns1.serveur.com.[/code]

lorsque je fais un sudo named-checkconf -z, j’obtiens ceci :

dns_master_load: /etc/bind/zones/db.a.fr:10: a.fr: CNAME and other data
dns_master_load: /etc/bind/zones/db.a.fr:11: a.fr: CNAME and other data
zone a.fr/IN: loading from master file /etc/bind/zones/db.a.fr failed: CNAME and other data
zone a.fr/IN: not loaded due to errors.
_default/a.fr/IN: CNAME and other data

j’ai aussi essayé de tout mettre dans le fichier db.b.com en rajoutant la ligne suivante :

mais en relancant ma commande sudo named-checkconf -z, j’obtiens ceci :
/etc/bind/zones/db.b.com:13: ignoring out-of-zone data (a.fr)

et bien entendu (meme après avoir redémarré bind), lorsque je fais un dig @serveur.com a.fr, je n’ai pas de réponse.

je remercie d’avance pour les éventuelles réponses :slightly_smiling:

La première colonne doit renseigner ce qu’il y a avant le nom de domaine (par exemple, tu mets « www » et non « a.fr »). Si tu veux mettre le nom de domaine, il faut utiliser « @ » (comme tu l’as fait pour les champs SOA). Ce qui donnerait donc :
db.a.fr :

[code]$TTL 900
@ IN SOA serveur.com. admin.serveur.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL

@ IN NS serveur.com.
@ IN CNAME b.com.
www IN CNAME www.b.com.

ns1 IN A xxx.xxx.xxx.xxx

@ IN NS ns1.serveur.com.
[/code]

db.b.com :

[code]$TTL 900
@ IN SOA serveur.com. admin.serveur.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL

@ IN NS serveur.com.
@ IN A xx.xx.xx.xx
www IN A xx.xx.xx.xx

ns1 IN A xxx.xxx.xxx.xxx
@ IN NS ns1.serveur.com.[/code]

bonjour et merci de ta réponse.

je pensais que mettre “domaine.fr.” (avec le “.” a la fin) servait a montrer l’origine (comme le “@” que tu as mis a la place de a.fr. par exemple).

2ème chose, j’ai modifié comme dans tes exemples et ca ne change rien :

dns_master_load: /etc/bind/zones/db.a.fr:10: a.fr: CNAME and other data
dns_master_load: /etc/bind/zones/db.a.fr:10: a.fr: CNAME and other data
dns_master_load: /etc/bind/zones/db.a.fr:21: a.fr: CNAME and other data
zone a.fr/IN: loading from master file /etc/bind/zones/db.a.fr failed: CNAME and other data
zone a.fr/IN: not loaded due to errors.
_default/a.fr/IN: CNAME and other data

j’ai le même soucis pour pour les MX :

mx IN CNAME mailbox.orange-business.com. a.fr. IN MX 10 mx.a.fr.

mon check me renvoie :
zone a.fr/IN: a.fr/MXmx.a.fr’ is a CNAME (illegal)

si je change ma config par :

je n’ai plus l’erreur mais lorsque j’essaye de la contacter avec dig @serveur.com mx.a.fr, je n’ai pas de réponse…

je pense pas être le seul à avoir ce genre de configuration, donc si quelqu’un pouvait me dépanner! merci

a.fr: CNAME and other data
Si un RRset (nom de domaine, pour faire court) a un enregistrement de type CNAME, il ne peut pas avoir d’autres enregistrements.
“xx CNAME yy” signifie que xx est un alias de yy valable pour tout les types d’enregistrements. On ne peut donc pas définir le nom d’une zone avec un CNAME puisqu’une zone doit avoir des enregistrements SOA et NS, ce que le CNAME interdit. La définition d’un CNAME ne peut se faire que dans une zone de niveau supérieur (ex : dans a.fr pour www.a.fr). Si ce n’est pas possible comme ici, il faut dupliquer les enregistrements dans les deux zones.

mx.a.fr’ is a CNAME (illegal)
On ne doit pas utiliser comme MX un nom défini par un CNAME. Cela doit être un enregistrement d’adresse A ou AAAA.

ignoring out-of-zone data (a.fr)
Une zone ne peut pas contenir des enregistrements pour un nom de domaine (a.fr) qui n’appartient par à la zone (b.com).

Merci pour ta réponse.

[quote]‘mx.a.fr’ is a CNAME (illegal)
On ne doit pas utiliser comme MX un nom défini par un CNAME. Cela doit être un enregistrement d’adresse A ou AAAA.[/quote]

si je veux rester sur un CNAME, il faudrait que je laisse uniquement la ligne :

et dans ce cas, si quelqu’un contact mx.a.fr, il sera redirigé sur mailbox.orange-business.com . c’est correct?

Merci

Un peu de lecture en sus des RFC 1034 et 1035 : fr.wikipedia.org/wiki/Domain_Na … #MX_record

Un champs MX se compose comme ceci :

exemple.org. IN MX 10 exemple.org. exemple.org. IN MX 50 lists.exemple.org.

Pour Bind ça donnerai un truc comme ça :

[code]
$TTL 86400

@ IN SOA ns.exemple.org. exemple.exemple.org. (
2012101701 ; serial number YYMMDDNN
28800 ; Refresh
7200 ; Retry
864000 ; Expire
86400 ; Min TTL
)

            NS      ns.exemple.org. 

            MX      10 mail.exemple.org.[/code]

Je te laisse t’en inspirer et compléter ta redirection web et tes différents champs de type A.

Je ne sais pas trop ce que ça vaux mais il y a quelques temps pour me rassurer j’utilisais ce genre de générateur pour comparer ce que je chercher à configurer : pgl.yoyo.org/as/bind-zone-file-creator.php

Astuce pour vérifier une zone DNS après réplication de la dite zone :

dig -t any exemple.org @nom_de_serveur_dns_exterieur

quand je dit un serveur extérieur c’est dans le cas ou vous tenter de tester une réplication en dehors de votre réseau DNS.

Encore une page de manuel : linux.die.net/man/1/dig

L’option -t permet de tester directement vos type d’enregistrement et le any permet de récupérer toute votre zone rattaché au domaine précisé, le tout sur un serveur de nom de votre choix par exemple le 8.8.8.8 merci Google ^^ ( mais c’est pas le seul ).

je connais déjà tout ca, mais je gère pas encore le domaine orange.fr malheureusement :confused:

donc pour mon cas je vois ca comme ca :

lorsque mon client voudra accéder a mx.a.fr, il sera redirigé sur mailbox.orange-business.com, qui lui doit etre défini avec des champs MX par orange

Pourquoi ne pas utiliser directement le bon serveur mail, pourquoi devoir rediriger ton MX absolument, si tu ne donne pas toutes les contraintes on ne pourra pas t’aider pleinement.

alors ce que tu cherche à faire c’est mais c’est pas faisable :

j’héberge et je gère le domaine a.fr . avant les mails étaient sur un de mes serveurs mais ils utilisent maintenant les boites orange. donc avant j’avais

mx IN A ip_du_serv a.fr. IN MX 10 mx.a.fr.

ils veulent garder le mx.a.fr (pourquoi je ne sais pas)

le plus difficile aussi c’est que je passe de dyndns, qui autorise tout, à bind9 qui est restrictif. donc j’essaye d’adapter la conf mais ca bloque quelques fois :confused:

[quote=“skullone”]j’héberge et je gère le domaine a.fr . avant les mails étaient sur un de mes serveurs mais ils utilisent maintenant les boites orange. donc avant j’avais

mx IN A ip_du_serv a.fr. IN MX 10 mx.a.fr.

ils veulent garder le mx.a.fr (pourquoi je ne sais pas)

le plus difficile aussi c’est que je passe de dyndns, qui autorise tout, à bind9 qui est restrictif. donc j’essaye d’adapter la conf mais ca bloque quelques fois :/[/quote]

Dans ce cas passe ton mx.b.fr en relay de mx.a.fr si j’ai bien compris ( ou l’inverse si j’ai pas compris le sens des distribution de tes mails ) mais ça ne ce passe pas par les DNS cette configuration et peu poser des soucis de via le SPAM qu’il faut absolument garder sous contrôle donc pas d’openrelay.
Il faudra aussi prendre soin de bien vérifier la transparence de la gestion des headers des mails et la cohérance des champs SPF impliqué.

[quote=“skullone”]si je veux rester sur un CNAME, il faudrait que je laisse uniquement la ligne :

et dans ce cas, si quelqu’un contacte mx.a.fr, il sera redirigé sur mailbox.orange-business.com . c’est correct?[/quote]
Oui, mais tu ne peux pas définir mx.a.fr comme cible d’un enregistrement MX (puisque ça ne peut pas être un nom défini par un CNAME). Or en général un nom de type mx.domaine désigne un serveur de mail vers lequel pointe un enregistrement MX.

Concrètement, il est utilisé comment, ce nom d’hôte ?

je pense au niveau de leur client mail. (peut etre qu’ils utilisent que le mailbox.orange… mais ca je ne peux pas savoir)