DNS Nedir? Domain Name System Ayarları Rehberi

A, CNAME, MX ve TXT kayıtlarını, dig komutuyla DNS sorunu teşhisini ve şifreli DNS'i gerçek terminal komutu örnekleriyle anlatan pratik bir DNS rehberi.

İnternet
DNS Nedir? Domain Name System Ayarları Rehberi

Tarayıcıya bir adres yazıldığında, ekranda sonuç belirene kadar geçen sürenin büyük kısmı sayfa yüklenmesinden değil, DNS çözümlemesinden gelir. Bu adım gözle görülmeyecek kadar hızlı çalışır; ama yanlış yapılandırılmış tek bir DNS kaydı, bir siteyi saatlerce erişilemez hâle getirebilir. Bu yazıda DNS'in gerçekte nasıl çalıştığını, kayıt türlerini gerçek örneklerle ve DNS sorunlarını nasıl teşhis edeceğinizi anlatıyorum.

DNS bir sorguyu nasıl çözer?

DNS (Domain Name System), alan adlarını (celiluyanikoglu.com.tr gibi) IP adreslerine çeviren, dünya çapında dağıtık bir sistemdir. Tarayıcıya bir adres yazıldığında, bilgisayar önce yerel DNS önbelleğine bakar; sonuç orada yoksa sorgu, işletim sisteminin yapılandırdığı DNS çözümleyiciye (resolver) gider.

Bu çözümleyici, kök sunuculardan başlayarak hiyerarşik bir arama yapar. Önce alan adının uzantısından (.com, .com.tr) sorumlu sunucuya, oradan da o alan adı için yetkili (authoritative) sunucuya yönlendirilir. Sonunda IP adresi bulunur ve tarayıcı o adrese bağlanır.

Bu süreç genellikle 20-100 milisaniye sürer. Önbellekleme sayesinde sık ziyaret edilen siteler için bu süre neredeyse sıfıra iner, çünkü sonuç zaten yerel önbellekte bekliyordur.

Bu süreci terminalde elle tetiklemek mümkün:

dig celiluyanikoglu.com.tr

Bu komut, alan adının hangi IP'ye çözüldüğünü, hangi sunucunun yanıt verdiğini ve yanıt süresini (query time) gösterir. DNS sorunlarını teşhis ederken ilk başvurulacak araçlardan biridir.

DNS kayıt türleri gerçekte ne işe yarar?

Bir alan adının DNS ayarları, "kayıt" (record) adı verilen girişlerden oluşur; her kayıt türü farklı bir bilgi taşır. En yaygın dört kayıt türünü bilmek, günlük DNS işlerinin çoğunu çözmeye yeter.

A, CNAME, MX ve TXT DNS kayıt türlerini ve işlevlerini gösteren dört kutulu şema
Kayıt türüNe işe yararÖrnek
AAlan adını IPv4 adresine bağlar@ → 192.0.2.10
CNAMEBir alan adını başka bir alan adına yönlendirirwww → celiluyanikoglu.com.tr
MXE-posta trafiğini sorumlu sunucuya yönlendirir@ → mail.saglayici.com
TXTDoğrulama ve güvenlik bilgisi taşır (SPF, DKIM gibi)v=spf1 include:_spf.google.com ~all

A kaydı en temel olanıdır ve sitenin ana IP adresini tanımlar. CNAME, www gibi bir alt alan adını ana alan adına ya da başka bir hizmete yönlendirmek için kullanılır. MX kaydı yanlış yapılandırıldığında site açılmaya devam eder ama e-postalar hiç ulaşmaz; bu, deneyimsiz yöneticilerin sık düştüğü bir tuzaktır. DNS'in bu kayıt türlerini tanımlayan temel teknik belge RFC 1035'tir.

IPv6 kullanan sistemler için AAAA kaydı da giderek önem kazanıyor; bu kayıt, alan adını bir IPv6 adresine bağlar. Çoğu modern hosting sağlayıcısı hem A hem AAAA kaydını otomatik oluşturur, ama kendi sunucunuzu yönetiyorsanız bu kaydı elle eklemeniz gerekebilir.

TXT kayıtları, özellikle e-posta güvenliği için kritik hâle geldi. SPF (Sender Policy Framework) kaydı, hangi sunucuların alan adınız adına e-posta gönderebileceğini tanımlar; bu kayıt olmadan gönderilen e-postalar spam klasörüne düşme riski taşır. DKIM ve DMARC kayıtları da benzer şekilde, e-postaların sahte olmadığını alıcı sunuculara kanıtlamaya yarar.

