Domain alırken DNS ayarlarının ne kadar kritik olduğunu duydum ama detaylara hâlâ tam hakim değilim. Özellikle A, CNAME, MX gibi kayıtların ne zaman ve nasıl güncellenmesi gerektiği, TTL süresinin etkileri ve propagation sürecinin gerçek zamanlı izlenmesi konusunda kafam karışık. Bu süreçleri otomatikleştirmenin yolları ya da farklı hosting sağlayıcılarında ortak kullanılan pratikler neler? Sizlerin deneyimlerinden öğrenmek istiyorum; en çok hangi kısımlara dikkat ediyorsunuz? Birlikte inceleyelim mi?
Domain yönetiminde DNS kayıtları nasıl çalışır, ne zaman güncellenir?
👁️ 124 görüntüleme💬 2 cevap❤️ 0 beğeni
2 Cevap
Kanka, ben de geçen sene bir blog sitesi kurarken DNS kayıtlarıyla kafamı kırdım; işin özü A ve CNAME kayıtlarını ilk etapta doğru yönlendirmek. İlk domaini alıp hosting firması panelinden A kaydını sunucumun IP’sine yönlendirdiğimde, TTL’yi 300 saniye (5 dk) olarak ayarlamıştım. Valla, bu kısa TTL sayesinde IP değiştiğinde (sunucuyu başka bir bölgeye taşıdığımda) sadece 5‑10 dakika içinde yeni IP’ye geçiş oldu, “propagation” süresi neredeyse sıfır gibi hissettirdi. MX içinse, e‑posta sağlayıcımın verdiği birden fazla kayıt eklemek gerektiğinde, her birinin öncelik (priority) değerini kontrol etmezsem e‑postalar rastgele bir sunucuya düşebiliyordu; bu yüzden en düşük öncelikli (en yüksek sayı) MX’yi yedek olarak ekleyip, TTL’yi yine 5 dk yapıp test ettim, sorun çıkmadı.
Automation konusuna gelince, Cloudflare API’siyle bir skript yazıp domain eklediğimde otomatik olarak A, CNAME ve MX kayıtlarını JSON dosyasından çekip set ettim. Bu sayede yeni bir domain aldığımda birkaç saniye içinde “record set” tamam oluyor, TTL’yi de 300’ye sabitleyerek değişikliklerin anında yayılmasını sağlıyorum. Farklı hosting sağlayıcıları arasında en pratik şey, TTL’yi mümkün olduğunca düşük tutup, değişiklik sonrası “dig” ya da “nslookup” ile kayıtların güncellendiğini kontrol etmek; özellikle CNAME yönlendirmelerinde alias’ı hedefe tam oturtmak, subdomain kırılma sorunlarını önlüyor. Kısacası, TTL’yi düşük tutmak, değişiklik sonrası hızlı kontrol yapmak ve API üzerinden otomasyon kurmak, bütün süreci çok rahatlatıyor.
Aynen kanka, DNS kayıtlarını bir kez ayarlayıp unutsak da bir sorun yok; ama prod ortamda bir değişiklik yapınca TTL’i göz önünde bulundurmak lazım. TTL (Time‑to‑Live) süresi, kaydın önbellekte ne kadar saklanacağını belirttiği için, yeni IP’ye geçiş yapmadan önce TTL’i 300‑600 saniyeye çekip bir iki saat beklemek, “propagation” gecikmesini büyük ölçüde azaltır. Özellikle A ve CNAME kayıtlarını güncellerken, birden fazla veri merkezinde aynı IP’ye yönlendirme yapıyorsanız, eski cache’lerin çakışmasını önlemek için bu yöntemi sık kullandım.
Automation konusunda ise, Cloudflare ya da AWS Route 53 API’lerini CI/CD pipeline’ına entegre etmek çok rahat. Örneğin bir Spring‑Boot microservice’in yeni versiyonu dağıtıldığında, Spring Cloud Config’den çektiğim bir properties dosyasıyla Route 53’te “/api/v1/**” path’i için bir CNAME ekleyip, TTL’i otomatik 5 dakika olarak set ediyorum. MX kayıtları ise genelde sabit kalır, ama yeni mail sağlayıcı geçişi yapıyorsanız aynı TTL taktiğini uygulayıp eski MX’yi bir iki saat önce devre dışı bırakmak, mail kaybını önler. Hosting sağlayıcıları arasında ortak pratik, “record değişikliği sonrası TTL’i düşük tutmak + health‑check scriptiyle DNS yanıtını periyodik kontrol etmek”. Bu sayede propagation sürecini gerçek zamanlı izleyip, sorun çıkınca rollback’i anında yapabiliyorsunuz.