Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Bind9

41 réponses
Avatar
JKB
Bonjour à tous,

J'ai dû modifier ma configuration de bind pour jouer avec les view
et je n'aurais pas dû.

Mon bind fonctionne sous Linux/Debian et sa configuration est la
suivante :

named.conf.options :
acl "trusted" {
127.0.0.1;
::1;
192.168.0.0/16;
2001:7a8:a8ed::/48;
};

acl "lans" {
192.168.0.0/16;
127.0.0.1;
};

acl "slaves" {
178.132.17.109;
194.79.134.46;
};

options {
directory "/var/cache/bind";

// If there is a firewall between you and nameservers you want
// to talk to, you might need to uncomment the query-source
// directive below. Previous versions of BIND always asked
// questions using port 53, but BIND 8.1 and later use an unprivileged
// port by default.

// query-source address * port 53;

// 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 {
// Nerim
195.5.209.150;
194.79.128.150;
2001:7a8:1:1::70;
2001:7a8:1:5::69;
};

auth-nxdomain no; # conform to RFC1035
allow-query { any; };
allow-recursion { trusted; };
allow-query-cache { trusted; };
listen-on-v6 { any; };
};

named.conf.local:
view "external" {
// match-clients { ! "lans"; };
match-clients { any; };
recursion yes;

zone "systella.fr" {
type master;
notify yes;
allow-transfer { "slaves"; };
allow-update { "lans"; };
file "/etc/bind/systella.fr.external";
};
};

Je n'ai pas de vue active car il y a un second problème que
j'évoquerai lorsque le premier sera réglé.

Je simplifie, bind sert plusieurs domaines et des reverses (j'ai une
délégation pour cela). Le fichier /etc/bind/systella.fr.external
est correct, il s'agissait du fichier que j'utilisais auparavant.

Il y a un slave sur noemie.nerim.net.

En local, tout fonctionne :
Root rayleigh:[/var/lib/iptables] > dig @127.0.0.1 rayleigh.systella.fr

; <<>> DiG 9.11.5-P4-5.1-Debian <<>> @127.0.0.1 rayleigh.systella.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33292
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: d7e17772ca44a43b7b4ca9085d2b4a27dbdc4eca0fb5a4e1 (good)
;; QUESTION SECTION:
;rayleigh.systella.fr. IN A

;; ANSWER SECTION:
rayleigh.systella.fr. 86400 IN A 213.41.150.218

;; AUTHORITY SECTION:
systella.fr. 86400 IN NS newton.systella.fr.
systella.fr. 86400 IN NS rayleigh.systella.fr.
systella.fr. 86400 IN NS noemie.nerim.net.

;; ADDITIONAL SECTION:
newton.systella.fr. 86400 IN A 213.41.149.211
noemie.nerim.net. 86071 IN A 178.132.17.109

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: dim. juil. 14 17:28:39 CEST 2019
;; MSG SIZE rcvd: 190

À distance aussi :
legendre# dig @213.41.150.218 rayleigh.systella.fr

; <<>> DiG 9.10.5-P1 <<>> @213.41.150.218 rayleigh.systella.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10924
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 3, ADDITIONAL: 2
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;rayleigh.systella.fr. IN A

;; ANSWER SECTION:
rayleigh.systella.fr. 86400 IN A 213.41.150.218

;; AUTHORITY SECTION:
systella.fr. 86400 IN NS newton.systella.fr.
systella.fr. 86400 IN NS rayleigh.systella.fr.
systella.fr. 86400 IN NS noemie.nerim.net.

;; ADDITIONAL SECTION:
newton.systella.fr. 86400 IN A 213.41.149.211

;; Query time: 31 msec
;; SERVER: 213.41.150.218#53(213.41.150.218)
;; WHEN: Sun Jul 14 17:29:17 CEST 2019
;; MSG SIZE rcvd: 146

Sauf que le slave ne récupère rien :
legendre# dig @noemie.nerim.net rayleigh.systella.fr

; <<>> DiG 9.10.5-P1 <<>> @noemie.nerim.net rayleigh.systella.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 62659
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;rayleigh.systella.fr. IN A

;; Query time: 15 msec
;; SERVER: 178.132.17.109#53(178.132.17.109)
;; WHEN: Sun Jul 14 17:30:21 CEST 2019
;; MSG SIZE rcvd: 49

