Dual-Stack Nedir, Nasıl Çalışır?

Dual-stack, bir cihazın, yönlendiricinin veya ağın IPv4 ve IPv6 protokollerini aynı anda çalıştırdığı işletim modelidir. Cihaz iki protokol için de geçerli adreslere ve kullanılabilir ağ yollarına sahipse uygulama, hedefin sunduğu adreslere ve bağlantı koşullarına göre uygun protokolü kullanır.
Bu model, IPv6'ya geçiş sürerken IPv4 ile çalışan hizmetlere erişimi korur ve IPv6 desteği bulunan hedeflere doğrudan IPv6 bağlantısı kurulmasına imkan verir. Dual-stack kendi başına tünelleme veya protokol çevirisi yapmaz; cihazın iki protokolü birlikte desteklemesini ifade eder. Ağ yolunun bir bölümünde ayrıca tünel kullanılması, cihazın dual-stack olmasını engellemez.
Dual-stack ağda “iki protokol birden açık” olmak, her bağlantının iki protokolü aynı anda kullandığı anlamına gelmez. Tek bir oturum çoğu durumda IPv4 ya da IPv6 üzerinden kurulur; sonraki bir oturum farklı hedefe, farklı DNS yanıtına veya değişen ağ koşullarına bağlı olarak diğer protokolü kullanabilir.
Bu nedenle dual-stack, tek bir bağlantıyı ikiye bölmekten çok iki ayrı bağlantı seçeneğini aynı cihazda hazır tutar. Doğrudan internet erişiminde seçilen protokolün istemci, yönlendirici, internet servis sağlayıcısı ve hedef hizmet tarafından desteklenmesi gerekir.
IPv4 ve IPv6 Aynı Cihazda Nasıl Birlikte Çalışır?
Dual-stack bir cihazda IPv4 ve IPv6 için adresleme, yönlendirme ve paket işleme ayrı kurallarla yürür. Aynı Wi-Fi veya Ethernet arayüzü iki protokol için de adres taşıyabilir; ancak her protokol kendi kaynak adresini, hedef adresini ve uygun ağ yolunu kullanır.
Adreslerin Aynı Arayüzde Bulunması
Bir cihazın IPv4 adresi ile IPv6 adresi birbirinin alternatifi olarak yazılmış iki biçim değildir. Bunlar farklı adres uzaylarına ve farklı paket başlıklarına ait bağımsız adreslerdir. İşletim sistemi, hedef IPv4 ise IPv4 kaynak adresini; hedef IPv6 ise uygun IPv6 kaynak adresini seçer.
Adresin cihaz üzerinde görünmesi tek başına uçtan uca bağlantının hazır olduğunu kanıtlamaz. Yerel yönlendirme, internet servis sağlayıcısının desteği, hedef sunucunun erişilebilirliği ve güvenlik duvarı kuralları da bağlantının kurulup kurulamayacağını etkiler.
DNS Sonuçlarından Uygun Adresin Seçilmesi
Bir alan adı için A kaydı IPv4 adresini, AAAA kaydı ise IPv6 adresini belirtir. Hedef iki kayıt türünü de yayımlıyorsa DNS istemciye birden fazla aday adres sunabilir; DNS bu adreslerden hangisinin kesin olarak kullanılacağını tek başına belirlemez.
İşletim sistemi kaynak ve hedef adreslerin uygunluğunu değerlendirir, uygulama da bağlantı denemelerinin sırasını ve zamanlamasını yönetebilir. AAAA kaydının bulunması, IPv6 ağ yolunun sorunsuz çalıştığını tek başına göstermez. IPv6 yolu hatalıysa uygulama gecikme yaşayabilir, diğer adrese geçebilir veya yapılandırmaya bağlı olarak bağlantıyı kuramayabilir.
Bir Protokol Çalışmadığında Diğeri Nasıl Kullanılır?
Bir protokolle bağlantı kurulamadığında diğerinin denenebilmesi için istemci ve uygulama diğer protokolü desteklemeli, hedefin o protokole ait adresi ve çalışan bir ağ yolu bulunmalıdır. Hedef yalnız A kaydı yayımlıyorsa bağlantı IPv4 ile kurulur; yalnız AAAA kaydı yayımlıyorsa istemcinin çalışan bir IPv6 yoluna ihtiyacı vardır.
- Hedefte A ve AAAA kayıtları varsa iki protokol de aday olabilir.
- IPv6 adresi seçilse bile bağlantı denemesi başarısız olursa uygulama IPv4 adresini deneyebilir.
- IPv4 bağlantısı başarısız olduğunda kullanılabilir bir IPv6 adresi ve yolu varsa IPv6 seçeneği değerlendirilebilir.
- Uygulamanın adres seçimi veya yeniden deneme davranışı yetersizse diğer protokole geçiş gerçekleşmeyebilir.
Happy Eyeballs, farklı adreslere yapılan bağlantı denemelerini kısa aralıklarla başlatarak sorunlu bir yolu uzun süre beklemeyi azaltan bir yöntemdir. Bu yöntemi kullanan uygulama, ilk denemenin tamamen zaman aşımına uğramasını beklemeden diğer protokolü deneyebilir. Yine de dual-stack kesintisiz bağlantıyı garanti etmez. Bozuk bir IPv6 yapılandırması, yalnız IPv4 ile çalışan bir uygulama veya yanlış güvenlik duvarı kuralı, diğer protokol mevcut olsa bile kullanıcı deneyimini bozabilir.
Dual-Stack, Tünelleme ve Protokol Çevirisi Arasındaki Farklar
Dual-stack, bir cihazın IPv4 ve IPv6 paketlerini ayrı ayrı işleyebilmesini ifade eder. Tünelleme paketin nasıl taşındığını, protokol çevirisi ise iki farklı IP sürümü arasında nasıl dönüştürüldüğünü anlatır.
- Dual-stack: Cihaz IPv4 ve IPv6 protokollerini birlikte çalıştırır.
- Tünelleme: Bir protokolün paketleri başka bir protokol üzerinden taşınır.
- Protokol çevirisi: Paket, bir IP sürümünden diğerine uygun başlık ve adreslerle dönüştürülür.
Bu yöntemler aynı ağda bir arada kullanılabilir, ancak aynı mekanizma değildir. Örneğin dual-stack bir cihaz IPv4 bağlantısını doğrudan kullanırken IPv6 paketlerini bir tünel üzerinden taşıyabilir. Uygulamanın IPv4 veya IPv6 seçmesi, hedef desteğine ek olarak adres seçimi ve bağlantı denemelerine bağlıdır.
Dual-Stack Ağlarda Yönetim ve İzleme
İki protokolün birlikte çalışması, tek protokollü bir ağa göre daha fazla yönetim işi gerektirir. Adres dağıtımı, DNS kayıtları, yönlendirme, güvenlik duvarı kuralları, hata kayıtları ve performans ölçümleri IPv4 ile IPv6 için ayrı ayrı izlenmelidir.
Bir hizmetin IPv4 üzerinden açılması, aynı hizmetin IPv6 üzerinden de sağlıklı olduğu anlamına gelmez. Sorun giderirken IPv4 ile IPv6 arasından hangisinin seçildiği, seçilen hedef adres, bağlantı gecikmesi ve hata noktası belirlenmezse tek protokole özgü arızalar gözden kaçabilir.
Ağ yöneticisi, IPv4 için tanımlanan erişim kurallarının IPv6 trafiğini otomatik olarak kapsadığını varsaymamalıdır. Yönlendirici ve güvenlik duvarındaki IPv6 kurallarını ayrıca denetlemelidir; aksi halde hizmet beklenmedik biçimde erişilemez kalabilir veya planlanandan daha geniş erişime açılabilir.
Tarayıcınızın IPv4 ve IPv6 üzerinden ayrı ayrı bağlantı kurup kuramadığını IPv6 Testi ile kontrol edebilirsiniz. Test, o anda kendi test hedeflerine kurulan bağlantıları gösterir; internetteki bütün IPv6 hedeflerinin sorunsuz çalışacağını kanıtlamaz.







