Je n'arrive pas à comprendre pourquoi mon DNS ne fonctionne pas correctement, si je lance creuser depuis le serveur de noms, il fonctionne correctement:
# dig ungl.org
; <<>> DiG 9.5.1-P2.1 <<>> ungl.org
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24585
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 1
;; QUESTION SECTION:
;ungl.org. IN A
;; ANSWER SECTION:
ungl.org. 38400 IN A 188.165.34.72
;; AUTHORITY SECTION:
ungl.org. 38400 IN NS ns.kimsufi.com.
ungl.org. 38400 IN NS r29901.ovh.net.
;; ADDITIONAL SECTION:
ns.kimsufi.com. 85529 IN A 213.186.33.199
;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Mar 13 01:04:06 2010
;; MSG SIZE rcvd: 114
mais lorsque je l'exécute à partir d'un autre serveur dans le même centre de données, je reçois:
# dig @87.98.167.208 ungl.org
; <<>> DiG 9.5.1-P2.1 <<>> @87.98.167.208 ungl.org
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 18787
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;ungl.org. IN A
;; Query time: 1 msec
;; SERVER: 87.98.167.208#53(87.98.167.208)
;; WHEN: Sat Mar 13 01:01:35 2010
;; MSG SIZE rcvd: 26
mon fichier de zone pour ce domaine est
$ttl 38400
ungl.org. IN SOA r29901.ovh.net. mikey.aol.com. (
201003121
10800
3600
604800
38400 )
ungl.org. IN NS r29901.ovh.net.
ungl.org. IN NS ns.kimsufi.com.
ungl.org. IN A 188.165.34.72
localhost. IN A 127.0.0.1
www IN A 188.165.34.72
et le named.conf.options est par défaut:
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
// forwarders {
// 0.0.0.0;
// };
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { ::1; };
listen-on { 127.0.0.1; };
allow-recursion { 127.0.0.1; };
};
named.conf.local:
//
// Do any local configuration here
//
// Consider adding the 1918 zones here, if they are not used in your
// organization
// include "/etc/bind/zones.rfc1918";
zone "eugl.eu" {
type master;
file "/etc/bind/eugl.eu";
notify no;
};
zone "ungl.org" {
type master;
file "/etc/bind/ungl.org";
notify no;
};
Le serveur exécute Ubuntu 9.10 et Bind 9, si quelqu'un peut faire la lumière sur cela, cela me rendrait très heureux!
Merci
Réponses:
bien que je puisse déterrer un ancien fil, je le fais parce que c'est l'un des résultats les plus pertinents lors d'une recherche google pour "statut de requête refusé".
Dans mon cas particulier, j'ai constaté que je devais inclure
allow-query { any; };
dans chaque définition de zone dans named.conf.la source
En un coup d'œil, il me semble qu'il n'est pas configuré pour écouter le reste du monde à cause de
listen-on { 127.0.0.1; };
. Vous devrez y ajouter l'adresse IP appropriée.la source
Je fais le samething mais je mets l'option allow-query dans named.conf.options
la source
NOERROR quand il n'est pas accompagné d'un enregistrement de ressource (RR) signifie qu'il n'y a pas un tel enregistrement, donc lorsque vous obtenez une réponse NOERROR et aucun 'enregistrement' en définissant "version" sur "none", cela fonctionne comme prévu.
Il y a aussi une
allow-query
déclaration de configuration avec BIND9 mais je pense que la valeur par défaut est d'autoriser les requêtes de n'importe où.la source
J'ai eu exactement le même problème (creuser le statut NOERROR localement, creuser le statut REFUSÉ de l'extérieur), et la solution changeait les match-clients de "localhost" (qui est la valeur par défaut pour bind install) à "any" (plus tard, je peux savoir quelle est l'adresse IP exacte de mon fournisseur de nom de domaine et la limiter à cette adresse IP spécifique pour des raisons de sécurité). De plus, j'ai changé le nom de la vue de local_something à default. Le nom n'a pas vraiment d'importance.
C'était vraiment le problème avec cette affaire de «statut de fouille refusée». Juste après avoir modifié le paramètre match-clients, mes requêtes dig @ 12.34.56.78 mydomain.com ont commencé à se résoudre avec l'état NOERROR, et le fournisseur de nom de domaine (godaddy) a immédiatement mis en cache l'enregistrement du serveur de noms. Étant donné que mes fichiers de zone étaient déjà correctement configurés, le nom de domaine est devenu instantanément visible sur Internet.
Cependant, je me suis cogné la tête contre le mur pendant un bon moment pour résoudre celui-ci.
la source
Je devais entrer une référence explicite pour le réseau que je souhaitais autoriser la récursivité. La spécification de "any" n'a pas aidé. Par défaut (Umbutu Server 15), il n'y avait aucune entrée pour cela dans le
/etc/bind/named.conf.options
fichier.la source
Voulez-vous vraiment envoyer les requêtes au bon endroit?
Votre serveur sur 188.165.34.72 (
r29901.ovh.net
) exécute BIND 9.5.1-P2.1 - il répond à une requêtedig @ip version.bind ch txt
comme prévu avec cette chaîne de réponse.Cependant, l'adresse IP que vous avez citée ci-dessus renvoie une
NOTIMPL
erreur, même s'il n'y a rien dans votre fichier de configuration cité concernant les*.bind
pseudo-enregistrements et que BIND nécessite une configuration explicite pour les désactiver.la source
NOERROR
et non l'NOTIMPL
erreur que je vois de cette IP.Parce que vous autorisez la récursivité uniquement à partir de votre machine locale.
Si vous souhaitez autoriser l'ajout de l'adresse IP appropriée et que vous devez modifier la valeur d'écoute sur n'importe quel adaptateur de votre ordinateur local ou mettre l'adresse IP de l'interface de l'ordinateur local:
la source