DNS kayıt türleri görsel temsili

DNS Kayıt Türleri: A, CNAME, MX ve TXT Kayıtları

Bir domain adını tarayıcıya yazdığınızda, arka planda DNS sistemi devreye girer ve doğru sunucuya yönlendirme yapar. Bu yönlendirme işlemi farklı kayıt türleriyle gerçekleşir. A kaydı IP adresini gösterir, CNAME başka bir domain'e yönlendirir, MX e-posta sunucusunu belirler, TXT ise doğrulama ve güvenlik bilgilerini taşır.

DNS kayıtları yanlış yapılandırıldığında site erişilemez hale gelebilir, e-postalar geri döner veya güvenlik doğrulamaları başarısız olur. Hangi kaydın ne zaman kullanılacağını bilmek, domain yönetiminde temel becerilerden biridir.

A Kaydı: IP Adresi Eşleştirmesi

A kaydı (Address Record), bir domain adını IPv4 adresine bağlar. Tarayıcı domain adını gördüğünde DNS sunucusuna sorar, DNS sunucusu A kaydına bakar ve ilgili IP adresini döner. Bu en temel DNS kaydıdır.

Örnek bir A kaydı şöyle görünür:

example.com.    A    192.0.2.1

Bu kayıt, example.com domain'ine gelen isteklerin 192.0.2.1 IP adresine yönlendirilmesini sağlar. A kaydı yalnızca IPv4 adresleri için kullanılır. IPv6 için AAAA kaydı gerekir.

A kaydı doğrudan IP gösterir, ekstra DNS sorgusu gerektirmez. Hızlıdır. IP adresi değiştiğinde kayıt da güncellenmeli; yoksa site erişilemez kalır.

Alt Domain İçin A Kaydı Kullanımı

A kaydı yalnızca ana domain için değil, alt domainler için de kullanılır. Örneğin blog.example.com veya shop.example.com gibi alt domainler farklı sunuculara işaret edebilir.

blog.example.com.    A    198.51.100.5
shop.example.com.    A    203.0.113.10

Blog içerik sunucusunda, e-ticaret platformu başka sunucuda. Her alt domain bağımsız IP alır.

Birden fazla A kaydı tanımlanabilir. DNS sunucusu round-robin yöntemiyle farklı IP'leri döner. Basit yük dağılımı sağlar; ama sunucu sağlık kontrolü yapmaz. Bir sunucu çökse bile DNS o IP'yi dönebilir.

CNAME Kaydı: Takma Ad Yönlendirmesi

CNAME (Canonical Name), bir domain adını başka bir domain adına yönlendirir. A kaydı gibi doğrudan IP göstermez; bunun yerine başka bir domain'e işaret eder ve o domain'in A kaydı üzerinden IP çözümlemesi yapılır.

www.example.com.    CNAME    example.com.

Bu örnekte www.example.com, example.com'a yönlendirilir. Tarayıcı www.example.com'u sorduğunda DNS önce CNAME kaydını bulur, ardından example.com'un A kaydına bakar ve IP adresini döner. İki adımlı bir çözümleme işlemidir.

CNAME Ne Zaman Kullanılır?

CNAME, özellikle CDN entegrasyonlarında tercih edilir. CDN sağlayıcısı cdn.provider.com gibi bir adres verir, siz kendi domain'inizden CNAME ile yönlendirirsiniz:

assets.example.com.    CNAME    cdn.provider.com.

Avantajı şu: CDN sağlayıcısı IP adresini değiştirse sizin DNS kaydınızı güncellemenize gerek kalmaz. CNAME hedefi değişmediği sürece bağlantı korunur.

CNAME'in önemli bir kısıtı vardır: root domain (example.com gibi) için CNAME kullanılamaz. CNAME yalnızca alt domainlerde çalışır. Root domain için mutlaka A kaydı kullanılmalıdır.

Bazı DNS sağlayıcıları ALIAS veya ANAME gibi özel kayıt türleri sunar. CNAME benzeri çalışır ama root domain'de kullanılabilir. Standart değildir, tüm DNS sistemlerinde desteklenmez.

CNAME Zinciri ve Performans

CNAME başka bir CNAME'e işaret edebilir. Buna CNAME zinciri denir. Zincir uzadıkça DNS çözümleme süresi artar; her CNAME adımı ekstra sorgu gerektirir.

