« Discussion:BIND cache DNS » : différence entre les versions

De Lea Linux
Aller à la navigation Aller à la recherche
(conversion de la documentation originale de Léa par HTML::WikiConverter)
 
 
(2 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
=Commentaires de : UserMna=
posté le 2005-09-01 10:13:29
Je prends l'exemple d'architecture suivante dans laquelle je crée mon serveur DNS qui sert de relais
Je prends l'exemple d'architecture suivante dans laquelle je crée mon serveur DNS qui sert de relais


| Client | <11 oct 2005 à 17:33 (CEST)~> [ Mon srv DNS ] <11 oct 2005 à 17:33 (CEST)~> [ srv DNS du FAI ou root DNS d'@ ]
| Client | <~> [ Mon srv DNS ] <~> [ srv DNS du FAI ou root DNS d'@ ]


à partir de BIND 9.1 //(version à préciser au besoin)// les requêtes DNS émisent par [ Mon srv DNS ] à destination de ces pairs
à partir de BIND 9.1 <span style="color:#0000FF;">''(version à préciser au besoin)''</span> les requêtes DNS émisent par [ Mon srv DNS ] à destination de ces pairs [ srv DNS du FAI ou root DNS d'@ ] utilisent l'option edns (Extended DNS).
[ srv DNS du FAI ou root DNS d'@ ] utilisent l'option edns (Extended DNS).


Ce flag n'est compris aujourd'hui que par BIND lui même (à niveau de version suffisante).
Ce flag n'est compris aujourd'hui que par BIND lui même (à niveau de version suffisante).


Cela peut induire des performances catastrophiques car [ Mon srv DNS ] va effectuer 2 requêtes avec l'option activée avant de tenter ( à tout hasard ;o)) une requête sans cette option.
Cela peut induire des performances catastrophiques car [ Mon srv DNS ] va effectuer 2 requêtes avec l'option activée avant de tenter ( à tout hasard ;o)) une requête sans cette option.
Le temps requis pour cette dynamique d'échange comprend donc 2 timeout's qui représentent 2 * 5 secondes par défaut ....
Le temps requis pour cette dynamique d'échange comprend donc 2 timeout's qui représentent 2 * 5 secondes par défaut ....


donc chaque requêtes DNS de | Client | prends environ 10s + 40 à 1000 ms soit près de **11 secondes !!!**
donc chaque requêtes DNS de | Client | prends environ 10s + 40 à 1000 ms soit près de '''11 secondes !!!'''


Pour éviter ce comportement il est nécessaire d'ajouter dans le fichier de configuration : /etc/named.conf l'option suivante :
Pour éviter ce comportement il est nécessaire d'ajouter dans le fichier de configuration : /etc/named.conf l'option suivante :
Ligne 21 : Ligne 17 :
cette ligne est à ajouter pour chaque serveur posant problème.
cette ligne est à ajouter pour chaque serveur posant problème.


//__ex:__//
''<u>ex :</u>''
server 195.68.0.2 {edns no;};
<code>server 195.68.0.2 {edns no;};
server 195.68.0.3 {edns no;};
server 195.68.0.3 {edns no;};
</code>


voilà j'espère que cette remarque sauvera du temps de recherche et diagnostic à certains d'entre vous (euh là y'a un peu de vécu ;o) ).
voilà j'espère que cette remarque sauvera du temps de recherche et diagnostic à certains d'entre vous (euh là y'a un peu de vécu ;o) ).


**//__rmq:__//** En toute rigueur le [ srv DNS du FAI ou root DNS d'@ ] doit répondre avec un rejet à la première requête comportant le flag edns mais ce rejet n'est soit jamais émis soit filtré par des firewalls
'''''<u>rmq :</u>''''' En toute rigueur le [ srv DNS du FAI ou root DNS d'@ ] doit répondre avec un rejet à la première requête comportant le flag edns mais ce rejet n'est soit jamais émis soit filtré par des firewalls
 
==Sous debian==
<code> # aptitude install bind
(...)
# vi /etc/resolv.conf
</code>
 
On modifie <code>search</code> par <code>search domain.tld</code> et on rajoute <code>nameserver 127.0.0.1</code>.
 
<code> # /etc/init.d/bind restart
</code>

Dernière version du 14 décembre 2023 à 19:15

Je prends l'exemple d'architecture suivante dans laquelle je crée mon serveur DNS qui sert de relais

| Client | <~> [ Mon srv DNS ] <~> [ srv DNS du FAI ou root DNS d'@ ]

à partir de BIND 9.1 (version à préciser au besoin) les requêtes DNS émisent par [ Mon srv DNS ] à destination de ces pairs [ srv DNS du FAI ou root DNS d'@ ] utilisent l'option edns (Extended DNS).

Ce flag n'est compris aujourd'hui que par BIND lui même (à niveau de version suffisante).

Cela peut induire des performances catastrophiques car [ Mon srv DNS ] va effectuer 2 requêtes avec l'option activée avant de tenter ( à tout hasard ;o)) une requête sans cette option. Le temps requis pour cette dynamique d'échange comprend donc 2 timeout's qui représentent 2 * 5 secondes par défaut ....

donc chaque requêtes DNS de | Client | prends environ 10s + 40 à 1000 ms soit près de 11 secondes !!!

Pour éviter ce comportement il est nécessaire d'ajouter dans le fichier de configuration : /etc/named.conf l'option suivante : server [adr_ip_du_serveur] { edns no;};

cette ligne est à ajouter pour chaque serveur posant problème.

ex : server 195.68.0.2 {edns no;}; server 195.68.0.3 {edns no;};

voilà j'espère que cette remarque sauvera du temps de recherche et diagnostic à certains d'entre vous (euh là y'a un peu de vécu ;o) ).

rmq : En toute rigueur le [ srv DNS du FAI ou root DNS d'@ ] doit répondre avec un rejet à la première requête comportant le flag edns mais ce rejet n'est soit jamais émis soit filtré par des firewalls

Sous debian

# aptitude install bind (...)

# vi /etc/resolv.conf

On modifie search par search domain.tld et on rajoute nameserver 127.0.0.1.

# /etc/init.d/bind restart