Ana içeriğe geç

DNS Nedir? Domain Name System Nasıl Çalışır?

DNS Nedir? Domain Name System Nasıl Çalışır? - SEO Rehberi

Bilgisayarlar birbirleriyle sayılarla konuşur. 192.0.2.1 gibi IP adresleriyle. Siz tarayıcınıza "seodenetim.com" yazıyorsunuz, 12 haneli bir sayı değil. Aradaki çeviriyi yapan sistem DNS — yani Domain Name System.

DNS olmasaydı? Her web sitesine IP adresiyle erişmek zorunda kalırdınız. Telefon rehberi olmadan numaraları ezberlemek gibi bir şey bu. 1983'te Paul Mockapetris'in tasarladığı sistem bugün günde trilyonlarca sorguyu karşılıyor, internetin sessiz altyapısını oluşturuyor ve çoğu geliştirici onu fark etmiyor bile — ta ki bir gün DNS çözümlemesi patlayana kadar.

DNS nedir?

DNS (Domain Name System), domain adlarını IP adreslerine çeviren dağıtık bir veritabanı sistemidir. İnternet üzerindeki her cihaz — sunucu, bilgisayar, telefon — benzersiz bir IP adresi taşır. 142.250.185.14 gibi bir sayıyı kim hatırlamak ister ki? DNS, "google.com" gibi okunabilir isimleri bu sayısal adreslere dönüştürür.

Tarayıcınıza bir domain yazdığınızda arka planda şu olur:

  1. Bilgisayarınız DNS sunucusuna sorar: "seodenetim.com'un IP adresi ne?"
  2. DNS sunucusu cevap verir: "192.0.2.1"
  3. Tarayıcı bu IP'ye bağlanır ve sayfa yüklenir

Milisaniyeler içinde biter. Adres çubuğuna yazıp Enter'a basana kadar DNS çoktan işini bitirmiştir — hatta muhtemelen cache'ten cevabı çekmiştir bile.

DNS sorgusu nasıl çalışır?

Bir DNS sorgusu 4 farklı sunucu katmanından geçer. Her katman bir sonrakine yönlendirir, ta ki doğru IP adresi bulunana kadar. Süreç karmaşık görünebilir ama pratikte tamamı birkaç yüz milisaniyede olup biter.

Recursive DNS sunucusu

İlk durak genellikle internet sağlayıcınızın (ISP) recursive sunucusudur. Cloudflare (1.1.1.1) veya Google (8.8.8.8) gibi alternatifleri de tercih edebilirsiniz. Bu sunucu sizin adınıza tüm araştırmayı yapar — cevabı bulana kadar diğer DNS sunucularıyla tek tek iletişim kurar. Bir nevi özel dedektif gibi düşünün.

Root DNS sunucusu

Recursive sunucu cevabı bilmiyorsa root sunucuya yönelir. Dünya genelinde 13 root sunucu kümesi var. Bunlar DNS hiyerarşisinin en tepesinde durur ve doğrudan IP vermez; domain'in uzantısına bakarak (.com, .net, .org) hangi TLD sunucusuna gidilmesi gerektiğini söyler. Yani root sunucu "ben bilmiyorum ama kimi aramanız gerektiğini biliyorum" der.

TLD DNS sunucusu

TLD (Top Level Domain) sunucusu belirli bir uzantıdan sorumludur. .com uzantılı tüm domain'lerin hangi authoritative sunucuda kayıtlı olduğunu bilir ve sorguyu bir adım daha ileri taşır.

Authoritative DNS sunucusu

Zincirin son halkası.

Domain'in gerçek IP adresini tutan sunucu budur. Cevap buradan recursive sunucuya döner, recursive sunucu da bunu önbelleğe alarak size iletir. Bir sonraki sorguda bu zincir tekrarlanmaz — cache'ten yanıt gelir. İşte DNS'in hızlı olmasının asıl sırrı bu katmanlı önbellekleme yapısıdır.

DNS kayıt türleri

DNS sunucuları sadece IP adresi tutmaz. Farklı amaçlara hizmet eden birçok kayıt türü barındırır — ve bunların her birinin ayrı bir görevi var.

