İçeriğe atla
+90 552 219 16 99 Hafta içi 09:00 – 18:00
Müşteri Paneli
CIR.Blog Hosting al

DNS Propagation Süresi: Yayılma Neden Uzun Sürer, Ne Yapılır

6 dakika okuma Alan Adı
DNS Propagation Süresi: Yayılma Neden Uzun Sürer, Ne Yapılır - CIR blog kapak gorseli

Nameserver’ı değiştirdiniz, kaydı doğru girdiniz, panelde her şey yeşil görünüyor. Ama siteye girdiğinizde hâlâ eski sunucu açılıyor. Meslektaşınız aynı adrese girdiğinde yeni site geliyor. Ortada bir hata yoktur; DNS önbelleğinin nasıl çalıştığını görüyorsunuzdur.

DNS yayılması aslında bir yayılma değildir. Değişikliğiniz kendi nameserver’ınızda anında geçerli olur. Bekleyen şey, dünyadaki çözümleyicilerin ellerindeki eski cevabın son kullanma süresinin dolmasıdır.

Bu farkı anlamak süreci yönetilebilir kılar: bekleme süresini önceden kısaltabilir, geçişi kesintisiz planlayabilir ve kendi bilgisayarınızda yeni sunucuyu herkesten önce test edebilirsiniz.

Neden anında olmuyor

Bir adresi yazdığınızda tarayıcı doğrudan sizin nameserver’ınıza gitmez. Arada bir önbellek zinciri vardır ve her halka cevabı bir süre saklar:

  1. Tarayıcı önbelleği: Chrome ve Firefox kendi içlerinde kısa süreli DNS önbelleği tutar, genelde birkaç dakika.
  2. İşletim sistemi önbelleği: Windows’ta DNS Client servisi, macOS’ta mDNSResponder cevabı saklar.
  3. Yerel ağ: Modem veya ofis sunucusu üzerindeki çözümleyici.
  4. ISP çözümleyicisi: Türk Telekom, Superonline gibi operatörlerin çözümleyicileri. Zincirin en yavaş halkası genelde budur; bazı operatörler TTL değerini yok sayıp kendi minimum sürelerini uygular.
  5. Yetkili nameserver: Sizin bölgenizi barındıran sunucu. Değişiklik burada zaten yapılmıştır.

Yani gecikme sizin tarafınızda değil, aradaki halkalardadır. Nameserver değişikliği yapıyorsanız zincire bir de üst seviye alan adı sunucularının kayıt yenileme süresi eklenir; bu yüzden kayıt değişikliği ile nameserver değişikliği aynı hızda ilerlemez. Ayrımı nameserver değiştirme yazısında ayrıntılandırdık.

TTL nedir ve neyi belirler

TTL (Time To Live), her DNS kaydına iliştirilmiş saniye cinsinden bir ömür değeridir. Çözümleyici kaydı aldığında bu süre boyunca tekrar sormaz.

TTL değeri Karşılığı Ne zaman kullanılır
300 5 dakika Geçiş öncesi ve geçiş sırasında
1800 30 dakika Sık değişen kayıtlar
3600 1 saat Yaygın varsayılan
14400 4 saat Oturmuş yapılar
86400 24 saat Nadiren değişen kayıtlar

Kritik nokta şudur: TTL’i düşürmek, düşürdüğünüz anda işe yaramaz. Çözümleyicilerdeki eski kayıt hâlâ eski TTL ile duruyordur. Bu yüzden TTL indirimi geçişten en az bir eski TTL süresi önce yapılmalıdır.

Gerçekte kaç saat sürer

Yaygın olarak söylenen 24-48 saat, en kötü senaryodur. Pratikte tipik süreler şöyledir:

  • Aynı sunucudaki bir A kaydı değişikliği: TTL 3600 ise çoğu kullanıcı için 1 saat içinde.
  • TTL 300 ile yapılan planlı geçiş: 5-15 dakika.
  • Nameserver değişikliği: Genelde 2-6 saat, uçlarda 24 saate kadar.
  • MX kaydı değişikliği: Gönderen sunucular da önbellek tuttuğu için 1-4 saat; e-postalarda kayıp yaşamamak için eski sunucuyu bu süre boyunca kapatmayın.
  • Bazı ISP çözümleyicileri: TTL’i yok sayıp 24 saate kadar tutabilir. Kontrolünüz dışındadır.

48 saati geçen bir durumda beklemeyi bırakıp kayda bakın; büyük ihtimalle kayıt yanlış girilmiştir ya da alan adı hâlâ eski nameserver’ları gösteriyordur.