www.example.com.       CNAME    alias.example.com.
alias.example.com.     CNAME    cdn.provider.com.
cdn.provider.com.      A        203.0.113.50

Üç adımlı çözümleme. Tarayıcı www.example.com'u sorar, CNAME bulur, alias.example.com'u sorar, yine CNAME bulur, cdn.provider.com'u sorar, nihayet A kaydını bulur. Her adım gecikme ekler.

CNAME zinciri kısa tutulmalı. İdeal tek adım. İki veya daha fazla zincir performans kaybına yol açar, DNS timeout riskini artırır.

MX Kaydı: E-posta Yönlendirmesi

MX kaydı (Mail Exchange), domain'e gelen e-postaların hangi sunucuya teslim edileceğini belirler. E-posta gönderen sunucu, alıcı domain'in MX kaydına bakar ve e-postayı ilgili mail sunucusuna iletir.

example.com.    MX    10    mail.example.com.
example.com.    MX    20    backup-mail.example.com.

MX kaydında öncelik değeri (priority) bulunur. Yukarıda 10 ve 20. Düşük sayı yüksek öncelik. E-posta önce 10 öncelikli sunucuya gider. Erişilemezse 20 öncelikli yedek devreye girer.

MX kaydı hostname'e işaret eder, IP'ye değil. mail.example.com gibi bir hostname belirtilir; bu hostname'in kendi A kaydı olmalı.

MX Kaydı Yapılandırma Hataları

MX kaydı yanlış yapılandırılınca e-postalar geri döner veya kaybolur. En yaygın hata: MX kaydının CNAME'e işaret etmesi. RFC standartlarına göre MX kaydı CNAME hedefleyemez, yalnızca A kaydı olan hostname gösterebilir.

example.com.    MX    10    mail.example.com.
mail.example.com.    CNAME    mailserver.provider.com.
example.com.    MX    10    mail.example.com.
mail.example.com.    A    198.51.100.20

Bazı e-posta sağlayıcıları (Google Workspace, Microsoft 365) kendi MX kayıtlarını verir. Bu kayıtlar dokümantasyonda belirtildiği gibi eklenmeli. Öncelik değerleri ve hostname'ler tam kopyalanmalı.

TXT Kaydı: Doğrulama ve Güvenlik

TXT kaydı, domain'e metin tabanlı bilgi ekler. Doğrudan site erişimi veya e-posta yönlendirmesi yapmaz. Domain sahipliği doğrulama, e-posta güvenlik politikaları ve üçüncü taraf servis entegrasyonları için kullanılır.

Serbest metin içerebilir ama genellikle belirli formatlar kullanılır. SPF, DKIM, DMARC gibi e-posta güvenlik kayıtları TXT formatında. Google Search Console veya diğer servislerin domain doğrulama kodları da TXT kaydı olarak eklenir.

SPF Kaydı: E-posta Gönderici Doğrulama

SPF (Sender Policy Framework), hangi sunucuların domain adınız üzerinden e-posta gönderebileceğini belirler. Spam ve phishing saldırılarını önlemek için kullanılır.

example.com.    TXT    "v=spf1 ip4:192.0.2.0/24 include:_spf.google.com ~all"

Bu SPF kaydı şunu söyler: 192.0.2.0/24 IP aralığından ve Google'ın SPF kaydındaki sunuculardan gelen e-postalar geçerli. Diğer kaynaklardan gelenler şüpheli (~all).

SPF kaydı yalnızca bir tane olmalı. Birden fazla SPF kaydı tanımlanırsa e-posta sunucuları hangisini kullanacağını bilemez, SPF kontrolü başarısız olur.

SPF kaydında -all, ~all veya ?all gibi sonlandırıcılar bulunur. -all en katı, SPF dışı e-postaları reddeder. ~all yumuşak red (soft fail), e-posta teslim edilir ama spam olarak işaretlenebilir. ?all nötr kabul eder.

DKIM ve DMARC Kayıtları

DKIM (DomainKeys Identified Mail), e-postalara dijital imza ekler. E-posta gönderildiğinde sunucu özel anahtarla imzalar, alıcı sunucu DNS'teki DKIM TXT kaydından public key alır ve imzayı doğrular.

