İçeriğe geç
ipkontrol.net

DNS

AAAA Kaydı Nedir?

IPv6 karşılığı ve iki kaydın birlikte tanımlanması.

AAAA kaydı, bir alan adını IPv6 adresine bağlayan DNS kaydı. A kaydı ne yapıyorsa aynısını yapıyor; yalnızca hedef adres 32 değil 128 bit. Dört harf, adresin dört kat uzunluğuna gönderme.

Kaydın genel yapısını ve TTL'i A kaydı yazısında ayrıntılı anlattık; AAAA için hepsi aynen geçerli. Bu yazı başka bir soruya bakıyor: iki kayıt bir arada olduğunda ne oluyor ve neden bazen bozuluyor?

Kayıt neye benziyor?

AdTürDeğerTTL
@A203.0.113.103600
@AAAA2001:db8::103600

İkinci satırdaki :: bir kısaltma: art arda gelen sıfır gruplarının yerini tutuyor. Adresin tam yazımı 2001:0db8:0000:0000:0000:0000:0000:0010. DNS panellerinin hepsi kısa yazımı kabul ediyor; yazım kurallarını IPv6 yazısında anlattık. IPv4/IPv6 dönüştürücü ile bir adresin açık ve kısa biçimini görebilirsiniz.

İstemci iki adres arasında nasıl seçiyor?

Alan adının hem A hem AAAA kaydı varsa ve cihazınızın bağlantısı iki protokolü de destekliyorsa, tarayıcı ikisini de soruyor. Sonrası "mutlu gözler" anlamına gelen Happy Eyeballs adlı bir yöntemle yürüyor:

  1. Tarayıcı önce IPv6 adresine bağlanmayı deniyor.
  2. Çeyrek saniye civarında yanıt alamazsa aynı anda IPv4'ü de deniyor.
  3. Hangisi önce bağlanırsa onu kullanıyor, diğerini bırakıyor.

Bu yöntem, IPv6 yolu bozuk olan bir sitenin kullanıcıyı dakikalarca bekletmesini engellemek için geliştirildi. Ama kurtarabildiği tek durum bağlantının hiç kurulamaması. Bağlantı kurulup yanlış bir yere düşerse Happy Eyeballs devreye girmiyor.

Asimetri: eksik kayıt zararsız, yanlış kayıt zararlı

DurumSonuç
A var, AAAA yokSite IPv4 üzerinden çalışıyor; IPv6 kullanıcıları da çoğunlukla ulaşıyor
İkisi de var, ikisi de doğruİdeal durum
AAAA var ama sunucu IPv6'da yanıt vermiyorGecikmeli açılış — Happy Eyeballs kurtarıyor
AAAA var, bağlantı kuruluyor ama yanlış site ya da sertifika hatasıBir grup kullanıcıda site bozuk

Birinci satırdaki "ulaşıyor" önemli: yalnızca IPv6 kullanan mobil ağlarda operatörler bir çeviri katmanı çalıştırıyor ve IPv4'lü sitelere erişim bu katman üzerinden sağlanıyor. Yani AAAA kaydı eklemeyen bir site bugün erişilemez hâle gelmiyor.

Dördüncü satır ise en sinsi arıza ve genellikle şöyle doğuyor:

  • Sunucu taşındı, A kaydı güncellendi, AAAA kaydı unutuldu — eski sunucuyu gösteriyor.
  • Barındırma paneli kaydı otomatik ekledi ama web sunucusu IPv6'da farklı bir siteyi sunuyor.
  • SSL sertifikası yalnızca IPv4 tarafındaki yapılandırmaya kurulmuş.
  • Güvenlik duvarında IPv4 için 443 portu açık, IPv6 için unutulmuş.

Son madde yaygın; IPv6'da güvenlik duvarı kurallarının neden ayrı yazıldığını IPv6 güvenlik duvarı yazısında anlattık.

"Mobilde açılmıyor, Wi-Fi'de açılıyor"

Bu şikâyetin en yaygın kaynağı yanlış AAAA kaydı. Sebep, Türkiye'de mobil şebekelerde IPv6'nın yaygın, sabit hatlarda ise daha az yaygın olması:

ZiyaretçiKullandığı kayıtGördüğü
Ev Wi-Fi'si, yalnızca IPv4ADoğru site
Mobil veri, IPv6 açıkAAAAEski sunucu ya da hata

Site sahibi kendi bilgisayarından kontrol ediyor, her şey yolunda görünüyor. Şikâyet eden ise telefonundan giriyor. Kendi bağlantınızın hangi protokolle çıktığını sorgulama aracındaki adres tipi alanından görebilirsiniz.