Geçişi kesintisiz planlama

  1. Geçişten 24-48 saat önce tüm ilgili kayıtların TTL değerini 300 yapın. Bu adım en önemlisidir ve çoğu kişi atlar.
  2. Yeni sunucuda siteyi kurun, dosyaları ve veritabanını taşıyın, hosts dosyasıyla test edin.
  3. E-posta hesaplarını yeni sunucuda birebir aynı adreslerle oluşturun ve içerikleri aktarın.
  4. Geçişi trafiğin en düşük olduğu saatte, tercihen gece yapın.
  5. Eski sunucuyu en az 7 gün açık tutun. Geç güncellenen çözümleyicilerden gelen ziyaretçiler ve e-postalar oraya düşmeye devam eder.
  6. Her şey oturduktan sonra TTL’i 3600 veya 14400 değerine geri çıkarın.

Site taşıma sürecinin dosya ve veritabanı tarafını hosting taşıma rehberi yazısında bulabilirsiniz. Yeni sunucuda SSL sertifikasını da hazırlamayı unutmayın; DNS geçtiği anda sertifika yoksa ziyaretçiler uyarı ekranıyla karşılaşır. Sertifika seçenekleri için SSL sertifikaları sayfasına bakabilirsiniz.

Hosts dosyasıyla önden test

DNS’e hiç dokunmadan yeni sunucuyu kendi bilgisayarınızda test edebilirsiniz. Hosts dosyası, çözümleyicilerden önce okunur.

Windows’ta C:WindowsSystem32driversetchosts dosyasını Not Defteri’ni yönetici olarak çalıştırıp açın. macOS ve Linux’ta dosya /etc/hosts yolundadır. Sona şu satırları ekleyin:

203.0.113.10 firma.com
203.0.113.10 www.firma.com

IP adresini yeni sunucunuzunkiyle değiştirin. Kaydettikten sonra tarayıcıda firma.com adresine girdiğinizde yeni sunucu açılır, dünyanın geri kalanı hâlâ eskisini görür. Test bitince eklediğiniz satırları silmeyi unutmayın; unutulan hosts kaydı aylar sonra teşhis edilemeyen tuhaf sorunlara yol açar.

Önbellek temizleme komutları

  • Windows: Komut istemini yönetici olarak açıp ipconfig /flushdns çalıştırın. Successfully flushed the DNS Resolver Cache mesajını görmelisiniz.
  • macOS: sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  • Chrome: Adres çubuğuna chrome://net-internals/#dns yazıp Clear host cache düğmesine basın.
  • Modem: Yeniden başlatmak yerel çözümleyici önbelleğini temizler.

Bu komutlar yalnızca sizin cihazınızı etkiler. ISP çözümleyicisindeki kaydı temizleyemezsiniz; orada TTL süresinin dolmasını beklemek gerekir.

Farklı noktalardan kontrol

Kendi bilgisayarınızdan gördüğünüz sonuç sizi yanıltır. Sorguyu farklı çözümleyicilere sorarak durumu ölçün:

  • nslookup firma.com 8.8.8.8 ile Google’ın, nslookup firma.com 1.1.1.1 ile Cloudflare’in ne gördüğünü öğrenin.
  • Linux veya macOS’ta dig firma.com +noall +answer komutu kalan TTL saniyesini de gösterir; sayı her sorguda azalıyorsa önbellekten okunuyor demektir.
  • Nameserver’ın gerçekte ne söylediğini görmek için doğrudan yetkili sunucuya sorun: dig @fr1.cir.net.tr firma.com. Buradaki cevap doğruysa yapılacak tek şey beklemektir.
  • Telefonun mobil verisiyle siteye girin; farklı operatör, farklı çözümleyici demektir.
  • Çevrimiçi propagation kontrol araçları farklı ülkelerden aynı anda sorgu atarak dünya genelindeki durumu tablo hâlinde gösterir.

Özetle

  • DNS yayılması, değişikliğin dağılması değil eski önbelleklerin süresinin dolmasıdır.
  • Geçişten en az bir TTL süresi önce TTL değerini 300 yapın; asıl hız kazancı buradadır.
  • Kayıt değişikliği genelde 1 saat, nameserver değişikliği 2-6 saat içinde oturur; 48 saat en kötü senaryodur.
  • Hosts dosyasıyla yeni sunucuyu önceden test edin, test bitince satırları silin.
  • Eski sunucuyu en az bir hafta açık tutun, özellikle e-posta kaybı yaşamamak için.

Bunlar da ilginizi çekebilir