Je ne comprends pas d'où provient le "recursion requested but not
available". Un tcpdump semble envoyer la notifisation vers
noemie.nerim.net mais s'arrête là. Naturellement, j'ai incrémenté
le compteur, rien n'y fait, noemie ne prend pas la zone.

Je suis preneur de toute idée pour remettre la chose d'équerre.

Bien cordialement,

JKB

--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
=> http://loubardes.de-charybde-en-scylla.fr

10 réponses

1 2 3 4 5
Avatar
JKB
Le Sun, 14 Jul 2019 15:33:20 +0000 (UTC),
JKB écrivait :
Extrait du tcpdump :
17:40:34.462841 IP rayleigh.systella.fr.59367 > noemie.nerim.net.domain: 41799 notify [b2&3=0x2400] [1a] SOA? systella.fr. (83)
17:40:34.482051 IP noemie.nerim.net.domain > rayleigh.systella.fr.59367: 41799 notify NotAuth- 0/0/0 (29)
17:40:34.914828 IP rayleigh.systella.fr.35003 > noemie.nerim.net.domain: 50253+ [1au] A? rayleigh.systella.fr. (61)
17:40:34.931248 IP noemie.nerim.net.domain > rayleigh.systella.fr.35003: 50253 Refused- 0/0/1 (49)
17:40:36.007386 IP rayleigh.systella.fr.38028 > noemie.nerim.net.domain: 6176+ [1au] A? rayleigh.systella.fr. (61)
17:40:36.023919 IP noemie.nerim.net.domain > rayleigh.systella.fr.38028: 6176 Refused- 0/0/1 (49)
17:40:37.099639 IP rayleigh.systella.fr.59604 > noemie.nerim.net.domain: 44415+ [1au] A? rayleigh.systella.fr. (61)
17:40:37.115457 IP noemie.nerim.net.domain > rayleigh.systella.fr.59604: 44415 Refused- 0/0/1 (49)
17:40:38.189788 IP rayleigh.systella.fr.38082 > noemie.nerim.net.domain: 39747+ [1au] A? rayleigh.systella.fr. (61)
17:40:38.207346 IP noemie.nerim.net.domain > rayleigh.systella.fr.38082: 39747 Refused- 0/0/1 (49)
17:40:39.282689 IP rayleigh.systella.fr.44034 > noemie.nerim.net.domain: 56082+ [1au] A? rayleigh.systella.fr. (61)
17:40:39.298397 IP noemie.nerim.net.domain > rayleigh.systella.fr.44034: 56082 Refused- 0/0/1 (49)
Le Refused- me semble étrange...
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
=> http://loubardes.de-charybde-en-scylla.fr
Avatar
Pascal Hambourg
Le 14/07/2019 à 17:33, JKB a écrit :
J'ai dû modifier ma configuration de bind pour jouer avec les view
et je n'aurais pas dû.

(...)
legendre# dig @noemie.nerim.net rayleigh.systella.fr
; <<>> DiG 9.10.5-P1 <<>> @noemie.nerim.net rayleigh.systella.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 62659
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

(...)
Je ne comprends pas d'où provient le "recursion requested but not
available".

noemie n'est pas un serveur récursif, c'est tout. Cela ne devrait pas
l'empêcher de répondre aux requêtes pour lesquelles il fait autorité.
Il y a fort longtemps que j'ai mis en place des vues sur mon propre
serveur DNS et n'y ai plus touché depuis, mais je ne vois pas le rapport
avec le fait que le NS secondaire refuse de répondre, à moins qu'il ait
désactivé la zone à cause de l'expiration du délai de rafraîchissement.
Il y a un truc pas net avec ta zone : d'après tous les NS que je peux
consulter y compris ceux de fr, les NS faisant autorité sont maridia et
noemie et c'est tout. Les DNS caches récursifs de Nerim ont encore en
cache l'adresse IP de rayleigh mais ceux de Free renvoient SERVFAIL.
Avatar
JKB
Le Sun, 14 Jul 2019 22:42:09 +0200,
Pascal Hambourg écrivait :
Le 14/07/2019 à 17:33, JKB a écrit :
J'ai dû modifier ma configuration de bind pour jouer avec les view
et je n'aurais pas dû.

(...)
legendre# dig @noemie.nerim.net rayleigh.systella.fr
; <<>> DiG 9.10.5-P1 <<>> @noemie.nerim.net rayleigh.systella.fr
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 62659
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

(...)
Je ne comprends pas d'où provient le "recursion requested but not
available".