A kaydı

Domain adını IPv4 adresine eşler. Sitenizin açılabilmesi için A kaydı şart.

seodenetim.com → 192.0.2.1

AAAA kaydı

A kaydının IPv6 versiyonu. IPv4 adres havuzu tükendikçe AAAA kayıtlarının önemi artıyor — dünya genelinde yaklaşık 4.3 milyar IPv4 adresi var ve bunlar çoktan doldu. Modern siteler genellikle her ikisini birden kullanır.

seodenetim.com → 2001:db8::1

MX kaydı

E-posta trafiğini yönlendirir. Domain'inize gelen maillerin hangi sunucuya teslim edileceğini belirler. E-posta alamıyorsanız kontrol etmeniz gereken ilk yer burası.

seodenetim.com → mail.seodenetim.com (priority: 10)

CNAME kaydı

Bir domain'i başka bir domain'e yönlendirir — alias gibi düşünebilirsiniz. Subdomain yapılandırmalarında sıkça kullanılır:

www.seodenetim.com → seodenetim.com

Dikkat edilmesi gereken bir nokta: CNAME kaydı olan bir domain'e aynı anda başka kayıt türü (A, MX vb.) ekleyemezsiniz. Bu kısıtlama bazen kafa karıştırır.

TXT kaydı

Serbest metin bilgisi taşır. SPF, DKIM gibi e-posta doğrulama protokolleri ve Google Search Console domain doğrulaması TXT kayıtları üzerinden yapılır. Adı "text" olsa da pratikte en çok karşılaşılan ve en kritik kayıt türlerinden biri.

DNS cache nasıl çalışır?

Her DNS sorgusu 4 katmanlı zincirden geçseydi internet dayanılmaz derecede yavaş olurdu. Cache mekanizması bu sorunu çözer — bir kez çözümlenen domain bilgisi birden fazla noktada saklanır ve sonraki isteklerde doğrudan kullanılır.

Tarayıcı cache

Tarayıcınız ziyaret ettiğiniz sitelerin DNS yanıtlarını kısa süreliğine saklar. Aynı siteye tekrar girdiğinizde DNS sunucusuna sormadan doğrudan bağlanır. Chrome'da bunu görmek isterseniz: chrome://net-internals/#dns adresini açın, aktif cache kayıtlarını listeleyecektir.

İşletim sistemi cache

Windows, macOS ve Linux kendi DNS cache'lerini tutar. Tarayıcı cache'inden daha uzun ömürlüdür ve bazen eski bir DNS kaydı burada takılı kalabilir. Windows'ta temizlemek için:

ipconfig /flushdns

Bu komutu çalıştırdığınızda işletim sistemi tüm DNS önbelleğini sıfırlar. Basit görünür ama DNS sorunlarının yarısını çözer.

ISP cache

İnternet sağlayıcınız da DNS yanıtlarını önbelleğe alır. Milyonlarca kullanıcının aynı sitelere eriştiğini düşünürseniz bu katman DNS trafiğini ciddi ölçüde azaltır. Dezavantajı mı? ISP cache'i bazen değişikliklerin geç yansımasına neden olur ve siz bu cache'i temizleyemezsiniz — beklemekten başka çareniz yoktur.

TTL nedir ve neden önemlidir?

TTL (Time To Live), bir DNS kaydının önbellekte ne kadar süre kalacağını saniye cinsinden belirler. Hız ile esneklik arasındaki denge tamamen bu değere bağlı.

Düşük TTL (300 saniye, yani 5 dakika) değişikliklerin hızlı yayılmasını sağlar ama DNS sorgularını artırır. Sunucu taşıma planlıyorsanız birkaç gün öncesinden TTL'yi düşürmeniz iyi bir pratiktir — böylece geçiş sırasında eski IP'ye yönlenen kullanıcı sayısı azalır. Bunu yapmayı unutan çok kişi gördüm, sonuç hep aynı: saatlerce "neden hâlâ eski sunucuya gidiyor?" sorusu.

