DNS & Records

TTL — Time To Live

Πόση ώρα μπορεί να κρατήσει cached ένα DNS record ένας resolver, σε δευτερόλεπτα.

Τι είναι το TTL

Το TTL (Time To Live) είναι ένας αριθμός σε δευτερόλεπτα που δηλώνει πόση ώρα επιτρέπεται σε έναν DNS resolver να κρατήσει cached μια απάντηση. Όταν λήξει το TTL, ο resolver «ξεχνά» την τιμή και την ξανα-ζητά από τον authoritative nameserver.

Παράδειγμα

example.com.   3600   IN  A   93.184.216.34

Εδώ το TTL είναι 3600 δευτερόλεπτα — μία ώρα. Όποιος resolver λάβει αυτή την απάντηση θα τη χρησιμοποιεί για 1 ώρα πριν τη ξαναρωτήσει.

Trade-off: χαμηλό vs υψηλό TTL

Χαμηλό (60–300s)Υψηλό (3600–86400s)
Propagation αλλαγών✅ Γρήγορη❌ Αργή
DNS load στους NS σου❌ Υψηλό✅ Χαμηλό
Latency για χρήστες❌ Πιο συχνά queries✅ Cached
Failover speed✅ Γρήγορο❌ Αργό

Καλές πρακτικές

  • Σταθερά records (A του apex, NS, MX): TTL 3600 ή 86400.
  • Records που αλλάζουν συχνά (load balancers, geo-routing): 60300.
  • Πριν από scheduled migration: κατέβασε το TTL σε 300 μερικές ώρες/μέρες πριν, ώστε όταν κάνεις την αλλαγή να γίνει σχεδόν instant.
  • Μετά τη migration: ξαναβάλε υψηλότερο TTL για να μειώσεις τη DNS κίνηση.

Negative caching (αρνητικό TTL)

Όχι μόνο οι θετικές απαντήσεις cache-άρονται, αλλά και οι αρνητικές (NXDOMAIN: «το όνομα δεν υπάρχει»). Το TTL για αρνητικά καθορίζεται από το SOA record (παράμετρος MINIMUM). Αν δημιουργείς νέο subdomain και κάποιος έχει cached το NXDOMAIN, θα πρέπει να περιμένει το SOA TTL για να το «δει».

Σχετικά εργαλεία

Σχετικοί όροι