noemie n'est pas un serveur récursif, c'est tout. Cela ne devrait pas
l'empêcher de répondre aux requêtes pour lesquelles il fait autorité.

Noemie est un slave. Donc il doit récupérer la zone or il ne le fait
pas. Pourtant, le transfert est autorisé et
dig @localhost systella.fr axfr
renvoie bien la zone en local.
Il y a fort longtemps que j'ai mis en place des vues sur mon propre
serveur DNS et n'y ai plus touché depuis, mais je ne vois pas le rapport
avec le fait que le NS secondaire refuse de répondre, à moins qu'il ait
désactivé la zone à cause de l'expiration du délai de rafraîchissement.

Il refuse de répondre parce que même après notification, il ne
récupère pas la zone.
Il y a un truc pas net avec ta zone : d'après tous les NS que je peux
consulter y compris ceux de fr, les NS faisant autorité sont maridia et
noemie et c'est tout. Les DNS caches récursifs de Nerim ont encore en
cache l'adresse IP de rayleigh mais ceux de Free renvoient SERVFAIL.

Il y a effectivement un truc pas net. Les modifications des serveurs
de nom autoritaires n'ont pas encore été propagées !... Donc je me
retrouve toujours avec maridia.nerim.net et noemie.nerim.net. J'ai
viré la zone de maridia puisque le DNS master a été changé d'endroit
et noemie refuse de prendre cette zone. J'ai eu le support de Nerim,
mais aucun retour jusqu'à présent.
Je ne sais pas comment se font les modifications sur les .fr, mais
je trouve que depuis hier, c'est un peu longuet...
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
=> http://loubardes.de-charybde-en-scylla.fr
Avatar
Pascal Hambourg
Le 14/07/2019 à 23:05, JKB a écrit :
Il y a effectivement un truc pas net. Les modifications des serveurs
de nom autoritaires n'ont pas encore été propagées !... Donc je me
retrouve toujours avec maridia.nerim.net et noemie.nerim.net. J'ai
viré la zone de maridia puisque le DNS master a été changé d'endroit
et noemie refuse de prendre cette zone. J'ai eu le support de Nerim,
mais aucun retour jusqu'à présent.

Le DNS maître a changé d'adresse IP aussi ? Dans ce cas c'est normal que
le secondaire rejette les NOTIFY de la nouvelle adresse et envoie les
requêtes SOA et AXFR à l'ancienne adresse tant que Nerim ne fait pas la
modification.
Avatar
JKB
Le Sun, 14 Jul 2019 23:50:33 +0200,
Pascal Hambourg écrivait :
Le 14/07/2019 à 23:05, JKB a écrit :
Il y a effectivement un truc pas net. Les modifications des serveurs
de nom autoritaires n'ont pas encore été propagées !... Donc je me
retrouve toujours avec maridia.nerim.net et noemie.nerim.net. J'ai
viré la zone de maridia puisque le DNS master a été changé d'endroit
et noemie refuse de prendre cette zone. J'ai eu le support de Nerim,
mais aucun retour jusqu'à présent.

Le DNS maître a changé d'adresse IP aussi ? Dans ce cas c'est normal que
le secondaire rejette les NOTIFY de la nouvelle adresse et envoie les
requêtes SOA et AXFR à l'ancienne adresse tant que Nerim ne fait pas la
modification.

Justement, la modication semble faite chez Nerim...
Et les DNS qui ne se propagent toujours pas, ce qui me permettrait
d'avoir au moins les deux masters actuels ! Qu'est-ce qu'ils
foutent, chez Amen ?! Dans l'interface, j'ai les bons DNS, mais rien
ne se passe.
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
=> http://loubardes.de-charybde-en-scylla.fr
Avatar
JKB
Le Sun, 14 Jul 2019 22:42:09 +0200,
Pascal Hambourg écrivait :
Le 14/07/2019 à 17:33, JKB a écrit :
Il y a fort longtemps que j'ai mis en place des vues sur mon propre
serveur DNS et n'y ai plus touché depuis, mais je ne vois pas le rapport
avec le fait que le NS secondaire refuse de répondre, à moins qu'il ait
désactivé la zone à cause de l'expiration du délai de rafraîchissement.

