DNS TTL değeri, kaydın ne sıklıkla değiştiğine ve önbellekte ne kadar kalmasının uygun olduğuna göre seçilir. Değişikliğin hızlı görünmesi ve geri dönüşün kısa sürmesi önemliyse daha kısa, kayıt uzun süre sabit kalacaksa daha uzun TTL tercih edilebilir.

TTL, DNS kaydının recursive resolver (özyinelemeli DNS çözümleyicisi) önbelleğindeki normal kullanım süresini saniye cinsinden belirtir. Normalde süre dolduktan sonra kayıt tekrar gerektiğinde güncel veri alınır; yetkili veriye erişilemiyorsa bazı hizmetler süresi dolmuş yanıtı geçici olarak sunabilir. Bu nedenle TTL, eski verinin her koşulda ortadan kalkacağı kesin bir süre değildir.

Her kayıt için geçerli tek bir ideal DNS TTL yoktur. Uygun değeri değişim sıklığı, kesinti riski, geri dönüş planı, sorgu yükü, DNS sağlayıcısının kabul ettiği sınırlar ve olumsuz yanıtların önbellek davranışı birlikte belirler.

TTL Seçiminde Değişim Sıklığı, Kesinti Riski ve Sorgu Yükü

TTL seçimi yalnızca “değişiklik ne kadar hızlı görünmeli?” sorusuna dayanmaz. Kaydın ne amaçla kullanıldığını, hata durumunda nasıl geri dönüleceğini ve DNS altyapısının taşıyabileceği sorgu hacmini de hesaba katmak gerekir.

Kayıt Değişim Sıklığı

IPv4 adresi veren A, IPv6 adresi veren AAAA, başka bir adı işaret eden CNAME, e-posta sunucusunu belirten MX ve metin verisi taşıyan TXT kayıtları farklı amaçlarla kullanılır. Ancak aylarca değişmeyen bir kayıt için çok kısa TTL seçmek, aynı cevabın gereğinden sık yenilenmesine neden olabilir. Sık güncellenen sunucu adresleri veya kısa geri dönüş hedefi bulunan kayıtlar ise daha kısa önbellek süresinden yararlanabilir.

Aynı alan adındaki farklı kayıt türlerinin aynı TTL'yi kullanması gerekmez. Web sunucusunun A kaydı ile nadiren değişen bir TXT doğrulama kaydı farklı sürelerle yönetilebilir. Buna karşılık aynı ad, DNS sınıfı ve kayıt türüne sahip bir kayıt kümesinin bütün üyeleri aynı TTL ile yayımlanmalıdır. Örneğin internette kullanılan IN sınıfında aynı ada ait birden fazla A kaydına ayrı TTL değerleri verilmez.

Kesinti Riski ve Geri Dönüş Süresi

Bir değişiklik başarısız olduğunda eski hedefe ne kadar sürede dönmeniz gerektiği, TTL değerini belirleyen temel etkenlerden biridir. Daha kısa TTL, süresi dolan önbelleklerin geri dönüş kaydını daha erken almasını sağlayabilir; ancak daha önce önbelleğe alınmış cevapları anında temizlemez.

Geri dönüş planı yalnız DNS kaydını eski değere çevirmekten ibaret olmamalıdır. Değişiklik planınıza eski hizmetin erişilebilir kalacağı süreyi, uygulama oturumlarını, sertifika uyumunu ve yeni hedefin sağlık kontrollerini de ekleyin.

Sorgu Yükü ve Önbellek Verimi

TTL kısaldıkça recursive resolver hizmetleri aynı kayıt için daha sık yeni sorgu gönderebilir. Bu durum yetkili DNS hizmetindeki sorgu hacmini, DNS yanıtlarındaki gecikmeyi ve kullandığınız hizmetin maliyetini etkileyebilir.

Daha uzun TTL ise aynı cevabın önbellekten daha uzun süre sunulmasına olanak verir. Bunun karşılığında yanlış veya artık geçersiz bir hedef, TTL sona erene kadar bazı recursive resolver hizmetlerinde kullanılmaya devam edebilir.

DNS Hizmetinin Kabul Ettiği TTL Değerleri

DNS sağlayıcıları kabul ettikleri en düşük ve en yüksek TTL değerlerini kendi hizmet koşullarına göre sınırlayabilir veya belirli seçenekler sunabilir. Bu nedenle planladığınız sürenin desteklendiğini yönetim panelinden veya DNS sağlayıcısının resmi belgesinden doğrulayın.

DNS sağlayıcısının panelde kabul ettiği değer ile yanıtı önbelleğe alan yazılımın davranışı aynı şey değildir. Recursive resolver, işletim sistemi ve uygulama önbellekleri farklı kurallar uygulayabilir. Planınızı, her kullanıcının tam olarak aynı saniyede yeni cevaba geçeceği varsayımına dayandırmayın.

Farklı Kullanım Durumlarında TTL Aralıkları

Aşağıdaki aralıklar evrensel bir standart veya DNS sağlayıcısının zorunlu tuttuğu değerler değildir. Bunları başlangıç noktası olarak kullanabilirsiniz; gerçek değeri sağlayıcının sınırlarına, trafik hacmine ve geri dönüş hedefinize göre belirleyin.