Yüksek TTL (86400 saniye, yani 24 saat) ise DNS sorgularını minimize eder ve stabil siteler için idealdir. Dezavantajı? Bir sorun olduğunda düzeltmenin yansıması saatler alabilir. Acil müdahale gerektiren durumlarda yüksek TTL tam bir kabus.

DNS propagation süreci

DNS kayıtlarını değiştirdiğinizde bu değişiklik anında tüm dünyaya yansımaz. Farklı DNS sunucuları eski cache'lerini TTL süresi dolana kadar tutar — bu yayılma sürecine DNS propagation denir. Genellikle 24-48 saat arasında tamamlanır, bazen daha kısa sürer, bazen de sinir bozucu derecede uzar.

Klasik senaryo şu: Siz değişikliği görüyorsunuz, her şey yolunda. Sonra başka bir şehirdeki müşteri arıyor, "site açılmıyor" diyor. Sebebi ISP'lerin cache politikalarının farklı olması. Bazı sağlayıcılar TTL'yi dikkate almadan kendi belirlediği süre boyunca cache tutar — ve buna karşı yapabileceğiniz pek bir şey yok.

Yayılma durumunu kontrol etmek için farklı DNS sunucularından (Cloudflare, Google, OpenDNS) sorgulama yapabilirsiniz. Değişikliğin hangi bölgelere ulaştığını böylece takip edersiniz.

DNS güvenliği

DNS sorguları varsayılan olarak düz metin (plain text) olarak gönderilir. Ağ trafiğinizi izleyen biri hangi sitelere girdiğinizi görebilir. Daha kötüsü? DNS yanıtları manipüle edilebilir ve sizi sahte bir siteye yönlendirebilir. Bu saldırı türüne DNS spoofing denir ve düşündüğünüzden daha yaygın.

DNS over HTTPS (DoH)

DoH, DNS sorgularını HTTPS üzerinden şifreler. Firefox ve Chrome varsayılan olarak destekler. Cloudflare (1.1.1.1) ve Google (8.8.8.8) DoH sunucusu olarak kullanılabilir. Halka açık Wi-Fi ağlarında — kafeler, havaalanları, oteller — DoH kullanmak neredeyse zorunluluk.

DNSSEC

DNS Security Extensions, DNS yanıtlarının gerçekten doğru sunucudan geldiğini doğrulayan bir imzalama sistemidir. Sahte yanıtları engeller. Henüz tüm domain'lerde yaygın değil, ama finans ve e-ticaret siteleri için artık standart sayılıyor. Kurulumu biraz zahmetli olsa da sağladığı güvence buna değer.

Yaygın DNS sorunları ve çözümleri

İnternet bağlantınız var ama siteler açılmıyorsa büyük ihtimalle DNS kaynaklı bir sorunla karşı karşıyasınız.

DNS sunucusu yanıt vermiyor: ISP'nizin DNS sunucusu çökmüş veya yavaşlamış olabilir. Hızlı test: DNS sunucunuzu Cloudflare (1.1.1.1) veya Google (8.8.8.8) ile değiştirip tekrar deneyin. Çözülürse sorun ISP tarafında demektir.

Eski cache sorunu: DNS kayıtları değişmiş, bilgisayarınız hâlâ eski IP'ye yönleniyor. ipconfig /flushdns komutuyla cache'i temizlemek genellikle yeterli olur. Olmadıysa tarayıcı cache'ini de temizlemeyi deneyin.

Yavaş DNS yanıtı: DNS çözümleme süresi sayfa yükleme hızını doğrudan etkiler. ISP DNS'iniz yavaşsa Cloudflare veya Google DNS'e geçmek gözle görülür fark yaratır — özellikle ilk ziyaretlerde, cache henüz oluşmamışken.

Hangi DNS sunucusunu kullanmalısınız?

ISP'nizin DNS sunucusu her zaman en iyi seçenek olmayabilir. Hatta çoğu zaman değildir.

Cloudflare (1.1.1.1): Hız testlerinde sürekli üst sıralarda. Gizlilik politikası net — DNS loglarını 24 saat içinde siler. DoH ve DoT desteği var. Kişisel tercihim genellikle bu yönde.