default._domainkey.example.com.    TXT    "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBA..."

DKIM kaydı genellikle _domainkey alt domain'inde tanımlanır. E-posta sağlayıcısı bu kaydı oluşturur, DNS'e eklemenizi ister. Public key uzun bir string olduğu için kopyalarken dikkat edin.

DMARC (Domain-based Message Authentication, Reporting and Conformance), SPF ve DKIM sonuçlarına göre e-posta politikası belirler. Doğrulama başarısız olunca ne yapılacağını tanımlar.

_dmarc.example.com.    TXT    "v=DMARC1; p=quarantine; rua=mailto:[email protected]"

Bu DMARC kaydı, doğrulama başarısız olan e-postaların karantinaya alınmasını (p=quarantine) ve raporların [email protected]'a gönderilmesini söyler. p=reject daha katı, başarısız e-postaları tamamen reddeder.

Domain Doğrulama TXT Kayıtları

Google Search Console, Microsoft Bing Webmaster Tools veya diğer üçüncü taraf servisler domain sahipliğini doğrulamak için TXT kaydı kullanır. Servis size benzersiz kod verir, bu kodu TXT kaydı olarak eklersiniz.

example.com.    TXT    "google-site-verification=rXOxyZounnZasA8Z7oaD3c14JdjS9aKSWvsR1EbUSIQ"

Kayıt eklendikten sonra servis DNS sorgusunu yapar, kodu bulursa domain sahipliğinizi onaylar. Doğrulama tamamlanınca bu TXT kaydı silinebilir ama genellikle bırakılır. Gelecekte yeniden doğrulama gerekirse işlem tekrarlanmaz.

Birden fazla TXT kaydı aynı domain için tanımlanabilir. SPF, DKIM, DMARC ve doğrulama kodları aynı anda bulunabilir. Her TXT kaydı bağımsız çalışır.

Kayıt Türü Seçim Kriterleri

Domain'i sunucuya bağlamak için A kaydı. Alt domain'i başka domain'e yönlendirmek için CNAME. E-posta alımı için MX. Doğrulama ve güvenlik için TXT.

Root domain (example.com) için A kaydı zorunlu. CNAME root domain'de çalışmaz. Alt domainlerde (www.example.com, blog.example.com) hem A hem CNAME kullanılabilir. CDN veya üçüncü taraf hosting varsa CNAME önerilir. Kendi sunucunuz varsa A kaydı daha hızlı. E-posta servisi kullanılıyorsa MX mutlaka eklenmeli. E-posta güvenliği için SPF, DKIM ve DMARC yapılandırılmalı.

TTL Değeri ve Kayıt Güncellemeleri

Her DNS kaydının TTL (Time To Live) değeri var. TTL, kaydın DNS önbelleklerinde ne kadar süre saklanacağını belirler. Saniye cinsinden. 3600 saniye (1 saat), 86400 saniye (24 saat) gibi değerler yaygın.

TTL düşükse DNS değişiklikleri hızlı yayılır ama sorgu sayısı artar. TTL yüksekse değişiklikler yavaş yayılır ama DNS sunucusu yükü azalır. Sunucu taşıma veya IP değişikliği öncesinde TTL düşürülür, işlem tamamlanınca yükseltilir.

Mesela sunucu değişikliği planlıyorsanız, işlemden 24-48 saat önce TTL'yi 300 saniye (5 dakika) gibi düşük bir değere çekin. Değişiklik tamamlanınca TTL'yi tekrar 3600 veya daha yüksek bir değere çıkarın. Kesinti süresi minimize olur.

Çoklu Kayıt ve Yük Dağılımı

Aynı domain için birden fazla A kaydı tanımlanabilir. DNS sunucusu bu kayıtları round-robin yöntemiyle döner. Her sorgu farklı IP alır, trafik sunucular arasında dağılır.

example.com.    A    192.0.2.1
example.com.    A    192.0.2.2
example.com.    A    192.0.2.3

Basit yük dağılımı sağlar ama gerçek load balancing değil. DNS sunucusu sunucuların sağlık durumunu kontrol etmez. Bir sunucu çökse bile DNS o IP'yi dönebilir, kullanıcı hata alır.

