TTL (Time-to-Live), bir veri paketinin veya DNS kaydının ağda ya da önbellekte ne kadar süre geçerli kalacağını tanımlayan sayısal bir değerdir.
TTL Nasıl Çalışır?
DNS bağlamında TTL, bir kaydın DNS çözümleyicilerin önbelleğinde saniye cinsinden ne kadar tutulacağını belirtir. Bir kullanıcı alan adını sorguladığında çözümleyici yetkili DNS sunucusundan aldığı yanıtı TTL süresi boyunca önbelleğe alır. Bu süre içinde aynı alan adı için gelen sorgular önbellekten yanıtlanır; yetkili sunucuya tekrar sorgu gönderilmez.
Kullanıcı → Resolver → Yetkili DNS (ilk sorgu, TTL: 3600)
Kullanıcı → Resolver → Önbellek (sonraki sorgular, TTL süresi dolana kadar)
Kullanıma Göre TTL Süreleri
| TTL | Süre | Ne Zaman Kullanılır |
| 60 | 1 dakika | Aktif geçiş anında, acil müdahale gerektiren durumlar |
| 300 | 5 dakika | Sunucu geçişi öncesi hazırlık dönemi |
| 900 | 15 dakika | Sık güncellenen dinamik kayıtlar |
| 3600 | 1 saat | Genel kullanım için standart değer |
| 21600 | 6 saat | Kararlı, nadiren değişen kayıtlar |
| 86400 | 24 saat | Uzun süredir sabit olan kayıtlar |
Düşük TTL (60-300 Saniye)
Avantajları: DNS değişiklikleri çok hızlı yayılır. Sunucu geçişleri, IP değişiklikleri ve hata kurtarma senaryolarında esneklik sağlar. Sorun anında hızlı müdahale imkânı sunar.
Dezavantajları: DNS çözümleyiciler çok daha sık yetkili sunucuya sorgu gönderir. Bu durum yetkili DNS sunucusuna yük bindirir ve çözümleme süresini uzatabilir. Düşük TTL, yüksek trafikli siteler için DNS altyapısına önemli ek yük getirir.
Yüksek TTL (3600-86400 Saniye)
Avantajları: Çözümleyiciler kaydı uzun süre önbellekte tutar. Yetkili DNS sunucusuna gelen sorgu sayısı azalır. Çözümleme hızlanır çünkü yanıt önbellekten gelir.
Dezavantajları: DNS değişikliği yapmak gerektiğinde eski kaydın silinmesi uzun sürer. Acil IP değişikliklerinde tüm internet kullanıcılarının yeni sunucuya geçmesi saatlerce sürebilir.
TTL Değerini Kaç Olmalı?
Sabit ve uzun süredir değişmeyen bir yapı için 3600-86400 saniye uygundur. Yakın zamanda sunucu geçişi veya DNS değişikliği planlanıyorsa geçişten 24-48 saat önce TTL’yi 300 saniyeye indirmek ve değişiklik sonrası tekrar yükseltmek en sağlıklı yaklaşımdır.
TTL Sıfır Yapılabilir mi?
Teknik olarak TTL değeri sıfır olarak ayarlanabilir. Bu durumda çözümleyiciler kaydı önbellekte tutmaz ve her sorguda yetkili sunucuya başvurur. Ancak bu ayar DNS sunucunuza ciddi yük bindirir ve bazı çözümleyiciler TTL=0 değerini görmezden gelerek minimum bir süre önbelleğe alabilir. Üretim ortamında önerilmez.
TTL Değerini Değiştirince Hemen Etki Eder mi?
Hayır. TTL değişikliğinin kendisi de mevcut TTL süresi kadar önbellekte kalır. Örneğin TTL=86400 olan bir kaydın TTL’sini 300’e düşürdüğünüzde, eski kaydı önbelleklerine almış çözümleyiciler 86400 saniye dolana kadar eski TTL ile çalışmaya devam eder. Bu nedenle TTL değişiklikleri erken planlanmalıdır.
TTL ile DNS Propagation Aynı Şey mi?
Doğrudan aynı şey değildir ancak TTL, propagation süresinin temel belirleyicisidir. Propagation, bir DNS değişikliğinin tüm çözümleyicilere yayılma sürecidir. Bu sürenin uzunluğu büyük ölçüde mevcut TTL değerine bağlıdır.
Farklı DNS Kayıtları İçin Farklı TTL Değeri Kullanılabilir mi?
Evet. Her DNS kaydı için bağımsız TTL tanımlanabilir. Örneğin A kaydına 3600, MX kaydına 86400, TXT kaydına 300 saniye TTL verebilirsiniz. Sık değişmesi beklenen kayıtlara düşük, kararlı kayıtlara yüksek TTL atamak iyi bir uygulamadır.