Anycast DNS Nedir ve Nasıl Çalışır?

Anycast DNS, aynı hizmet IP adresinin iki veya daha fazla bağımsız konumda sunulmasıdır. Her konumdaki DNS sunucusu ve onu ağa bağlayan yönlendiriciler bir Anycast düğümü oluşturur. Hizmet adresini içeren adres bloğunu tanımlayan prefix, bu konumlardan yönlendirme sistemine duyurulur. Sorgu, o anda tercih edilen ağ yolunun ulaştığı düğümde yanıtlanır.
DNS istemcisi, ortak hizmet IP adresine sorgu gönderirken fiziksel Anycast düğümleri arasından seçim yapmaz. Ortak hizmet IP adresine paket gönderir; ağ yönlendirmesi paketi tek bir Anycast düğümüne ulaştırır. Düğümler farklı şehirlerde, ülkelerde veya ağlarda bulunabilir.
Seçim fiziksel mesafeye göre değil, yönlendirme politikalarına ve kullanılabilir ağ yollarına göre yapılır. Bu nedenle Anycast DNS çoğu kullanıcı için daha uygun bir yol sağlayabilir; ancak coğrafi olarak en yakın düğümü, en düşük gecikmeyi veya eşit trafik dağılımını garanti etmez.
Anycast DNS'te Düğüm Nasıl Seçilir?
- Aynı hizmet IP adresini kapsayan prefix birden fazla Anycast düğümünden duyurulur.
- Yönlendirme sistemi her kaynak ağ için tercih edilen yolu belirler.
- Paket, seçilen yolun ulaştığı tek bir Anycast düğümünde işlenir.
- Bir rota duyurusu geri çekilirse yönlendirme sistemi kalan yollar arasından yeni bir tercih yapabilir.
- Ağ açısından yakın olan düğüm, harita üzerinde en yakın düğüm olmak zorunda değildir.
Küresel ve Yerel Rota Duyuruları
Küresel internette Anycast DNS prefix'leri çoğunlukla BGP (Border Gateway Protocol) ile duyurulur. BGP, ağlar arasında hangi adres bloklarına hangi yollardan ulaşılabildiği bilgisini paylaşır. BGP yol seçimini kilometre cinsinden fiziksel uzaklığa göre yapmaz; işletmeci politikası, komşuluk ilişkileri, yol özellikleri ve erişilebilirlik seçimi etkiler. Seçilen yolun her zaman en düşük gecikmeli yol olması gerekmez.
Bir işletmeci kendi ağı içinde IGP (Interior Gateway Protocol) grubundaki bir yönlendirme protokolünü kullanarak da yerel kapsamlı Anycast DNS hizmeti kurabilir. Ayrıca BGP duyuruları filtreleme ve dışa aktarma politikalarıyla belirli ağlara veya bölgelere sınırlandırılabilir. Bu durumda bir düğüm bütün internetten değil, yalnız hedeflenen kaynak ağlardan görülebilir.
DNS Sorgusunun Anycast Düğümüne Ulaşması
Recursive resolver (özyinelemeli DNS çözümleyicisi), istemci adına DNS kayıtlarını araştıran sunucudur. Anycast kullanan yetkili sunucuyu sorgularken ortak hizmet IP adresine paket gönderir; bir DNS istemcisi de Anycast kullanan recursive resolver hizmetine aynı yöntemle ulaşır. İnternet yönlendirmesi DNS mesajındaki alan adını incelemeden hedef IP adresi ve rota bilgisine göre yolu seçer. Alan adını seçilen Anycast düğümündeki DNS yazılımı işler.
Bir sonraki sorgu aynı düğüme ulaşabilir; yönlendirme koşulları değişirse başka bir düğüme de gidebilir. Anycast DNS düğümleri bu nedenle hizmetin türüne uygun, tutarlı veri ve davranış sunmalıdır.
UDP ve TCP Sorgularında Rota Değişimi
Birçok klasik DNS işlemi UDP üzerinden kısa bir istek ve yanıt olarak tamamlanır. UDP, önceden bağlantı kurmadan mesaj iletir. Kısa işlem süresi, yönlendirme tercihi değişmeden işlemin bitme olasılığını artırır. Paket kaybolursa istemci veya recursive resolver zaman aşımından sonra sorguyu yeniden gönderebilir; yeni deneme farklı bir düğüme ulaşabilir.
TCP ise verileri bağlantı kurarak, sıralı ve güvenilir biçimde iletir; sunucu bağlantıya ait bilgileri bellekte tutar. Yönlendirme değişikliği bağlantının ortasında paketleri başka bir Anycast düğümüne götürürse bağlantı kesilebilir. Bu durum TCP'nin Anycast DNS ile kullanılamayacağı anlamına gelmez; ağ yolunun beklenen işlem veya bağlantı süresinden daha uzun süre kararlı kalması gerekir.
DNS bölge aktarımı, uzun süre açık tutulan bağlantılar ve şifreli DNS taşıması gibi daha uzun işlemler için düğüm kararlılığı ayrıca değerlendirilmelidir. Yönetim ve veri eşitleme işlemlerinde tek bir düğüme özgü adreslerin kullanılması, ortak hizmet adresinin hangi fiziksel düğüme gideceği belirsizliğini azaltır.
Arıza Durumunda Anycast DNS Nasıl Davranır?
Anycast DNS tek bir konuma bağımlılığı azaltabilir; fakat yalnız aynı IP adresini birden fazla yerde çalıştırmak kesintisiz hizmet sağlamaz. Sağlık denetimi, rota duyurusu, kapasite ve veri tutarlılığı birlikte yönetilmelidir.
Rota Duyurusu Geri Çekildiğinde
Bir Anycast düğümü kullanılamaz hale geldiğinde o düğümün rota duyurusu geri çekilirse yönlendirme sistemi kalan duyurular arasından yeni bir yol seçebilir. Yönlendiriciler rota değişikliğini öğrenip tablolarını güncelledikten sonra yeni sorgular başka bir düğüme ulaşabilir; bunun için o kaynak ağdan erişilebilir bir alternatif yol kalmış olmalıdır. Bu güncellemelerin tamamlanmasına yönlendirme yakınsaması denir.
Bu geçiş anlık olmak zorunda değildir. Yakınsama sırasında kısa süreli paket kaybı, zaman aşımı veya farklı kaynak ağlarda farklı geçiş zamanları görülebilir. Yalnız DNS yazılımının durması da ağ cihazının duyuruyu kendiliğinden geri çekeceği anlamına gelmez; sağlık denetiminin hizmet arızasını rota yönetimine güvenli biçimde aktarması gerekir.
Çalışmayan Düğümün Rota Duyurmaya Devam Etmesi
Ağ bağlantısı açık kalırken DNS uygulaması yanıt vermezse düğüm en iyi yol olarak seçili kalabilir. Bu durumda trafik erişilebilir görünen fakat hizmet sunamayan noktaya yönelmeyi sürdürebilir. Yalnız cihazın açık olup olmadığını değil, gerçek DNS yanıtını ve gerekli veri kümelerini denetleyen sağlık kontrolleri bu riski azaltır.
Rota geri çekme eşiği de dikkatle ayarlanmalıdır. Çok hassas bir sistem kısa süreli dalgalanmada sık rota değişimine, çok yavaş bir sistem ise arızalı düğüme uzun süre trafik gönderilmesine yol açabilir.
Anycast Düğümlerinde DNS Verisi Tutarlılığı
Yetkili DNS sunucusu olarak çalışan düğümler, sorumlu oldukları DNS bölgesinin kayıtlarını sunar. Aynı bölgeye hizmet veren düğümlerin kayıtları birbiriyle uyumlu olmalıdır. Bölge aktarımı, dağıtım denetimi ve sürüm takibi yapılmazsa iki kaynak ağ aynı hizmet IP adresine sorgu gönderdiği halde farklı veya eski yanıt alabilir.
DNSSEC, imzalı DNS kayıtlarının kaynağını ve bütünlüğünü doğrulamaya yarar. DNSSEC kullanılan bölgelerde imzalı kayıtların ve ilgili anahtar zincirinin düğümler arasında uyumlu olması gerekir. Anycast DNS, DNSSEC doğrulamasını bozmaz; fakat veri dağıtımındaki tutarsızlık geçersiz veya beklenmeyen doğrulama sonuçları doğurabilir.
Recursive resolver düğümlerinin önbellekleri aynı anda birebir aynı olmak zorunda değildir. Farklı kullanıcı sorguları nedeniyle içerikleri değişebilir. Buna karşılık doğrulama, filtreleme, gizlilik ve hata işleme politikalarının hizmet genelinde tutarlı olması beklenir.
Düğümlerin aynı DNS yazılımını kullanması zorunlu değildir. Farklı yazılımlar kullanılıyorsa protokol davranışı, desteklenen özellikler, güvenlik güncellemeleri ve kullanıcıya verilen sonuçlar birlikte sınanmalıdır.
Anycast DNS Nerelerde Kullanılır?
Anycast DNS, hem alan adlarının kayıtlarını sunan yetkili hizmetlerde hem de bu kayıtları kullanıcı adına araştıran recursive resolver hizmetlerinde kullanılır.
Kök ve Yetkili DNS Hizmetleri
Kök DNS hizmetleri, üst düzey alan adı hizmetleri ve büyük yetkili DNS sağlayıcıları aynı hizmet IP adresini farklı Anycast düğümlerinden duyurabilir. NS kayıtları bir alan adı için birden fazla yetkili sunucu adı gösterir; bu sunucu adlarının her biri ayrıca çok sayıda Anycast düğümüyle sunulabilir.
RFC 9199'a göre birden fazla NS kaydı ile Anycast DNS birbirini tamamlayan iki ayrı yedeklilik yöntemidir. Anycast DNS tek hizmet adresini birçok fiziksel noktaya dağıtır; birden fazla NS kaydı ise farklı hizmet adları ve adresleri arasında ek yedeklilik sağlar.
Genel Kullanıma Açık Recursive Resolver Hizmetleri
Genel kullanıma açık recursive resolver hizmetleri de farklı bölgelerde aynı hizmet IP adresini sunabilir. Kullanıcının sorgusu yönlendirme tercihine göre bir Anycast düğümüne ulaşır. Her düğümün önbelleği farklı olsa da DNS sağlayıcısının güvenlik ve gizlilik politikalarını bütün düğümlerde tutarlı uygulaması gerekir.
Recursive resolver hizmetinde yedeklilik, Anycast kullanmakla tamamlanmaz. Yazılım güncellemesi, yapılandırma dağıtımı, bağımsız bağlantılar, kapasite planlaması ve ortak bağımlılıkların azaltılması ayrıca tasarlanmalıdır.
Anycast DNS, GeoDNS ve Yük Dengeleme Arasındaki Farklar
Anycast DNS'te aynı hizmet IP adresi birden fazla düğümden duyurulur ve yönlendirme sistemi paketin hangi düğüme ulaşacağını seçer. Seçim DNS yanıtı üretilmeden önce ağ katmanında gerçekleşir.
GeoDNS, DNS yanıtında hangi hedef IP adresinin döndürüleceğine karar verir. Karar, recursive resolver'ın ya da istemci ağının tahmini konumuna göre değişebilir. GeoDNS ile Anycast DNS birlikte kullanılabilir; ancak aynı mekanizma değildir.
Yük dengeleyici çoğunlukla bir veri merkezi veya bölge içindeki arka uçlara istek dağıtır. Anycast DNS önce trafiği bir düğüme ulaştırabilir; o düğümdeki yük dengeleyici de isteği yerel DNS sunucularına dağıtabilir. Anycast DNS, istekleri önceden belirlenmiş eşit oranlarla paylaştıran bir yük dengeleyicinin eş anlamlısı değildir.
DDoS Saldırılarında Trafik Dağılımı ve Kapasite
DDoS, çok sayıda kaynaktan gönderilen trafikle hizmeti kullanılamaz hale getirmeyi amaçlayan saldırıdır. Saldırı trafiği, yönlendirme tercihlerine göre birden fazla Anycast düğümüne dağılabilir. Bu durum saldırı yükünü tek veri merkezinden uzaklaştırabilir veya etkinin bir bölümünü belirli ağ bölgelerinde tutabilir.
Anycast DNS saldırıyı kendiliğinden durdurmaz. Düğümlerin kapasitesi, bağlantı çeşitliliği, filtreleme sistemi, rota politikası ve ortak altyapı bağımlılıkları sonucu belirler. Bazı ağ yollarının aşırı tercih edilmesi belirli bir düğümün kapasitesinin aşılmasına, rota geri çekildiğinde yükün sıradaki düğüme aktarılıp zincirleme kapasite sorununa dönüşmesine yol açabilir.
DNS hizmetinin saldırı sırasında çalışmaya devam edebilmesi için sorgu veya yanıt sayısını sınırlama, sahte kaynak adreslerini engelleyen ağ filtreleri, yeterli bağlantı kapasitesi, her düğümde koruma ve farklı ağlardan izleme gibi ek önlemler gerekir.
IPv4 ve IPv6 Anycast DNS Birlikte Nasıl Yönetilir?
Anycast DNS hem IPv4 hem de IPv6 hizmet adresleriyle uygulanabilir. İki protokolün prefix'leri ayrı duyurulur ve internette farklı yollar izleyebilir. IPv4 üzerinden erişilebilir olan bir düğümün IPv6 yolu aynı kalitede veya aynı kapsamda olmak zorunda değildir.
Sağlık denetimleri, rota görünürlüğü, gecikme, paket kaybı ve yanıt doğruluğu her iki protokol için ayrı ölçülmelidir. Bir protokolde rota geri çekildiğinde diğerinin otomatik olarak geri çekileceği varsayılmamalıdır.
Anycast DNS Düğümü Nasıl İzlenir?
Traceroute, ölçüm yapılan kaynaktan hedefe o anda görülen ağ yolunu gösterir; ancak kullanılan fiziksel Anycast düğümünü her zaman kesin olarak tanımlamaz. Dönüş yolu farklı olabilir, ara yönlendiriciler yanıt vermeyebilir ve DNS sağlayıcısının düğüm bilgisi dışarıya açık olmayabilir.
NSID (Name Server Identifier) seçeneği, destekleyen DNS sunucusundan hangi düğümün yanıt verdiğini ayırt etmeye yarayan bilgi istemeyi sağlar. NSID isteğe bağlıdır; değerinin anlamını DNS sağlayıcısı belirler ve her sunucu yanıtlamaz. Sorguyu bir recursive resolver'a gönderdiğinizde alınan NSID o resolver'a aittir; sorguladığı yetkili sunucunun NSID bilgisini otomatik olarak aktarmaz. Traceroute, NSID, ölçüm konumu ve DNS sağlayıcısının düğüm bilgilerini birlikte incelemek, isteği hangi düğümün yanıtladığını belirlemeye yardımcı olur.
Tek bir ağdan yapılan ölçüm yalnız o kaynağın o andaki yönlendirme tercihini gösterir. Farklı ağlardan DNS yanıtı, gecikme, paket kaybı, rota duyurusu ve düğüm sağlık verileri birlikte izlenmelidir.
BGP ve RPKI Kontrolü Ne Gösterir?
AS (Autonomous System), ortak bir yönlendirme politikası altında çalışan ağlar bütünüdür; ASN bu sistemi tanımlar. BGP verisi, Anycast DNS prefix'inin hangi kaynak AS tarafından ve hangi görünen yollarla duyurulduğunu incelemeye yardımcı olur.
RPKI (Resource Public Key Infrastructure), IP adres bloklarıyla ilgili yetkileri dijital sertifikalarla doğrulamaya yarayan altyapıdır. Bu altyapıdaki imzalı ROA (Route Origin Authorization) kaydı, adres bloğu üzerindeki yetki sahibinin hangi AS'nin hangi prefix'leri duyurmasına izin verdiğini belirtir. Rota kaynak doğrulaması, duyurulan prefix'i, uzunluğunu ve kaynak ASN bilgisini geçerli ROA verisiyle karşılaştırır. Güncel ROA biçimi RFC 9582'de tanımlanır.
RPKI tabanlı kaynak doğrulaması Anycast DNS için zorunlu değildir; hizmet RPKI olmadan da yönlendirilebilir. RPKI sonucu, duyurunun kaynak AS yetkisini değerlendirir; seçilen yolun en kısa veya güvenli olduğunu, belirli bir fiziksel düğümün kimliğini, düğümün çalıştığını ya da DNS yanıtının doğru olduğunu kanıtlamaz.







