Record DNS SOA consigliato Valore predefinito TTL?


43

Al momento il nostro record SOA DNS è impostato su quanto segue per 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)

Ci sono scelte migliori per il nostro aggiornamento / riprova / scadenza / default TTL per un sito come stackoverflow.com che riceve quasi 1 milione di visualizzazioni di pagina al giorno?

Risposte:


48

La velocità effettiva del traffico verso il sito è irrilevante.

Tutte queste impostazioni (tranne "TTL predefinito") influiscono solo sulla frequenza con cui i server DNS secondari del tuo dominio eseguono il polling del server DNS primario per gli aggiornamenti.

Se la tua zona cambia solo di rado (cosa che credo sia la tua), il tuo valore per "aggiorna" è attualmente un po 'basso. In genere il primario dovrebbe inviare un NOTIFYmessaggio a ciascuno dei secondari ogni volta che c'è un aggiornamento a quel punto i secondari prendono immediatamente il file di zona. Al giorno d'oggi il meccanismo "aggiorna / riprova / scade" è solo un ostacolo a questo.

In ogni caso, è probabile che il tuo provider DNS stia sincronizzando automaticamente le modifiche a tutti i server DNS pertinenti senza utilizzare i meccanismi di sincronizzazione integrati del DNS, quindi i valori effettivi sono probabilmente irrilevanti.

Si noti che il campo "TTL predefinito" non significa più ciò che dice. Il vero TTL predefinito è impostato (almeno in BIND) con la $TTLdirettiva, e viene utilizzato solo quando non c'è un TTL esplicito impostato su ciascun record.

Il significato del campo "TTL predefinito" è stato modificato in RFC 2308 ed è in realtà un suggerimento per la memorizzazione nella cache negativa . Se il server restituisce una risposta negativa (ad es. NXDOMAINO NODATA), indica quanto tempo deve attendere il server remoto prima di riprovare.

Il valore corrente è un po 'basso, ma non c'è nulla di male a lasciarlo così com'è. Spesso viene ignorato comunque.


Si noti che il valore "TTL predefinito" viene utilizzato solo per il TTL con memorizzazione nella cache negativa se è inferiore al TTL del record SOA stesso. Vedere 5 - Caching Negative Answersla RFC di riferimento per i dettagli. Maggiori informazioni qui: serverfault.com/questions/426807/…
htaccess

8

È interessante notare che la pagina di diagnostica DNS dei ragazzi di dyn (i nostri host DNS) ..

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

.. dice questo su MINTTL:

Controlla SOA MINTTL

Il valore di minttl della SOA è di 60 secondi, che è inferiore al minimo consigliato per l'uso DNS generale. Se si apportano modifiche periodiche alla propria zona DNS o si utilizzano servizi di bilanciamento del carico basati su DNS, un valore piccolo qui è OK.

Raccomandazione

Valuta di aggiungere un valore compreso tra 1800 e 86400 nel tuo campo SOA minttl.

e questo sull'aggiornamento SOA

Controlla l'aggiornamento SOA

Il campo di aggiornamento della SOA è di 3600 secondi, che è inferiore al minimo consigliato. Avere un valore di aggiornamento basso può comportare un volume di query non necessario o un comportamento imprevisto, soprattutto se si utilizza un valore pari a 0. Se si apportano modifiche periodiche alla propria zona DNS o si utilizzano servizi di bilanciamento del carico basati su DNS, un valore inferiore contribuirà a garantire le modifiche si propagano il più rapidamente possibile.

Raccomandazione

Valuta di inserire un valore compreso tra 7200 e 10800 nel campo di aggiornamento SOA.

Un'altra pagina di diagnostica su http://www.intodns.com/stackoverflow.com non offre alcun suggerimento reale.


12
La loro raccomandazione Mintl è falsa. Quel campo non ha avuto quel significato per oltre un decennio. Anche la loro spiegazione di aggiornamento è sospetta. L'intervallo di aggiornamento riguarda solo lo slave primario -> secondario e con una piccola zona come la tua questo valore non causerebbe alcun problema. Inoltre, se il provider DNS utilizza un meccanismo di sincronizzazione fuori banda, il valore effettivo è controverso. (NB: faccio il DNS per vivere)
Alnitak,

4
ps se qualcuno effettivamente lo desse come propria spiegazione e raccomandazione per i valori gli darei un voto -1. Dato che stai citando qualcun altro non lo farò ;-)
Alnitak,

2
Per chiarire, il campo TTL minimo SOA memorizza il valore TTL da utilizzare per memorizzare nella cache una richiesta negativa , una richiesta inviata alla zona per alcune risorse che non esistono. La loro spiegazione è in qualche modo vera ma non riesce a chiarire che è solo per le risposte negative. In secondo luogo, l'aggiornamento SOA non viene mai utilizzato dalle normali query DNS, viene utilizzato solo in situazioni in cui si hanno server dei nomi secondari (slave) che si aggiornano dal proprio server dei nomi primario (principale). Quindi la loro spiegazione di quel campo è decisamente falsa.
thomasrutter,

3
Davvero, c'è così tanta disinformazione su cosa significano questi record online che è difficile trovare qualcosa di veramente vero. In sintesi, la maggior parte dei valori nel record SOA sono privi di significato per le query DNS effettive e sono invece destinati all'uso da parte dell'utente per il proprio meccanismo di trasferimento di zona interno dai server dei nomi primari a quelli secondari. L'eccezione è il MinTTL ma che non è, come suggeriscono gli standard, un TTL minimo né un TTL "predefinito", ma un TTL suggerito per la memorizzazione nella cache dei risultati negativi. Ciò che conta molto di più sono i singoli TTL per dischi come A e NS.
thomasrutter,

4
Tutti quei siti di tipo intodns / dnscog / dnsstuff ecc copiano semplicemente la stessa disinformazione l'uno dall'altro. Si può dire perché gran parte del loro testo è incollato. Ho trovato MXToolbox ( mxtoolbox.com/DNSCheck.aspx ) una risorsa più affidabile. Ad esempio, la loro spiegazione del valore SOA MINTTL qui è accurata: una qualità rara.
thomasrutter,

8

Da 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.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.