Tiens, Pascal. Comme tu parles de vues. Il y a un truc que je ne
pige pas.
J'ai déclaré :
acl "lans" {
192.168.0.0/16;
127.0.0.1;
};
Dans les vues, j'ai donc une vue :
view "internal" {
match-clients { "lans"; };
...
};
et j'ai voulu écrire :
view "external" {
match-client { ! "lans"; };
...
};
Ça ne fonctionne pas. Je me prends un :
15-Jul-2019 10:59:38.949 client @0x7ff04c4e5830 213.41.150.218#50990 (rayleigh.systella.fr): view external local: query (cache) 'rayleigh.systella.fr/A/IN' denied
Si je remplace match-client { ! "lans"; }; par match-client { any; };
ça fonctionne, mais pour moi, le contraire de "lans";, c'est !
"lans";.
Je suppose qu'il y a un truc qui m'a échappé.
Bien cordialement,
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
=> http://loubardes.de-charybde-en-scylla.fr
Avatar
Pascal Hambourg
Le 15/07/2019 à 10:13, JKB a écrit :
Le Sun, 14 Jul 2019 23:50:33 +0200,
Pascal Hambourg écrivait :
Le 14/07/2019 à 23:05, JKB a écrit :
Il y a effectivement un truc pas net. Les modifications des serveurs
de nom autoritaires n'ont pas encore été propagées !... Donc je me
retrouve toujours avec maridia.nerim.net et noemie.nerim.net. J'ai
viré la zone de maridia puisque le DNS master a été changé d'endroit
et noemie refuse de prendre cette zone. J'ai eu le support de Nerim,
mais aucun retour jusqu'à présent.

Le DNS maître a changé d'adresse IP aussi ? Dans ce cas c'est normal que
le secondaire rejette les NOTIFY de la nouvelle adresse et envoie les
requêtes SOA et AXFR à l'ancienne adresse tant que Nerim ne fait pas la
modification.

Justement, la modication semble faite chez Nerim...

A quoi le vois-tu ?
Et les DNS qui ne se propagent toujours pas, ce qui me permettrait
d'avoir au moins les deux masters actuels ! Qu'est-ce qu'ils
foutent, chez Amen ?! Dans l'interface, j'ai les bons DNS, mais rien
ne se passe.

Je me demande si le fait que les NS de la zone ne soient pas cohérents
n'y serait pas pour quelque chose.
Avatar
Pascal Hambourg
Le 15/07/2019 à 11:01, JKB a écrit :
Tiens, Pascal. Comme tu parles de vues. Il y a un truc que je ne
pige pas.
J'ai déclaré :
acl "lans" {
192.168.0.0/16;
127.0.0.1;
};
Dans les vues, j'ai donc une vue :
view "internal" {
match-clients { "lans"; };
...
};
et j'ai voulu écrire :
view "external" {
match-client { ! "lans"; };
...
};

Ça ne devrait pas être "match-clientS" ?
Ça ne fonctionne pas. Je me prends un :
15-Jul-2019 10:59:38.949 client @0x7ff04c4e5830 213.41.150.218#50990 (rayleigh.systella.fr): view external local: query (cache) 'rayleigh.systella.fr/A/IN' denied

Concrètement, quel résultat attendais-tu et quel résultat as-tu obtenu ?
D'après le log, on dirait bien que c'est la vue "external" qui a été
sélectionnée, non ?
Si je remplace match-client { ! "lans"; }; par match-client { any; };
ça fonctionne, mais pour moi, le contraire de "lans";, c'est !
"lans";.

Pour info, j'ai aussi utilisé "any" dans ma vue externe, placée en dernier.
Je suppose qu'il y a un truc qui m'a échappé.

Je ne suis pas sûr et je n'ai plus la doc sous la main pour vérifier,
mais il me semble qu'il y a une subtilité dans l'interprétation de "!".
Si je me souviens bien, ça n'inverse pas seulement la correspondance qui
suit mais ça veut dire que si la correspondance est vraie alors le
résultat est faux et l'évaluation s'arrête là. Par exemple je vois que
dans mon fichier de conf j'ai écrit ceci :
listen-on { ! x.x.x.x/30; any; };
("tout sauf x.x.x.x/30") parce que je ne voulais pas que BIND écoute sur
ce bloc d'adresses utilisées pour diverses choses temporaires.
Avatar
JKB
Le Mon, 15 Jul 2019 19:38:45 +0200,
Pascal Hambourg écrivait :
Le 15/07/2019 à 10:13, JKB a écrit :
Le Sun, 14 Jul 2019 23:50:33 +0200,
Pascal Hambourg écrivait :
Le 14/07/2019 à 23:05, JKB a écrit :
Il y a effectivement un truc pas net. Les modifications des serveurs
de nom autoritaires n'ont pas encore été propagées !... Donc je me
retrouve toujours avec maridia.nerim.net et noemie.nerim.net. J'ai
viré la zone de maridia puisque le DNS master a été changé d'endroit
et noemie refuse de prendre cette zone. J'ai eu le support de Nerim,
mais aucun retour jusqu'à présent.