Kullanım DurumuÖrnek AralıkTemel GerekçeYeniden Değerlendirme Zamanı
Planlı taşıma veya yakın değişiklik300-900 saniyeDeğişiklik ve geri dönüş için önbellek penceresini geçici olarak kısaltmakYeni hizmet kararlı çalıştığında
Sık değişen uç nokta veya hızlı geri dönüş gereksinimi60-300 saniyeSüresi dolan önbelleklerin güncel cevabı daha erken almasını sağlamakSorgu yükü, maliyet veya DNS sağlayıcısının sınırı değiştiğinde
Normal kullanımda ara sıra değişen kayıt1800-3600 saniyeDeğişiklik hızı ile önbellek verimi arasında orta bir denge kurmakDeğişiklik sıklığı veya geri dönüş hedefi değiştiğinde
Uzun süre sabit kalması beklenen kayıt14400-86400 saniyeYetkili DNS sunucusuna giden tekrar sorgularını azaltmakTaşıma, DNS sağlayıcısı değişikliği veya büyük bir yapılandırma öncesinde

Örneğin uzun süre sabit kalan bir web kaydı daha uzun TTL ile yönetilebilirken, planlı veri merkezi geçişi yaklaşınca aynı kaydın TTL'si geçici olarak düşürülebilir. Kalıcı olarak en düşük değeri kullanmak yerine normal dönem ve değişiklik dönemi için ayrı TTL değerleri planlamak daha kontrollüdür.

Planlı Taşıma Öncesi TTL Yönetimi

TTL'yi DNS kaydını değiştireceğiniz anda değil, mevcut yüksek TTL ile önbelleğe alınmış cevapların normal kullanım süresinin dolmasına yetecek kadar önce düşürün. Daha düşük TTL, eski önbelleklere kendiliğinden uygulanmaz; yeni değeri içeren yanıt alındığında kullanılır.

  1. Yeni sunucunun veya hizmetin çalıştığını ve eski hedefe geri dönüşün mümkün olduğunu doğrulayın.
  2. Değiştirilecek kaydın mevcut TTL değerini ve DNS sağlayıcısının kabul ettiği alt sınırı kontrol edin.
  3. TTL'yi düşürün ve bütün yetkili DNS sunucularının yeni düşük değeri yayımladığını doğrudan sorgularla doğrulayın.
  4. Bu doğrulamadan sonra en az eski TTL süresi kadar bekleyin; kritik geçişlerde ek zaman payı bırakın. Ardından kayıt değerini değiştirip bütün yetkili sunucularda doğrulayın.
  5. DNS yanıtlarını ve hizmetin çalışmasını izleyin. Eski hizmeti, önbellekler ve açık uygulama bağlantıları için planladığınız geçiş süresince erişilebilir tutun.
  6. Yeni hizmet kararlı çalıştığında ve hızlı geri dönüş ihtiyacı azaldığında TTL'yi normal kullanım aralığına yükseltin.

TTL, Negatif Önbellek ve DNS Değişikliği Arasındaki Ayrım

Var olan bir DNS kaydının TTL değeri ile adın bulunmadığını veya istenen türde kaydın olmadığını bildiren yanıtların önbellek süresi birbirinden ayrıdır. Bu yokluk yanıtlarında normal negatif önbellek süresi, bölgenin yönetim bilgilerini taşıyan SOA kaydının TTL değeri ile MINIMUM alanının küçük olanından belirlenir. A veya AAAA kaydının TTL'sini değiştirmek bu süreyi otomatik olarak değiştirmez. Yeni kayıt daha önce sorgulanıp yokluk yanıtı önbelleğe alınmışsa, kayıt eklendikten sonra da bu yanıt bir süre görülebilir.

TTL ayrıca DNS değişikliğinin bütün aşamalarını tek başına kontrol etmez. Yetkili sunucular arasındaki güncelleme, alan adının DNS yetkisinin devredilmesi, DNS sağlayıcısının değişikliği işleme süresi, yerel işletim sistemi önbelleği ve uygulama içi önbellek gibi başka katmanlar da yeni cevabın görünme zamanını etkileyebilir.

Yetkili sunucuları belirten NS kayıtları, SOA veya kayıtların kaynağını ve bütünlüğünü imzalarla doğrulayan DNSSEC ile ilişkili değişikliklerde yalnız TTL düşürmek yeterli değildir. DNS yetkisinin devrini, DNSSEC anahtar ve imzalarının geçerliliğini ve DNS sağlayıcısının güncelleme sürecini birlikte planlayın. Bu işlemler sıradan bir hedef IP adresi güncellemesinden daha kapsamlı olabilir.

DNS Yanıtındaki TTL Değerini Kontrol Etme

DNS TTL Analizi aracında alan adını sorgulayarak yanıtta görülen TTL değerlerini inceleyebilirsiniz. Önbellekten gelen bir yanıttaki kalan süreyi, DNS panelinde ayarladığınız başlangıç TTL değeriyle karıştırmayın. Ayarın yayımlandığını doğrulamak için ilgili kaydı yetkili DNS sunucularına doğrudan sorun; tek bir recursive resolver yanıtı bütün önbelleklerin durumunu göstermez.