4 Kasım 2026 - 12:24
Site IPv4 ile Açılıyor, IPv6 ile Açılmıyor: AAAA Kaydından Sonrasına Bakalım Görseli
Temel Bilgiler

Site IPv4 ile Açılıyor, IPv6 ile Açılmıyor: AAAA Kaydından Sonrasına Bakalım

0 Yorumlar

Site evde açılıyor, telefonda bekliyor. DNS kayıtlarına bakınca A kaydı doğru, sunucu da ayakta. Böyle bir durumda kontrol edilecek parçalardan biri IPv6 yolu. Alan adının IPv4 adresine gitmek ile IPv6 adresine gitmek iki ayrı bağlantı denemesidir.

A kaydı IPv4 adresini, AAAA kaydı IPv6 adresini bildirir. AAAA eklemek, sunucunun o adreste HTTPS sunmaya başladığı anlamına gelmez. Adresin sunucuya atanması, ağ yolunun çalışması ve web servisinin o bağlantıyı kabul etmesi de gerekir. Temel ayrım için DNS rehberine bakabilirsin.

Aynı adrese iki farklı yoldan gidelim

Aşağıdaki komutlar Linux terminali içindir. example.com yerine kendi alan adını yaz. dig DNS sorgu aracıdır; sisteminde yoksa dağıtımın DNS araçları paketinden kurulur. cURL tarafındaki -4 ve -6, kullanılacak adres ailesini seçer.

BASH
dig +short A example.com
dig +short AAAA example.com
curl --noproxy '*' -4 -I --connect-timeout 5 --max-time 15 https://example.com/
curl --noproxy '*' -6 -I --connect-timeout 5 --max-time 15 https://example.com/

--noproxy '*', bu denemede ortamın proxy ayarını devreden çıkarır; doğrudan yolu ölçeriz. İnternete yalnız zorunlu proxy ile çıkan bir ağda bu komutun başarısız olması beklenebilir. -I gövde yerine HEAD yanıtını ister. Uygulama HEAD desteklemeyip 405 döndürürse bağlantı yine kurulmuştur; bu bir IPv6 zaman aşımı değildir. Gerekirse aynı komutu -I yerine -o /dev/null -D - ile küçük bir GET isteği için çalıştır.

AAAA kaydı yoksa -6 denemesinin isim çözümleme hatası vermesi normaldir. IPv6 kaydı bulunması da test yaptığın bilgisayarın IPv6 çıkışı olduğunu kanıtlamaz. Önce deneme makinesinin çalışan bir IPv6 bağlantısı olduğundan emin ol; gerekirse farklı bir ağdan karşılaştır.

AAAA doğruysa sunucuda neye bakılır?

Sunucuya atanmış IPv6 adresi ile DNS'teki adresi karşılaştır. Sonra HTTPS portunu hangi adreslerde dinlediğine bak:

BASH
ip -6 address show
ip -6 route show
sudo ss -lntp '( sport = :443 )'

ss çıktısındaki yalnız 0.0.0.0:443 dinlemesi IPv4 içindir. [::]:443 IPv6 dinlemesini gösterir; bunun IPv4'ü de kabul edip etmemesi sistem ve uygulama ayarına bağlıdır. Bir satıra bakıp iki yolu da doğrulanmış sayma. Yalnız localhost üzerinde dinleme varsa dışarıdan erişim ayrıca mümkün olmaz.

Dinleme doğruysa sunucu güvenlik duvarını, sağlayıcının ağ kurallarını ve yönlendirmeyi ayrı kontrol et. IPv4 için izin verilen 443 kuralı, IPv6 için de izin olduğu anlamına gelmeyebilir. ICMPv6 trafiğini bütünüyle engelleyen kurallar da bağlantı sorunları yaratabilir; yalnız web portuna bakarak ağın tamamını doğrulamış olmayız. IPv6'yı makine genelinde kapatmak yerine eksik kuralı veya yolu bul.

DNS'i değiştirmeden belirli adresi dene

Alan adı birden fazla IPv6 adresine gidiyorsa sorun tek bir hedefte olabilir. --resolve, bu deneme için alan adını belirli adrese bağlar; HTTPS'teki alan adı ve sertifika kontrolü korunur. Aşağıdaki 2001:db8::10 yalnız dokümantasyon adresidir, gerçek sunucunun IPv6 adresiyle değiştirmelisin:

BASH
curl --noproxy '*' -6 -I --connect-timeout 5 --max-time 15 \
  --resolve 'example.com:443:[2001:db8::10]' https://example.com/

IP adresini doğrudan URL'ye yazmak aynı test değildir; sanal sunucu ve sertifika seçimi değişebilir. cURL belgesindeki --resolve bu ayrımı korumak için kullanışlı. Sertifika hatası alırsan -k ekleyip başarılı sayma; hedefin doğru alan adına doğru sertifikayı sunduğunu da çözmelisin.

CDN veya ters proxy kullanıyorsan DNS cevabındaki adresler kendi sunucuna değil bu hizmete ait olabilir. O zaman dışarıdan CDN'e giden yol ile CDN'den asıl sunucuya giden yolu ayrı ele al. “DNS doğru” diyebilmek için adresin kime ait olduğunu da bilmek gerekir.

Düzeltmeden sonra iki yolu da yeniden dene

Yanlış AAAA kaydını düzeltmek gerekiyorsa gerçek hizmet adresini kullan. IPv6 hizmetin yokken eski bir AAAA kaydını tutmak yerine DNS politikanı buna göre düzenleyebilirsin; değişikliğin önbelleklere yayılması ise TTL süresine bağlıdır. Kaydı silmek, IPv6 altyapısındaki arızayı onarmış olmaz.

Son kontrolde IPv4 ve IPv6 için yalnız “komut bitti” durumunu değil, beklenen HTTP yanıtını ve doğru siteyi aldığını karşılaştır. Birden fazla AAAA varsa her adresi, ardından normal DNS yolunu dene. Yerel test geçip başka ağda kalıyorsa bir sonraki inceleme noktası tarayıcı önbelleği değil, iki ağ arasındaki IPv6 erişim farkıdır.

Benzer Yazılar

Yorumlar (0)

Henüz yorum yok. İlk yorum yapan sen ol!

Yorum Yap