DNS Değişikliği Ne Kadar Sürede Aktif Olur? DNS Yayılma Süresi
DNS değişikliği çoğu durumda kısa süre içinde görülmeye başlayabilir ancak tüm kullanıcıların aynı anda yeni kaydı görmesi garanti değildir. Değişikliğin ne kadar sürede etkili olacağı kayıt türüne, önceki TTL değerine, kullanılan DNS resolver'ına, nameserver değişikliğine ve önbelleklere bağlıdır.
Bu nedenle internette sık kullanılan “DNS değişikliği kesin 24 veya 48 saat sürer” ifadesi her durum için doğru değildir. Bazı değişiklikler dakikalar içerisinde görünürken bazı kullanıcılar daha uzun süre eski kaydı görebilir.
DNS değişikliği neden anında herkeste görünmez?
DNS sistemi dağıtık bir yapıya sahiptir.
Bir kullanıcı
example.com adresine girdiğinde her seferinde doğrudan alan adının yetkili DNS sunucusuna sorgu göndermek zorunda değildir.Aradaki DNS resolver'ları daha önce alınmış sonucu belirli süre önbellekte tutabilir.
Örneğin eski kayıt:
example.com → 198.51.100.20iken yeni sunucuya geçiş sonrasında:
example.com → 203.0.113.10olarak değiştirilmiş olabilir.
Bazı resolver'lar yeni IP'yi görürken eski kayıt önbelleğinde bulunan resolver'lar bir süre daha eski IP'yi döndürebilir.
DNS propagation nedir?
DNS değişikliğinin farklı ağ ve resolver'larda görülmeye başlaması genellikle DNS propagation veya DNS yayılımı olarak adlandırılır.
Ancak bu, yeni DNS bilgisinin tek bir merkezden bütün dünyadaki sunuculara sırayla gönderildiği anlamına gelmez.
Daha doğru açıklama şudur:
DNS resolver'ları önbelleklerindeki eski kayıtların süresi doldukça yetkili DNS sunucularından güncel bilgiyi yeniden sorgular.
Bu nedenle güncellenme zamanı her yerde aynı olmayabilir.
TTL nedir?
TTL, “Time To Live” ifadesinin kısaltmasıdır.
DNS kaydının cache üzerinde ne kadar süre saklanabileceğini belirler.
Örneğin TTL:
3600ise bu değer saniye cinsinden yaklaşık 1 saate karşılık gelir.
Resolver daha önce eski kaydı aldıysa TTL süresi dolana kadar bu bilgiyi önbellekten kullanabilir.
TTL'yi DNS değişikliğinden sonra düşürmek hemen işe yarar mı?
Her zaman değil.
Örneğin mevcut kaydın TTL değeri yüksekken resolver eski kaydı zaten önbelleğine aldıysa sonradan TTL'yi düşürmeniz mevcut cache kaydını anında silmez.
Planlı bir sunucu taşıma yapılacaksa TTL değerini değişiklikten önce uygun zamanda azaltmak daha etkili olabilir.
Taşıma tamamlandıktan sonra TTL tekrar normal bir değere yükseltilebilir.
A kaydı değişikliği ne kadar sürer?
A kaydı değiştirildiğinde yetkili DNS sunucusunda yeni kayıt hızlı şekilde aktif olabilir.
Ancak kullanıcıların yeni IP'yi görme süresi cache durumuna bağlıdır.
Bazı kullanıcılar değişikliği kısa süre içerisinde görürken diğerleri eski IP'yi TTL süresi boyunca görmeye devam edebilir.
Bu nedenle tek bir kesin süre vermek doğru değildir.
Nameserver değişikliği ile A kaydı değişikliği aynı mı?
Hayır.
A kaydı değişikliğinde mevcut DNS sağlayıcısı aynı kalır ve yalnızca ilgili kayıt değiştirilir.
Nameserver değişikliğinde ise domainin DNS yönetiminin hangi yetkili DNS sunucuları tarafından yapılacağı değiştirilir.
Bu nedenle nameserver değişikliği daha kapsamlı bir işlemdir ve geçiş sırasında eski ve yeni DNS yapılandırmalarının uyumlu tutulması önemlidir.
Nameserver değiştirirken kayıtları önceden hazırlayın
DNS sağlayıcısını değiştirecekseniz yeni nameserver'lara geçmeden önce yeni DNS sağlayıcısında mevcut kayıtları oluşturmak kesinti riskini azaltabilir.
Özellikle:
- A
- AAAA
- CNAME
- MX
- TXT
- SPF
- DKIM
- DMARC
gibi gerekli kayıtların yeni DNS bölgesinde hazır olduğundan emin olun.
Aksi halde web sitesi çalışırken e-posta gibi başka hizmetler kesilebilir.
DNS değişikliğinin aktif olup olmadığı nasıl kontrol edilir?
Windows üzerinde:
nslookup example.comkullanabilirsiniz.
Linux veya macOS üzerinde:
dig example.comkullanılabilir.
A kaydını doğrudan sorgulamak için:
dig A example.comkullanabilirsiniz.
Nameserver kontrolü için:
dig NS example.comkullanılabilir.
Bu yöntemlerle domainin hangi IP adresine veya DNS sunucularına çözüldüğünü görebilirsiniz.
Belirli DNS resolver'ını sorgulamak neden faydalıdır?
Farklı resolver'lar farklı cache durumuna sahip olabilir.
Bu nedenle kendi bilgisayarınızın kullandığı resolver ile başka bir resolver aynı anda farklı sonuç gösterebilir.
Bu durum DNS değişikliğinin başarısız olduğu anlamına gelmeyebilir.
Önemli olan yetkili DNS sunucularının doğru kaydı yayınlayıp yayınlamadığını ve resolver'ların zaman içerisinde yeni kaydı almaya başlayıp başlamadığını kontrol etmektir.
Yetkili DNS sunucusunu kontrol etmek
Domainin nameserver'larını:
dig NS example.comile öğrenebilirsiniz.
Ardından ilgili yetkili nameserver'a doğrudan sorgu göndererek kaydın orada doğru olup olmadığını kontrol edebilirsiniz.
Bu yöntem DNS panelinde yaptığınız değişikliğin gerçekten authoritative DNS tarafında yayınlanıp yayınlanmadığını anlamaya yardımcı olur.
DNS panelinde yeni IP var ama hâlâ eski IP çıkıyor
Bunun birkaç nedeni olabilir:
- Eski DNS cache
- Yüksek TTL
- Yanlış DNS panelini düzenlemek
- Domainin başka nameserver kullanması
-
www ve ana domain kayıtlarının farklı olması- Eski AAAA kaydının bulunması
- Yerel bilgisayarın DNS cache'i
Öncelikle domainin aktif nameserver'larını kontrol etmek gerekir.
Yanlış DNS panelinde değişiklik yapmak çok sık görülür
Domain bir firmadan satın alınmış olabilir ancak DNS yönetimi başka bir hizmet üzerinden gerçekleştiriliyor olabilir.
Örneğin domain kayıt firmasındaki A kaydını değiştirirsiniz fakat domain başka nameserver'ları kullanıyorsa yaptığınız değişiklik ziyaretçilere yansımaz.
Bu nedenle:
dig NS example.comile aktif nameserver'ları kontrol etmek oldukça önemlidir.
www yeni sunucuya, ana domain eski sunucuya gidebilir mi?
Evet.
example.comve:
www.example.comDNS açısından farklı hostname'lerdir.
Birinin kaydını güncelleyip diğerini unutursanız farklı sunuculara gidebilirler.
DNS değişikliğinden sonra ikisini de ayrı ayrı kontrol edin.
AAAA kaydı nedeniyle eski sunucu açılabilir
A kaydı IPv4 içindir.
AAAA kaydı ise IPv6 içindir.
Yeni sunucuya geçerken A kaydını güncelleyip eski sunucuya ait AAAA kaydını bırakırsanız IPv6 kullanan bazı istemciler eski sunucuya bağlanabilir.
Bu durum “DNS bazen eski sunucuyu gösteriyor” şeklinde algılanabilir.
A ve AAAA kayıtlarını birlikte kontrol etmek önemlidir.
Bilgisayarın DNS cache'i nasıl etkiler?
İşletim sistemi de bazı DNS sonuçlarını önbellekte tutabilir.
Windows üzerinde gerektiğinde:
ipconfig /flushdnskomutu yerel DNS resolver cache'ini temizlemek için kullanılabilir.
Ancak bu işlem internet sağlayıcınızın veya başka DNS resolver'larının cache'ini temizlemez.
Dolayısıyla
flushdns kullanmak küresel DNS yayılımını hızlandırmaz.Tarayıcı cache'i ile DNS cache aynı şey mi?
Hayır.
Tarayıcı cache'i:
- HTML
- CSS
- JavaScript
- Görseller
gibi içerikleri saklayabilir.
DNS cache ise alan adlarının hangi IP veya kayıtlara çözüldüğüyle ilgilidir.
Eski siteyi görmek her zaman DNS problemi olduğu anlamına gelmez.
CDN cache nedeniyle eski site görünebilir
Cloudflare veya başka bir CDN/proxy kullanılıyorsa DNS doğru IP'ye geçmiş olsa bile CDN eski içeriği cache'ten sunuyor olabilir.
Bu durumda sorun DNS propagation değil içerik cache'i olabilir.
Teşhis sırasında:
- DNS sonucu
- Origin sunucu
- CDN cache
- Tarayıcı cache
birbirinden ayrılmalıdır.
DNS değişikliği sırasında eski sunucu neden kapatılmamalı?
Bazı resolver'lar bir süre daha eski IP'yi kullanabilir.
Eski sunucuyu DNS kaydını değiştirdiğiniz anda kapatırsanız eski IP'yi kullanan ziyaretçiler siteye erişemeyebilir.
Bu nedenle mümkünse geçiş sürecinde eski sunucu bir süre daha çalışır durumda tutulmalıdır.
Dinamik sitelerde DNS geçişi daha dikkatli yapılmalıdır
Forum veya e-ticaret sitesi gibi sürekli veri yazılan projelerde bazı kullanıcıların eski, bazılarının yeni sunucuya bağlanması veri ayrışmasına neden olabilir.
Örneğin:
- Kullanıcı A eski sunucuda konu açar.
- Kullanıcı B yeni sunucuda kayıt olur.
- İki sunucu farklı veritabanlarına yazıyorsa veriler ayrılır.
Bu nedenle aktif sistemlerde son veritabanı senkronizasyonu veya kontrollü bakım süreci gerekebilir.
DNS yayılımı tamamlandı mı nasıl anlaşılır?
Tek bir cihazdan yeni IP'yi görmek tek başına yeterli olmayabilir.
Şunları kontrol edebilirsiniz:
1. Yetkili DNS sunucusu yeni kaydı gösteriyor mu?
2. Farklı resolver'lar yeni kaydı almaya başladı mı?
3. Ana domain doğru mu?
4.
www doğru mu?5. A kaydı doğru mu?
6. AAAA kaydı doğru mu?
7. Yeni sunucuya gerçek trafik geliyor mu?
8. Eski sunucunun trafiği azaldı mı?
Sunucu access logları bu geçişi gözlemlemek için faydalı olabilir.
DNS değişikliğini hızlandırmak mümkün mü?
Değişiklik yapıldıktan sonra internetteki bütün cache'leri zorla temizleyebileceğiniz merkezi bir buton yoktur.
Planlı geçişlerde en etkili yöntemlerden biri TTL'yi önceden uygun şekilde ayarlamaktır.
Ancak TTL'yi aşırı düşük tutmanın da her durumda gerekli olmadığını unutmayın.
DNS değişikliğinde sık yapılan hatalar
Şu hatalardan kaçının:
- Her DNS değişikliğinin kesin 24 veya 48 saat sürdüğünü düşünmek
- Değişikliğin herkeste anında görünmesini beklemek
- TTL'yi değişiklikten sonra düşürüp eski cache'in hemen silineceğini sanmak
- Yanlış DNS panelinde değişiklik yapmak
-
www kaydını kontrol etmemek- Eski AAAA kaydını unutmak
- Nameserver değiştirirken MX ve TXT kayıtlarını taşımamak
- Tarayıcı cache'i ile DNS cache'i karıştırmak
- CDN cache'ini DNS problemi sanmak
- DNS değişikliğinden hemen sonra eski sunucuyu kapatmak
Özetle, DNS değişikliğinin aktif olma süresi tek bir sabit değer değildir. Yetkili DNS sunucusunda değişiklik hızlı şekilde yayınlanabilir ancak farklı resolver'lar eski kaydı TTL süresi boyunca önbellekte tutabilir.
Planlı bir sunucu geçişinde en güvenli yöntem DNS kayıtlarını önceden kontrol etmek, gerekiyorsa TTL'yi değişiklikten önce planlamak, yeni sunucuyu tamamen hazırlamak ve DNS geçişi tamamlanana kadar eski sunucuyu erişilebilir tutmaktır.