Le DNS maître a changé d'adresse IP aussi ? Dans ce cas c'est normal que
le secondaire rejette les NOTIFY de la nouvelle adresse et envoie les
requêtes SOA et AXFR à l'ancienne adresse tant que Nerim ne fait pas la
modification.

Justement, la modication semble faite chez Nerim...

A quoi le vois-tu ?

À ce qui est dans l'interface admin.
Et les DNS qui ne se propagent toujours pas, ce qui me permettrait
d'avoir au moins les deux masters actuels ! Qu'est-ce qu'ils
foutent, chez Amen ?! Dans l'interface, j'ai les bons DNS, mais rien
ne se passe.

Je me demande si le fait que les NS de la zone ne soient pas cohérents
n'y serait pas pour quelque chose.

Possible. Quoi qu'il en soit, cela fait 72 heures que j'attends la
modification de l'AFNIC et ça comment à être long. Entre temps, j'ai
eu le support de Nérim qui a récupéré la zone à la main depuis
maridia et qui a repris le DNS primaire le temps que cette
modification des DNS autoritaires soit effective !...
Pour l'instant, la seule réponse du registrar est : "nous sommes
encore dans les délais contractuels"...
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
=> http://loubardes.de-charybde-en-scylla.fr
Avatar
JKB
Le Mon, 15 Jul 2019 19:59:40 +0200,
Pascal Hambourg écrivait :
Le 15/07/2019 à 11:01, JKB a écrit :
Tiens, Pascal. Comme tu parles de vues. Il y a un truc que je ne
pige pas.
J'ai déclaré :
acl "lans" {
192.168.0.0/16;
127.0.0.1;
};
Dans les vues, j'ai donc une vue :
view "internal" {
match-clients { "lans"; };
...
};
et j'ai voulu écrire :
view "external" {
match-client { ! "lans"; };
...
};

Ça ne devrait pas être "match-clientS" ?

J'ai bien un 's' dans mon fichier. Erreur de recopie, désolé.
Ça ne fonctionne pas. Je me prends un :
15-Jul-2019 10:59:38.949 client @0x7ff04c4e5830 213.41.150.218#50990 (rayleigh.systella.fr): view external local: query (cache) 'rayleigh.systella.fr/A/IN' denied

Concrètement, quel résultat attendais-tu et quel résultat as-tu obtenu ?
D'après le log, on dirait bien que c'est la vue "external" qui a été
sélectionnée, non ?

J'aimerais que la vue 'external' ne chevauche pas 'internal'. Ça me
semblerait plus propre.
Si je remplace match-client { ! "lans"; }; par match-client { any; };
ça fonctionne, mais pour moi, le contraire de "lans";, c'est !
"lans";.

Pour info, j'ai aussi utilisé "any" dans ma vue externe, placée en dernier.
Je suppose qu'il y a un truc qui m'a échappé.

Je ne suis pas sûr et je n'ai plus la doc sous la main pour vérifier,
mais il me semble qu'il y a une subtilité dans l'interprétation de "!".
Si je me souviens bien, ça n'inverse pas seulement la correspondance qui
suit mais ça veut dire que si la correspondance est vraie alors le
résultat est faux et l'évaluation s'arrête là. Par exemple je vois que
dans mon fichier de conf j'ai écrit ceci :
listen-on { ! x.x.x.x/30; any; };
("tout sauf x.x.x.x/30") parce que je ne voulais pas que BIND écoute sur
ce bloc d'adresses utilisées pour diverses choses temporaires.

Bien vu. Encore un truc piégeux. Mais dans ce cas, pourquoi la bonne
vue est-elle sélectionnée alors que ça échoue sur un "WARNING:
recursion requested but not available" ?
JKB
--
Si votre demande me parvient sur carte perforée, je titiouaillerai très
volontiers une réponse...
=> http://grincheux.de-charybde-en-scylla.fr
=> http://loubardes.de-charybde-en-scylla.fr
1 2 3 4 5