Bu üç kaydı (SPF, DKIM, DMARC) doğru yapılandırmak, özellikle kendi alan adınızdan toplu e-posta gönderiyorsanız (bülten, fatura bildirimi gibi) teslim oranını doğrudan etkiler. Google ve Microsoft gibi büyük e-posta sağlayıcıları, bu kayıtları eksik olan alan adlarından gelen postaları giderek daha sert filtreliyor.

Özyinelemeli ve yetkili sunucular arasındaki fark

DNS sisteminde iki farklı sunucu rolü vardır ve bu ayrımı bilmek, sorun giderirken nereye bakılacağını netleştirir. Özyinelemeli (recursive) sunucu, sorguyu alıp doğru cevabı bulana kadar gerekli tüm aramaları sizin adınıza yapan sunucudur.

Bir DNS sorgusunun özyinelemeli sunucudan yetkili sunucuya ulaşma sürecini gösteren akış şeması

İnternet servis sağlayıcınızın veya Google'ın 8.8.8.8 gibi genel DNS sunucuları bu rolü üstlenir.

Yetkili (authoritative) sunucu ise belirli bir alan adı için kesin ve güncel bilgiyi tutan sunucudur. Bir alan adı kayıt şirketinde veya hosting sağlayıcınızda DNS kaydı değiştirdiğinizde, değişiklik önce bu sunucuya yazılır. Değişikliğin dünya çapında yayılması (propagation) zaman alır, çünkü özyinelemeli sunucular eski bilgiyi TTL (Time To Live) süresi dolana kadar önbellekte tutar.

Bu hiyerarşik yapı DNS'i hem hızlı hem dayanıklı kılar. Tek bir sunucu çökse bile sistemin geri kalanı çalışmaya devam eder, çünkü sorgular otomatik olarak başka bir yetkili sunucuya yönlendirilir. Büyük alan adı sağlayıcıları, aynı bilgiyi birden fazla coğrafi bölgede barındırarak bu dayanıklılığı artırır.

dig +short NS celiluyanikoglu.com.tr

Bu komut, bir alan adı için hangi sunucuların yetkili olduğunu gösterir; bir DNS değişikliğinin doğru sunucuya ulaşıp ulaşmadığını kontrol etmenin hızlı bir yoludur.

DNS değişikliği yaptıktan sonra ne kadar beklemeli?

TTL değeri, bir DNS kaydının önbellekte ne kadar süre tutulacağını saniye cinsinden belirler; tipik değerler 300 (5 dakika) ile 86400 (24 saat) arasında değişir. Büyük bir değişiklik (örneğin hosting sağlayıcı değiştirmek) planlanıyorsa, değişiklikten birkaç gün önce TTL'i düşürmek, yayılma süresini kısaltmanın pratik bir yoludur.

Bu, tecrübeli sistem yöneticilerinin göç öncesi rutin olarak yaptığı bir hazırlıktır. TTL'i 24 saatten 5 dakikaya düşürüp birkaç gün bu şekilde bekletmek, asıl geçiş anında eski değerin önbelleklerden hızla temizlenmesini sağlar. Değişiklik tamamlandıktan sonra TTL'i tekrar normal değerine (birkaç saat) yükseltmek, gereksiz DNS sorgu trafiğini azaltır.

Değişiklik sonrası sabırsızlanmak yaygın bir hatadır; bazı kullanıcılar eski, bazıları yeni IP'yi görmeye devam edebilir, çünkü her ISP'nin önbelleği farklı zamanda güncellenir. Bu geçiş süresince eski sunucuyu hemen kapatmamak olası kesintiyi önler. whatsmydns.net gibi araçlar, değişikliğin dünya genelinde ne kadar yayıldığını görsel olarak takip etmeyi sağlar.

Bir alan adını yeni bir hosting sağlayıcısına taşırken, eski ve yeni sunucuyu bir süre paralel çalışır durumda tutmak en güvenli yaklaşımdır. Bu sayede TTL süresi dolmamış ziyaretçiler eski sunucuya gelmeye devam ederken bile site erişilebilir kalır. Geçişin tamamlandığından tamamen emin olduktan sonra eski sunucuyu kapatmak, gereksiz kesinti riskini ortadan kaldırır.

DNS sorunları nasıl teşhis edilir?

