Améliorations du résolveur DNS?

4

Je viens de rencontrer la configuration suivante de /etc/resolv.conf qui est / était supposée augmenter la vitesse de résolution DNS:

nameserver 1.1.1.1
nameserver 2.2.2.2
nameserver 3.3.3.3
option rotate 
option timeout:1

J'ai en tête l'option "option", à part l'utilisation de 3 serveurs DNS dans la configuration (en général, seuls deux sont utilisés). Le premier est censé tourner / alterner sur les 3 serveurs DNS et le dernier est censé définir le délai de recherche à 1 (la valeur par défaut est apparemment 5). Je me demande simplement si l'un d'entre vous utilise cette configuration et si vous constatez des améliorations? Certaines personnes disent que cela n’aidera pas du tout les améliorations, mais je ne sais pas vraiment pourquoi.

gyre
la source

Réponses:

4

Cela aggravera les choses dans tous les cas, mais le cas où votre premier serveur de noms échouera. Voici un exemple montrant comment cela aggrave la situation:

Supposons que vous essayez de résoudre un site dont le serveur de noms principal est lent ou en panne. Normalement cela arrive.

  1. Vous essayez votre premier serveur de noms.

  2. Il essaie le serveur de noms principal du site.

  3. Les temps primaires primaires.

  4. Votre premier serveur de noms essaie le secondaire.

  5. Il obtient une réponse.

  6. Vous obtenez une réponse.

Mais avec votre changement, cela se produit:

  1. Vous essayez votre serveur de prénom.

  2. Votre premier serveur de noms essaie le serveur de noms principal du site.

  3. Vous êtes hors du temps.

  4. Vous essayez votre deuxième serveur de noms.

  5. Votre deuxième serveur de noms essaie le serveur de noms principal du site.

  6. Le premier serveur de noms essaie le serveur de noms secondaire du site et obtient la réponse. Dommage que vous ayez déjà expiré.

  7. Vous passez le temps sur le deuxième serveur de noms.

  8. Vous essayez le troisième serveur de noms.

  9. Votre troisième serveur de noms essaie le serveur de noms principal du site.

  10. Votre deuxième serveur de noms a la réponse, dommage que vous ayez déjà dépassé le délai imparti.

  11. Vous passez le temps sur le troisième serveur de noms.

  12. Votre troisième serveur de noms a la réponse, mais vous n'écoutez plus.

Vous arrêtez façon trop tôt et sont très susceptibles d’abandonner juste avant que namserver obtienne la réponse, puis de répéter le processus. Du côté positif, tous vos serveurs de noms ont maintenant le résultat dans leur cache.

David Schwartz
la source
+1 juste pour Du côté positif, tous vos serveurs de noms ont maintenant le résultat dans leur cache. . Quoi qu'il en soit, excellente réduction de l'effet de réduction du délai d'attente trop.
Bob
DNS n'a aucun concept de "serveurs de noms primaires" pour un domaine. Il y a le primaire comme nommé dans la SOA, mais je ne peux imaginer aucun sens résolveur repose sur cela. Les RR NS sont déjà soumis à un va-et-vient à partir de la zone parent ainsi que du serveur faisant autorité qui répond et des caches entre les deux (je pense qu'il existe une option BIND pour désactiver ce comportement). Dans une certaine mesure, DNS a un concept de serveur maître et de serveur esclave, mais cela n’a rien à voir avec le serveur interrogé en premier lieu, mais uniquement là où des modifications sont principalement apportées (par exemple, les configurations de maître masqué / privé). Resolvers peut être et sont souvent différents.
a CVn
@ MichaelKjörling Par "primaire", je veux simplement dire celui qui est revenu en premier. Le tournoi à la ronde est la norme, mais ce n'est pas universel. (Et même si c'était le cas, il ne faudrait que prendre la malchance pour frapper le méchant en premier plus d'une fois.)
David Schwartz
6

Ma façon d'améliorer les performances DNS:

  1. Courir nom du banc pour trouver le fournisseur DNS le plus rapide pour vous.
  2. Terminé.

À ma connaissance, il n’existe pas de configuration magique et locale pour améliorer la vitesse des requêtes DNS. Mais je ne suis pas un expert sur le sujet.

Der Hochstapler
la source
1

IIRC, le premier serveur DNS mis à l'essai a besoin de deux secondes par défaut pour expirer avant le serveur suivant de la liste s'il n'y a pas de réponse. Par conséquent, il semble que la dernière option réduise le délai d'attente à une seconde avant d'essayer la suivante sur la liste.

L’autre option permettant de faire pivoter le serveur DNS qu’il essaie en premier n’est utile que s’ils sont aussi rapides les uns que les autres et que vous essayez de charger des requêtes d’équilibrage de charge.

Je voudrais utiliser namebench, comme Oliver a mentionné , pour déterminer la rapidité de chacun, placez-les dans la liste par ordre de rapidité et supprimez l’option de rotation, à moins qu’ils soient aussi rapides que l’autre.

paradroid
la source