Enregistrement DNS SOA recommandé TTL par défaut?

43

Actuellement, notre enregistrement DNS SOA est défini comme suit pour stackoverflow.com:

    primary name server = ns1.p19.dynect.net
    serial  = 2009090909
    refresh = 3600 (1 hour)
    retry   = 600 (10 mins)
    expire  = 604800 (7 days)
    default TTL = 60 (1 min)

Existe-t-il de meilleurs choix pour notre durée de vie d'actualisation / nouvelle tentative / expiration / par défaut pour un site comme stackoverflow.com qui reçoit près de 1 million de pages vues par jour?

Geoff Dalgas
la source

Réponses:

48

Le taux de trafic réel sur le site n'est pas pertinent.

Tous ces paramètres (à l'exception de "TTL par défaut") affectent uniquement la fréquence à laquelle les serveurs DNS secondaires de votre domaine interrogent le serveur DNS principal pour obtenir des mises à jour.

Si votre zone ne change que rarement (ce que je pense, la vôtre le fait), votre valeur pour "actualiser" est actuellement un peu faible. En règle générale, le principal doit envoyer un NOTIFYmessage à chaque secondaire dès qu'il y a une mise à jour, à quel moment les secondaires récupèrent immédiatement le fichier de zone. De nos jours, le mécanisme "actualiser / réessayer / expirer" n’est qu’un antichute à cela.

Dans tous les cas, il est probable que votre fournisseur DNS synchronise automatiquement les modifications sur tous les serveurs DNS pertinents à la volée sans utiliser les mécanismes de synchronisation intégrés du DNS, de sorte que les valeurs réelles ne sont probablement pas pertinentes.

Notez que le champ "TTL par défaut" ne signifie plus ce qu'il dit. La durée de vie réelle par défaut est définie (au moins dans BIND) avec la $TTLdirective. Elle n'est utilisée que s'il n'existe pas de durée de vie explicite définie pour chaque enregistrement.

La signification du champ "TTL par défaut" a été modifiée dans la RFC 2308 et constitue en fait un indice pour la mise en cache négative . Si votre serveur renvoie une réponse négative (par exemple NXDOMAINou NODATA), le délai d'attente du serveur distant est long.

La valeur actuelle est un peu faible, mais il n'y a aucun mal à la laisser telle quelle. C'est souvent ignoré de toute façon.

Alnitak
la source
Notez que la valeur "TTL par défaut" est uniquement utilisée pour la durée de vie négative de mise en cache si elle est inférieure à la durée de vie de l'enregistrement SOA lui-même. Voir 5 - Caching Negative Answersla RFC référencée pour plus de détails. Plus d'infos ici: serverfault.com/questions/426807/…
htaccess
8

Fait intéressant, la page de diagnostic DNS des dyn gars (nos hôtes DNS).

http://dnscog.com/report/stackoverflow.com

.. dit ceci sur MINTTL:

Vérifiez SOA MINTTL

La valeur de votre menthe SOA est de 60 secondes, ce qui est inférieur au minimum recommandé pour une utilisation DNS générale. Si vous apportez régulièrement des modifications à votre zone DNS ou utilisez des services d'équilibrage de charge basés sur DNS, une petite valeur est OK.

Recommandation

Pensez à attribuer une valeur comprise entre 1800 et 86400 à votre champ SOA minttl.

et ceci sur l'actualisation SOA

Vérifier l'actualisation SOA

Votre champ d'actualisation SOA est de 3 600 secondes, ce qui est inférieur au minimum recommandé. Avoir une valeur d'actualisation faible peut entraîner un volume de requête inutile ou un comportement inattendu, notamment si vous utilisez la valeur 0. Si vous apportez régulièrement des modifications à votre zone DNS ou utilisez des services d'équilibrage de la charge basés sur DNS, une valeur plus petite contribuera à garantir: les changements se propagent aussi rapidement que possible.

Recommandation

Pensez à attribuer une valeur comprise entre 7 200 et 10 800 à votre champ d'actualisation SOA.

Une autre page de diagnostic sur http://www.intodns.com/stackoverflow.com n'offre aucune indication réelle.

Jeff Atwood
la source
12
Leur recommandation à la menthe est fausse. Ce domaine n'a pas eu cette signification depuis plus d'une décennie. Leur explication de rafraîchissement est également suspecte. L'intervalle d'actualisation affecte uniquement l'esclavage primaire -> secondaire, et avec une petite zone comme la vôtre, cette valeur ne poserait aucun problème. De plus, si le fournisseur DNS utilise un mécanisme de synchronisation hors bande, la valeur réelle est sans objet. (NB: je fais le DNS pour gagner ma vie)
Alnitak
4
ps si quelqu'un donnait cela comme une explication et une recommandation pour les valeurs, je lui donnerais un vote -1. Comme vous citez quelqu'un d'autre, je ne le ferai pas ;-)
Alnitak, le
2
Pour clarifier, le champ SOA Minimum TTL stocke la valeur TTL à utiliser pour mettre en cache une demande négative - demande adressée à la zone pour une ressource qui n'existe pas. Leur explication est en quelque sorte vraie mais ne permet pas de préciser que c'est uniquement pour les réponses négatives. Deuxièmement, l'actualisation SOA n'est jamais utilisée par les requêtes DNS normales, mais uniquement dans les cas où des serveurs de noms secondaires (esclaves) se mettent à jour à partir de votre serveur de noms principal (maître). Donc, leur explication de ce domaine est définitivement fausse.
thomasrutter
3
En réalité, il y a tellement de fausses informations sur la signification de ces enregistrements en ligne qu'il est difficile de trouver quoi que ce soit qui est réellement vrai. En résumé, la plupart des valeurs de l'enregistrement SOA n'ont pas de sens pour les requêtes DNS réelles et vous permettent plutôt de les utiliser pour votre propre mécanisme de transfert de zone interne de vos serveurs de noms principaux aux serveurs de noms secondaires. L'exception est la MinTTL mais ce n'est pas, comme le suggèrent les normes, une durée de vie minimale ni une durée de vie "par défaut", mais plutôt une durée de vie suggérée pour la mise en cache des résultats négatifs. Ce qui compte beaucoup plus, ce sont les TTL individuels pour des enregistrements tels que A et NS.
thomasrutter
4
Tous ces sites de type intodns / dnscog / dnsstuff, etc., copient simplement la même désinformation les uns des autres. Vous pouvez le savoir car beaucoup de leur texte est copié-collé. J'ai trouvé MXToolbox ( mxtoolbox.com/DNSCheck.aspx ) une ressource plus fiable. Par exemple, leur explication de la valeur SOA MINTTL ici est précise - une qualité rare.
thomasrutter
8

De Pingdom: http://dnscheck.pingdom.com/

SOA TTL  recommended >= 3600.
SOA refresh  recommended >= 14400.
SOA retry  recommended >= 3600.
SOA expire  recommended >= 604800.
SOA minimum  recommended between 300 and 86400.
Octa
la source