Profesyonel yük dağılımı için GeoDNS veya health-check destekli DNS servisleri gerekli. Bu servisler sunucu durumunu izler, çöken sunucuları otomatik DNS yanıtlarından çıkarır.

Yaygın Yapılandırma Hataları

Root domain için CNAME kullanmak en yaygın hata. CNAME yalnızca alt domainlerde çalışır. Root domain için A kaydı veya ALIAS/ANAME gibi özel kayıtlar gerekli.

MX kaydının CNAME'e işaret etmesi başka yaygın hata. MX kaydı yalnızca A kaydı olan hostname gösterebilir. CNAME hedeflemek RFC standartlarına aykırı, e-posta tesliminde sorun çıkarır.

Birden fazla SPF kaydı tanımlamak da sık yapılan hata. SPF kaydı tek olmalı. Birden fazla kaynak varsa bunlar tek SPF kaydında include veya ip4/ip6 direktifleriyle birleştirilmeli.

TTL değerini çok düşük tutmak performans kaybına yol açar. Her DNS sorgusu gerçek sunucuya gider, önbellekleme avantajı kaybolur. TTL değeri değişiklik planlanmadıkça 3600 saniye veya daha yüksek tutulmalı.

Nokta (.) karakterinin unutulması da hata kaynağı. DNS kayıtlarında hostname'ler tam nitelikli domain adı (FQDN) olarak yazılmalı. example.com yerine example.com. şeklinde nokta ile bitmeli. Bazı DNS yönetim panelleri bunu otomatik ekler ama manuel yapılandırmada dikkat edin.

DNS Kayıt Doğrulama Araçları

DNS kayıtlarını doğrulamak için çeşitli araçlar var. dig ve nslookup komut satırı araçları. Online DNS lookup servisleri tarayıcıdan hızlı kontrol sağlar.

dig komutu Linux ve macOS'te varsayılan. Windows'ta nslookup kullanılır. Örnek:

dig example.com A
dig example.com MX
dig example.com TXT

Bu komutlar sırasıyla A, MX ve TXT kayıtlarını sorgular. Sonuçlar ANSWER SECTION altında görünür. Kayıt yoksa veya yanlışsa bu bölüm boş gelir.

Online araçlar arasında MXToolbox, DNSChecker ve Google Admin Toolbox yaygın. Farklı DNS sunucularından sorgu yapar, propagation durumunu gösterir. Değişiklik sonrası kontrol için kullanışlı.

Güvenlik ve Bakım Önerileri

DNS Güvenlik Kontrol Listesi:

  • Kullanılmayan DNS kayıtlarını düzenli temizleyin
  • SPF, DKIM ve DMARC kayıtlarını mutlaka yapılandırın
  • DNS yönetim paneline 2FA ekleyin
  • DNS değişikliklerinde bildirim alın
  • Secondary nameserver kullanarak yedekleme sağlayın

Kullanılmayan kayıtlar güvenlik riski. Eski sunucu IP'leri, kapatılmış servisler veya geçersiz MX kayıtları saldırganlar tarafından istismar edilebilir.

SPF, DKIM ve DMARC olmadan domain'iniz phishing saldırılarında kullanılabilir. E-posta güvenliği yalnızca gönderdiğiniz e-postaları değil, domain itibarınızı da korur.

DNS yönetim paneline erişim sıkı kontrol edilmeli. İki faktörlü kimlik doğrulama (2FA) aktif olmalı. DNS kayıtları değiştirildiğinde bildirim alınmalı. Yetkisiz değişiklik domain'in tamamen ele geçirilmesine yol açabilir.

DNS sağlayıcısı seçerken güvenilirlik ve uptime oranı önemli. DNS sunucusu çökerse domain erişilemez hale gelir. Birden fazla DNS sunucusu (secondary nameserver) yedekleme sağlar.

DNS Değişikliği Öncesi Yedekleme Stratejisi:

  1. Tüm mevcut DNS kayıtlarını zone file olarak export edin
  2. Kayıt türü, hostname, değer, TTL ve tarihi not edin
  3. Değişiklik öncesi TTL'yi düşürün (300 saniye)
  4. Değişikliği uygulayın ve test edin
  5. Sorun çıkarsa yedekten geri yükleyin
  6. Her şey çalışıyorsa TTL'yi normale döndürün

İlgili Yazılar