Google Public DNS (8.8.8.8): Güvenilir ve yaygın. Google'ın DNS sorgularını analitik amaçlı kullandığını bilmekte fayda var. Gizlilik hassasiyetiniz varsa Cloudflare daha iyi bir tercih.

OpenDNS (208.67.222.222): Cisco'nun DNS hizmeti. Zararlı site filtreleme ve ebeveyn kontrolü gibi ek özellikler sunar — kurumsal ortamlarda tercih edilir. Bireysel kullanıcılar için biraz fazla "kurumsal" kalabilir.

DNS'in SEO'ya etkisi

DNS doğrudan bir sıralama faktörü değil. Dolaylı etkileri göz ardı edilemez ama.

Yavaş DNS çözümlemesi sayfa yükleme süresine milisaniyeler ekler. Tek başına küçük görünse de Google'ın Core Web Vitals metriklerinde her milisaniye önemli, özellikle mobil kullanıcılar için. Sitenizin yükleme performansını test ederek DNS kaynaklı gecikmeleri tespit edebilirsiniz. Bazen sorun sunucuda değil, DNS çözümlemesindedir — ve bunu fark etmek zaman alır.

Daha kritik olan konu downtime. DNS sağlayıcınız çökerse siteniz tamamen erişilemez hale gelir. Google, uzun süre erişilemeyen siteleri indeksten düşürebilir. Güvenilir bir DNS sağlayıcısı seçmek, sunucu seçimi kadar önemli bir karar.

Güvenlik tarafında ise DNS hijacking saldırıları sitenizi zararlı IP'lere yönlendirebilir. DNSSEC bu riski azaltır, Google'ın gözünde sitenizin güvenilirliğini korur.

DNS yönetimi nerede yapılır?

Domain satın aldığınızda DNS yönetimi varsayılan olarak registrar'da (domain kayıt firması) olur. Bunu değiştirebilirsiniz — nameserver'ları harici bir DNS sağlayıcısına yönlendirmek yaygın bir pratik ve genellikle iyi bir fikir.

Cloudflare DNS ücretsiz planıyla bile hızlı yanıt süreleri, kolay yönetim paneli ve DDoS koruması sunar. Küçük-orta ölçekli siteler için fazlasıyla yeterli. Daha büyük altyapılar için AWS Route 53 gibi profesyonel çözümler yüksek uptime garantisi verir — tabii ücretli.

Hosting sağlayıcınız cPanel kullanıyorsa DNS kayıtlarını doğrudan panelden yönetebilirsiniz. Arayüzü basit, giriş engeli düşük. Gelişmiş özellikler (anycast, failover) genellikle yoktur ama başlangıç için yeterlidir. Siteniz büyüdükçe harici DNS sağlayıcısına geçmeyi değerlendirin.

DNS kayıtlarınızı kontrol edin

DNS yapılandırmasındaki küçük bir hata büyük sorunlara yol açabilir. Yanlış A kaydı sitenizi erişilemez kılar, eksik MX kaydı e-postalarınızı kaybettirir, hatalı TXT kaydı domain doğrulamanızı bozar. Küçük detaylar, büyük sonuçlar.

A, AAAA, MX, TXT, CNAME ve NS kayıtlarınızı tek yerden sorgulayabilirsiniz. Sunucu taşıma veya e-posta sağlayıcı değişikliği öncesinde mevcut kayıtlarınızın bir görüntüsünü almak, olası sorunları önceden yakalamanızı sağlar.

DNS, 1983'ten bu yana internetin sessiz altyapısı olarak çalışıyor. Günde trilyonlarca sorguyu karşılıyor ve çoğu zaman fark edilmiyor — ta ki bir şeyler ters gidene kadar. Doğru sunucu seçimi, uygun TTL yapılandırması ve düzenli kayıt kontrolü sitenizin hem hızını hem güvenilirliğini doğrudan etkiler. Kritik operasyonlardan önce sunucu yapılandırmanızı da gözden geçirmeyi unutmayın.