Teşhis komutları

Önce kayıtların ne dediğine bakın:

  • Windows: nslookup -type=AAAA ornek.com
  • macOS ve Linux: dig ornek.com AAAA +short

Aynı sorguyu DNS sorgulama aracıyla de yapabilirsiniz. Sonra iki protokolü ayrı ayrı zorlayarak sitenin ne döndürdüğünü karşılaştırın:

KomutNe yapar
curl -4 -I https://ornek.comYalnızca A kaydını kullanarak bağlanır
curl -6 -I https://ornek.comYalnızca AAAA kaydını kullanarak bağlanır
ping -6 ornek.comIPv6 yolunun açık olup olmadığını gösterir

İki curl çıktısında durum kodu, Server başlığı ya da yönlendirme hedefi farklıysa iki protokol farklı yerlere gidiyor. -6 komutu için bilgisayarınızın IPv6 bağlantısı olması gerekiyor; yoksa telefonu mobil veriyle erişim noktası yapıp oradan deneyin.

CDN arkasındaki siteler

Site bir içerik dağıtım ağının arkasındaysa AAAA kaydı sizin sunucunuzu değil, CDN'in kenar sunucularını gösteriyor. CDN ziyaretçiyi IPv6'dan karşılayıp arkadaki sunucunuza IPv4 ile bağlanabiliyor.

Bu durumda sunucunuzun IPv6 desteği olmasına gerek yok ve AAAA kaydını genellikle CDN kendisi yönetiyor. Elle bir AAAA kaydı eklemek ise CDN'i atlatıp doğrudan sunucuyu açığa çıkarabiliyor.

E-posta tarafında ek bir şart

Posta sunucusunun adına AAAA kaydı eklendiğinde sunucu dışarıya IPv6 üzerinden de posta göndermeye başlayabiliyor. Büyük posta sağlayıcıları IPv6'dan gelen postada ters kaydı daha sıkı arıyor: gönderen adresin, sunucunun adına geri çözülmesi gerekiyor.

Ters kayıt yoksa postalar reddedilebiliyor ya da spam'e düşüyor. Ters kaydı DNS panelinden değil, IPv6 adresini size veren barındırma firmasından istemeniz gerekiyor. SMTP portları yazısında posta gönderiminin diğer tarafını anlattık.

AAAA eklerken kontrol listesi

  1. Sunucu gerçekten bu IPv6 adresinde dinliyor mu?
  2. Web sunucusu yapılandırması IPv6 için de aynı siteyi sunuyor mu?
  3. Sertifika IPv6 tarafında da kurulu mu?
  4. Güvenlik duvarında IPv6 için 80 ve 443 açık mı?
  5. curl -4 ve curl -6 aynı sonucu veriyor mu?
  6. Taşınma yapılırsa A ile birlikte AAAA da güncellenecek mi?

Bu altı maddeden birine "bilmiyorum" diyorsanız kaydı eklemeyin. Eksik AAAA kimseyi dışarıda bırakmıyor; yanlış AAAA bırakıyor.

Sıkça sorulan sorular

AAAA kaydı nedir?

Bir alan adını IPv6 adresine bağlayan DNS kaydıdır. A kaydının IPv6 karşılığıdır; dört harf, IPv6 adresinin IPv4 adresinden dört kat uzun olmasına gönderme.

AAAA kaydı eklemek zorunlu mu?

Hayır. Yalnızca IPv6 kullanan ağlardaki ziyaretçiler çoğunlukla operatörün çeviri katmanıyla IPv4 sitelere ulaşabiliyor. Eksik AAAA siteyi bozmaz, yanlış AAAA bozar.

A ve AAAA kaydı birlikte olursa hangisi kullanılır?

Tarayıcı ikisini de sorar, önce IPv6’yı dener ve kısa sürede yanıt alamazsa IPv4’e geçer. Hangisi önce bağlanırsa o kullanılır.

Sitem mobilde açılmıyor ama Wi-Fi’de açılıyor, neden?

En yaygın sebep yanlış bir AAAA kaydıdır. Mobil şebekeler IPv6 kullandığı için telefon AAAA kaydındaki adrese gider; o adres eski sunucuyu gösteriyorsa ya da orada site yapılandırılmamışsa sayfa açılmaz.

AAAA kaydını nasıl kontrol ederim?

Windows üzerinde nslookup -type=AAAA, macOS ve Linux üzerinde dig AAAA komutuyla. Sitenin iki protokolde aynı yanıtı verip vermediğini curl -4 ve curl -6 ile karşılaştırabilirsiniz.