$ man dns-kayit-turleri
DNS Kayıt Türleri
Bir DNS bölgesi (zone), her biri belirli bir türe sahip kaynak kayıtlarından (resource record, RR) oluşur. Bu sayfada en sık karşılaşılan on kayıt türünü, örnek zone satırlarıyla ve pratikte en çok yapılan hatalarla birlikte bulabilirsiniz.
Bir DNS kaydının yapısı
RFC 1035'te tanımlanan zone dosyası biçiminde her kayıt beş alandan oluşur: isim, TTL, sınıf (neredeyse her zaman IN), tür ve veri.
; isim TTL sınıf tür veri
www.example.com. 3600 IN A 192.0.2.10
Sondaki nokta, ismin tam nitelikli (FQDN) olduğunu belirtir. Nokta konmazsa birçok zone düzenleyicisi ismin sonuna bölge adını ekler; mail.example.com yazıp noktayı unutmak mail.example.com.example.com. gibi hatalı kayıtlara yol açar. TTL'in anlamı için TTL Nedir? sayfasına bakın.
A kaydı
A kaydı bir ismi IPv4 adresine eşler (RFC 1035). Aynı isim için birden fazla A kaydı tanımlanabilir; resolver'lar bunları genellikle değişen sırayla döndürür, bu da basit bir yük dağıtımı sağlar.
example.com. 3600 IN A 192.0.2.10
www.example.com. 3600 IN A 192.0.2.10
$ dig +short example.com A
Sık hatalar: Sunucu taşındıktan sonra eski IP'yi gösteren A kaydını unutmak; example.com ile www.example.com için ayrı kayıt gerektiğini atlamak.
AAAA kaydı
AAAA kaydı bir ismi IPv6 adresine eşler (RFC 3596). IPv6 destekli istemciler genellikle A ve AAAA kayıtlarını birlikte sorgular ve mümkünse IPv6'yı tercih eder.
example.com. 3600 IN AAAA 2001:db8::10
Sık hatalar: Sunucuda IPv6 düzgün yapılandırılmadan AAAA kaydı yayınlamak. Bu durumda IPv6 kullanan ziyaretçiler zaman aşımı yaşar, IPv4 kullananlar ise sorunu hiç görmez; bu da hatayı tespit etmeyi zorlaştırır.
CNAME kaydı
CNAME (canonical name), bir ismin başka bir ismin takma adı olduğunu söyler. Resolver CNAME ile karşılaşınca hedef ismi çözmeye devam eder.
www.example.com. 3600 IN CNAME example.net.
Sık hatalar:
- Apex'te CNAME: RFC 1034 ve RFC 2181'e göre CNAME bulunan bir isimde başka hiçbir kayıt olamaz. Bölgenin tepesi (
example.com.) zorunlu olarak SOA ve NS kayıtları içerdiği için apex'e CNAME konamaz. Bazı sağlayıcıların sunduğu "ALIAS", "ANAME" veya "CNAME flattening" özellikleri standart bir kayıt türü değildir; sağlayıcı tarafında hedefi çözüp A/AAAA olarak sunar. - Aynı isimde CNAME ile birlikte TXT veya MX tanımlamaya çalışmak.
- Uzun CNAME zincirleri kurmak; her halka ek sorgu ve gecikme demektir.
MX kaydı
MX kaydı, bir alan adına gelen e-postaların hangi sunuculara teslim edileceğini belirtir. Her kaydın bir öncelik değeri vardır; küçük sayı daha yüksek önceliği ifade eder.
example.com. 3600 IN MX 10 mx1.example.com.
example.com. 3600 IN MX 20 mx2.example.com.
$ dig +short example.com MX
Sık hatalar:
- MX'in CNAME'e işaret etmesi: RFC 2181 (bölüm 10.3), MX hedefinin bir CNAME değil, doğrudan A/AAAA kaydı olan bir isim olması gerektiğini belirtir. Pek çok sunucu tolere etse de bu yapı teslim sorunlarına yol açabilir.
- MX hedefi olarak IP adresi yazmak; MX verisi her zaman bir host adıdır.
- E-posta almayan alan adları için "null MX" (
MX 0 ., RFC 7505) kullanmayı bilmemek.
TXT kaydı
TXT kaydı serbest metin taşır. Bugün en yaygın kullanımları SPF, DKIM ve DMARC politikaları ile alan adı sahipliği doğrulamalarıdır. Ayrıntılar için SPF, DKIM ve DMARC sayfasına bakın.
example.com. 3600 IN TXT "v=spf1 mx -all"
example.com. 3600 IN TXT "site-verification=abc123"
Sık hatalar: Tek bir karakter dizisi 255 baytı aşamaz; uzun DKIM anahtarları birden çok dizeye bölünmelidir ("parça1" "parça2"). Aynı isimde iki ayrı v=spf1 kaydı yayınlamak SPF'i geçersiz kılar.
NS kaydı
NS kaydı, bir bölgenin hangi nameserver'lar tarafından yetkili olarak sunulduğunu belirtir. Hem üst bölgede (registry tarafında, devretme için) hem de bölgenin kendi içinde bulunur.
example.com. 86400 IN NS ns1.example.net.
example.com. 86400 IN NS ns2.example.net.
Sık hatalar: Registry'deki NS listesi ile bölge içindeki NS kayıtlarının birbirini tutmaması; tek bir nameserver kullanmak (RFC 1034 en az iki sunucu önerir); NS hedefinin CNAME olması. Konunun tamamı için Nameserver (NS) Nedir? sayfasına bakın.
SOA kaydı
SOA (Start of Authority) her bölgenin tepesinde tam olarak bir tane bulunur ve bölgenin yönetim parametrelerini taşır: birincil sunucu, sorumlu kişinin e-postası (ilk nokta @ yerine geçer), seri numarası, ikincil sunucuların yenileme zamanlamaları ve negatif önbellekleme süresi.
example.com. 3600 IN SOA ns1.example.net. hostmaster.example.com. (
2026100701 ; serial
7200 ; refresh
3600 ; retry
1209600 ; expire
3600 ) ; minimum (negatif önbellek TTL'i)
Sık hatalar: Değişiklik sonrası seri numarasını artırmamak (ikincil sunucular güncellemeyi çekmez); son alanın hâlâ "varsayılan TTL" olduğunu sanmak. RFC 2308 ile bu alan negatif cevapların önbellek süresi olarak yeniden tanımlanmıştır.
CAA kaydı
CAA kaydı, alan adı için hangi sertifika otoritelerinin (CA) TLS sertifikası verebileceğini belirtir (RFC 8659). CA'lar sertifika vermeden önce bu kaydı kontrol etmek zorundadır.
example.com. 3600 IN CAA 0 issue "ca.example.net"
example.com. 3600 IN CAA 0 issuewild ";"
example.com. 3600 IN CAA 0 iodef "mailto:[email protected]"
Sık hatalar: Yeni bir CA'ya geçerken CAA kaydını güncellemeyi unutmak ve sertifika yenilemenin başarısız olması. CAA ağaçta yukarı doğru aranır; alt alan adında kayıt yoksa üst bölgedeki kayıt geçerlidir.
SRV kaydı
SRV kaydı, belirli bir servisin hangi host ve port üzerinde çalıştığını belirtir (RFC 2782). İsim _servis._protokol.alanadı biçimindedir; veri kısmı öncelik, ağırlık, port ve hedeften oluşur.
_sip._tcp.example.com. 3600 IN SRV 10 60 5060 sip1.example.com.
_sip._tcp.example.com. 3600 IN SRV 10 40 5060 sip2.example.com.
$ dig +short _sip._tcp.example.com SRV
Sık hatalar: Alt çizgili ön ekleri atlamak; hedef olarak CNAME veya IP adresi kullanmak (RFC 2782 hedefin A/AAAA kaydı olan bir isim olmasını ister).
PTR kaydı
PTR kaydı ters DNS (reverse DNS) için kullanılır: bir IP adresini isme eşler. IPv4 için in-addr.arpa, IPv6 için ip6.arpa altında, adres ters çevrilerek yazılır.
10.2.0.192.in-addr.arpa. 3600 IN PTR mail.example.com.
$ dig -x 192.0.2.10 +short
Sık hatalar: PTR kaydını kendi zone'unuzda tanımlamaya çalışmak. Ters bölge IP bloğunun sahibine (genellikle barındırma sağlayıcısı veya ISS) aittir; kaydı onlar üzerinden düzenlemeniz gerekir. E-posta sunucularında PTR ile ileri yöndeki A kaydının birbirini tutmaması teslim sorunlarına yol açabilir.
Özet
- A ve AAAA isimleri IP adreslerine, PTR ise IP adreslerini isimlere eşler.
- CNAME bulunan bir isimde başka kayıt olamaz; bu yüzden apex'te CNAME kullanılamaz.
- MX, NS ve SRV hedefleri CNAME değil, doğrudan adres kaydı olan isimler olmalıdır.
- TXT kayıtları e-posta kimlik doğrulaması ve sahiplik doğrulaması için kullanılır; CAA sertifika verilebilecek CA'ları sınırlar.
- Bir alan adının mevcut kayıtlarını sorgulama aracındaki DNS sekmesinden görebilirsiniz.
Bir alan adının WHOIS/RDAP kaydını ve durum kodlarını gör.
whois sorgula →