Bir siteye erişilemiyorsa ama internet bağlantısı çalışıyorsa (diğer siteler açılıyorsa), sorun büyük ihtimalle DNS'tedir. İlk adım, sorunun cihaza mı yoksa ağa mı özgü olduğunu anlamaktır; farklı bir cihazda veya mobil veri üzerinden aynı siteyi denemek bunu netleştirir.

Terminalde dig komutuyla bir alan adının DNS kaydını sorgulayan komut satırı görünümü

Sorun yalnızca kendi cihazınızda yaşanıyorsa, yerel DNS önbelleğini temizlemek genellikle işe yarar:

ipconfig /flushdns

Bu komut Windows'ta DNS önbelleğini sıfırlar; macOS'ta sudo dscacheutil -flushcache, Linux'ta ise dağıtıma göre sudo systemd-resolve --flush-caches benzeri bir komut kullanılır.

Sorun devam ediyorsa, DNS sunucusunu geçici olarak Cloudflare'in 1.1.1.1 veya Google'ın 8.8.8.8 adresine değiştirip tekrar denemek, sorunun ISP'nin DNS sunucusundan kaynaklanıp kaynaklanmadığını gösterir.

Sistematik bir kontrol listesi, sorunu daha hızlı bulmayı sağlar:

  • Aynı siteyi farklı bir cihazda veya mobil veri ile deneyin; cihaza mı, ağa mı özgü olduğunu bu şekilde ayırt edin
  • DNS önbelleğini temizleyin (ipconfig /flushdns veya işletim sistemine uygun komut)
  • Yönlendiriciyi yeniden başlatın; bu işlem DNS önbelleğini ve bağlantıları sıfırlar
  • Geçici olarak alternatif bir DNS sunucusuna (1.1.1.1, 8.8.8.8) geçip tekrar deneyin
  • dig veya nslookup ile alan adının doğru IP'ye çözülüp çözülmediğini kontrol edin

Şifreli DNS gerçekten gerekli mi?

Geleneksel DNS sorguları şifrelenmeden gönderilir; bu, hangi sitelerin ziyaret edildiğinin ağ üzerinde görülebileceği anlamına gelir. DNS over HTTPS (DoH) ve DNS over TLS (DoT), bu sorguları şifreleyerek üçüncü tarafların, özellikle paylaşılan Wi-Fi ağlarında, trafiği izlemesini zorlaştırır.

Çoğu modern tarayıcı (Firefox, Chrome) DoH'u varsayılan olarak destekler veya kolayca etkinleştirir. Ev kullanımında bu, gözle görülür bir hız farkı yaratmaz ama gizlilik açısından anlamlı bir katman ekler; halka açık ağlarda çalışılıyorsa özellikle değerlidir.

DNS sahteciliği (spoofing) ve önbellek zehirlenmesi (cache poisoning) gibi saldırılar, şifrelenmemiş DNS trafiğinin bir diğer riskini oluşturur. Bir saldırgan, sahte bir yanıt enjekte ederek gerçek sitenin taklidi bir sayfaya yönlendirebilir. DNSSEC (DNS Security Extensions), yetkili sunucuların yanıtlarını dijital olarak imzalayarak bu tür sahtecilikleri tespit edilebilir kılar; büyük alan adı kayıt şirketlerinin çoğu bu özelliği artık ücretsiz sunar.

Bir alan adı veya site yönetiliyorsa, DNS kayıtlarını düzenli kontrol etmek küçük bir alışkanlık ama büyük sorunları önler; özellikle SPF ve MX kayıtlarındaki bir yazım hatası, günlerce fark edilmeden e-posta kaybına yol açabilir. İnternet kategorisindeki diğer rehberler, alan adı ve sunucu yönetimi konusunda tamamlayıcı bilgiler içerir.

Celil Uyanikoglu

Yazan Celil Uyanikoglu

Bilgisayar mühendisiyim; 25 yılı aşkın süredir bilgi işlem sektörünün içindeyim. Bu blogu 2020'de, işimde her gün karşılaştığım sorunların çözümlerini bir yere yazmak için açtım: Linux, güvenlik, tarayıcılar, yapay zeka araçları. Yazdığım her rehberi önce kendi bilgisayarımda ya da sunucumda deniyorum; çalıştığını görmediğim adımı yayınlamam. Hatalı ya da eskimiş bir şey görürsen iletişim sayfasından yaz — düzeltirim.

Yorum

Henüz yorum yok.

Sohbete katıl. Yorumlar yayınlanmadan önce moderasyondan geçer.

Yorum yap

E-posta adresin yayınlanmaz. Yorumlar moderasyondan sonra yayınlanır.

Sırada

İlgili notlar