Bir kullanıcı Almanya'dan, bir diğeri Kaliforniya'dan aynı web sitesine bağlanmaya çalıştığında ikisi de önce alan adının IP adresini öğrenmek zorundadır. Bu sorguyu yanıtlayan DNS sunucusu tek bir veri merkezinde duruyorsa, dünyanın öbür ucundaki ziyaretçi her sayfa açılışında binlerce kilometrelik bir gidiş-dönüş süresini ödemek zorunda kalır. İşte anycast DNS tam olarak bu problemi çözmek için tasarlanmış bir ağ yönlendirme tekniğidir: aynı IP adresini dünyanın onlarca farklı noktasından aynı anda "duyurur" ve her sorguyu, sorguyu yapan kişiye ağ olarak en yakın düğüme yönlendirir.
Bu rehberde anycast'in ne olduğunu, geleneksel unicast yönteminden nasıl ayrıştığını, düşük gecikme ile DDoS dayanıklılığı gibi somut faydalarını ve bir alan adı yöneticisi olarak bunu nasıl kullanabileceğinizi gerçek örneklerle ele alacağız. Konunun temeli olan çözümleme sürecine hâkim değilseniz önce DNS nedir yazımıza göz atmanızı, ardından buraya dönmenizi öneriyoruz; anycast, o rehberde anlattığımız yetkili sunucu (authoritative nameserver) katmanının üzerine oturan bir dağıtım stratejisidir.
Anycast Nedir? Temel Mantık#
Anycast, tek bir IP adresinin ağ üzerinde birden fazla fiziksel sunucu tarafından paylaşılmasına dayanan bir adresleme yöntemidir. Normalde bir IP adresi tek bir makineye aittir; anycast'te ise örneğin 192.0.2.53 adresi İstanbul, Frankfurt, Singapur ve Virginia'daki dört ayrı DNS sunucusunda aynı anda yapılandırılır. Bu sunucuların hepsi, kendilerine bağlı yönlendiricilerin (router) üzerinden aynı IP bloğunu internete BGP (Border Gateway Protocol) ile duyurur.
İnternetin omurgasını oluşturan yönlendiriciler, aynı IP için birden çok yolun duyurulduğunu gördüğünde en kısa/en ucuz yolu seçer. Buradaki "yakınlık" coğrafi mesafe değil, ağ topolojisindeki mesafedir — kaç router atlaması (hop) gerektiği, hangi hattın daha az yüklü olduğu gibi kriterlerle belirlenir. Sonuç olarak İstanbul'daki bir kullanıcının sorgusu doğal olarak İstanbul veya Frankfurt düğümüne, Singapur'daki bir kullanıcınınki ise Singapur düğümüne düşer. Kullanıcı bunun için hiçbir şey yapmaz; tek bir IP'ye bağlanır ve ağ onu en yakın kopyaya "çeker".
Bu davranışı gündelik bir benzetmeyle anlatmak gerekirse: bir zincir kahve markasını düşünün. Cebinizdeki tek bir marka adı vardır ("en yakın şubeye git" dersiniz), ama nerede olduğunuza göre farklı bir fiziksel şubeye gidersiniz. Anycast'te de "adres" hep aynıdır; sizi karşılayan sunucu, bulunduğunuz yere göre değişir.
Unicast ile Anycast Arasındaki Fark#
Anycast'i anlamanın en net yolu, onu klasik yöntem olan unicast ile yan yana koymaktır. Unicast'te bir IP adresi tek bir sunucuya karşılık gelir; o adrese gelen her paket, dünyanın neresinden gelirse gelsin o tek makineye ulaşır. Anycast'te ise aynı adres birçok makinede yaşar ve paket en yakınına gider.
| Kriter | Unicast DNS | Anycast DNS |
|---|---|---|
| IP–sunucu ilişkisi | Bir IP, bir sunucu | Bir IP, birçok sunucu |
| Yönlendirme | Herkes aynı makineye | En yakın düğüme (BGP) |
| Gecikme (uzak kullanıcı) | Yüksek, sabit | Düşük, konuma göre optimize |
| Tek sunucu çökerse | Tüm bölge etkilenir | Trafik komşu düğüme kayar |
| DDoS karşısında | Tek hedef, kolay boğulur | Saldırı düğümlere dağılır |
| Kurulum karmaşıklığı | Basit | Daha ileri (BGP, çoklu POP) |
| Maliyet | Düşük | Yüksek (çoklu lokasyon) |
Somut bir örnek üzerinden gidelim. Diyelim ki yetkili DNS sunucunuz yalnızca Frankfurt'ta, unicast olarak 198.51.100.10 üzerinde çalışıyor. Türkiye'den bir sorgu tipik olarak 30-45 ms, Avustralya'dan gelen bir sorgu ise 250-300 ms sürer. Sayfadaki her yeni alan adı (CDN, analytics, font sunucusu) ilk açılışta ayrı bir DNS sorgusu doğuracağından, bu gecikme kullanıcı için hissedilir bir yavaşlığa dönüşür.
Aynı alan adını anycast bir DNS ağına taşıdığınızda 198.51.100.10 artık on farklı kıtada canlıdır. Avustralyalı kullanıcının sorgusu Sidney düğümüne düşer ve süre 250 ms'ten 10-20 ms'e iner. Kullanıcı hiçbir ayar değiştirmez; sadece bulunduğu yere en yakın kopya ona cevap verir. Unicast ile anycast arasındaki bu fark, coğrafi olarak yayılmış bir kitleniz varsa doğrudan performansa yansır.
Anycast DNS'in Hız Avantajı#
DNS çözümlemesi, bir web sayfasının yüklenmesindeki ilk adımdır ve tarayıcı cevabı almadan hiçbir kaynağı indirmeye başlayamaz. Bu yüzden yüksek DNS gecikmesi, sayfanın algılanan hızını doğrudan bozar. Anycast, sorgunun kat ettiği fiziksel/ağsal mesafeyi kısaltarak bu ilk gecikmeyi minimuma indirir.
Gecikmenin gerçekliğini kendi terminalinizde görebilirsiniz. Aşağıdaki komut, bir alan adını farklı çözücüler üzerinden sorgulayıp cevap süresini ölçer:
# Sorgu süresini "Query time" satırında görürsünüz
dig @1.1.1.1 clou.tr A +stats
# Yetkili sunucuların gecikmesini trace ile izleyin
dig clou.tr +trace
# Aynı IP'nin nereden cevaplandığını CHAOS sorgusuyla test edin
dig @198.51.100.10 hostname.bind CHAOS TXT
Son komuttaki hostname.bind sorgusu, birçok anycast sağlayıcısında cevabı veren fiziksel düğümün kimliğini döndürür; İstanbul'dan çalıştırdığınızda ist, Frankfurt'a yakın bir noktadan çalıştırdığınızda fra gibi bir etiket görmeniz, sorgunun gerçekten en yakın düğüme gittiğinin kanıtıdır. Bu, tek IP'nin farklı yerlerden yanıtlandığını doğrulamanın en pratik yoludur.
Hız avantajını daha da somutlaştıralım. Kritik olan yalnızca ilk sorgu değildir; DNS kayıtlarının TTL (yaşam süresi) değeri dolduğunda tarayıcı yeniden sorgu yapar. Kısa TTL kullanan (örneğin hızlı yük devretme için) sistemlerde sorgu sıklığı arttığından, her sorgudaki 200 ms'lik tasarruf toplamda ciddi bir birikime dönüşür. TTL'in ve temel kayıt tiplerinin nasıl çalıştığını hatırlamak isterseniz DNS nedir rehberimiz iyi bir başlangıçtır. Anycast, sık sorgu yapan bu senaryolarda unicast'e göre çok daha tutarlı ve düşük gecikmeli bir deneyim sunar.
DDoS Dayanıklılığı ve Yük Dağıtımı#
Anycast'in belki de en değerli tarafı, saf hız değil dayanıklılıktır. DNS altyapısı, DDoS saldırılarının en sevdiği hedeflerden biridir; çünkü DNS'i çökertirseniz, arka plandaki web sunucusu bal gibi ayakta olsa bile kimse alan adını IP'ye çeviremez ve site "ölmüş" gibi görünür. Unicast bir DNS sunucusu bu tür bir saldırıda tek bir darboğazdır: tüm sel, tek bir veri merkezine akar ve o hattın kapasitesi dolduğunda hizmet düşer.
Anycast'te ise durum kökten farklıdır. Saldırı trafiği de tıpkı meşru trafik gibi BGP tarafından en yakın düğüme yönlendirilir. Botnet'in Asya'daki kaynakları Singapur düğümünü, Avrupa'daki kaynakları Frankfurt düğümünü doldurmaya çalışır. Böylece devasa bir saldırı, tek bir noktaya yığılmak yerine onlarca düğüme coğrafi olarak paylaştırılır. Her düğüm yalnızca kendi bölgesinden gelen payı emmek zorunda kalır ve toplam soğurma kapasitesi, düğüm sayısıyla doğru orantılı biçimde büyür. Anycast, bu türden hacimsel saldırıların DNS ayağına karşı en etkili mimari savunmalardan biridir ve genellikle özel DDoS koruma katmanlarıyla birlikte kullanılır.
Aynı mekanizma, saldırı olmadığı normal zamanlarda da otomatik yük dağıtımı sağlar. Trafiği bölgelere göre dağıtan bir yapılandırma böyle görünür:
; Aynı IP'nin (anycast) birden çok POP'ta duyurulduğu senaryo
; Yetkili sunucular NS kayıtlarıyla tanımlanır
ornek.com. 86400 IN NS ns1.anycastdns.net.
ornek.com. 86400 IN NS ns2.anycastdns.net.
; ns1 ve ns2 anycast IP'lerdir; her biri onlarca lokasyonda canlıdır
ns1.anycastdns.net. 86400 IN A 192.0.2.53
ns2.anycastdns.net. 86400 IN A 198.51.100.53
; Uygulama katmanı da anycast olabilir
ornek.com. 300 IN A 203.0.113.10
Bir düğüm bakıma alındığında ya da beklenmedik bir arıza yaşadığında, o düğüm IP'yi duyurmayı bırakır (BGP duyurusunu geri çeker). Yönlendiriciler saniyeler içinde bu değişikliği fark eder ve o bölgeden gelen trafiği bir sonraki en yakın canlı düğüme yeniden yönlendirir. Kullanıcı bu geçişi çoğu zaman fark bile etmez; ne IP değişir ne de bir "yönlendirme" hatası alınır. Bu sessiz yük devretme, anycast'i yüksek erişilebilirlik gerektiren üretim sistemlerinin standart tercihi hâline getirir.
Anycast Nasıl Çalışır? BGP ve POP Kavramı#
Anycast'in sihri, uygulama katmanında değil ağın yönlendirme katmanında gerçekleşir. Her anycast düğümü genellikle bir POP (Point of Presence) içinde, yani bir sağlayıcının internet omurgasına bağlandığı fiziksel bir noktada bulunur. Her POP'taki yönlendirici, aynı IP bloğunu (örneğin 192.0.2.0/24) BGP ile komşu ağlara ilan eder.
BGP, "bu IP bloğuna benim üzerimden şu kadar atlamada ulaşırsınız" bilgisini internete yayar. Aynı blok birden çok POP'tan ilan edildiği için, uzaktaki bir yönlendirici bu blok için birden fazla rota görür ve kendi ölçütlerine göre en iyisini seçer. Kritik nokta şudur: bu seçim, DNS sunucusunun değil, aradaki tüm ağın işidir. Anycast'i etkinleştirmek için uygulamanızda özel bir kod yazmazsınız; işi altyapı ve yönlendirme protokolleri yapar.
Bir web sunucusunda anycast IP'nin arayüze nasıl bağlandığına dair kavramsal bir örnek şöyledir:
# Her POP'taki sunucuda aynı anycast IP loopback'e atanır
ip addr add 192.0.2.53/32 dev lo
# Yönlendirici (ör. BIRD/FRR) bu bloğu BGP ile duyurur
# /etc/bird/bird.conf (kavramsal)
protocol bgp upstream {
local as 65010;
neighbor 203.0.113.1 as 64500;
ipv4 { export where net = 192.0.2.0/24; };
}
# DNS servisi bu IP üzerinden dinler
dig @192.0.2.53 ornek.com A +short
Bir sağlık kontrolü (health check) düğümün DNS servisinin çalışıp çalışmadığını sürekli izler; servis düşerse yönlendirme yazılımı BGP duyurusunu otomatik geri çeker ve trafik başka POP'a kayar. Bu döngü, "sunucu canlıyken IP duyur, öldüğünde duyurma" ilkesine dayanır ve anycast'in kendi kendini iyileştiren yapısının kalbidir. Kendi altyapısını yönetmek isteyen ekipler bu kurulumu bir VDS sunucu veya bulut sunucu üzerinde deneyimleyebilir; ancak çoklu POP ve BGP peering gerektirdiği için üretimde genellikle bunu bir DNS/CDN sağlayıcısından hizmet olarak almak çok daha pratiktir.
Anycast DNS Ne Zaman Gereklidir?#
Her proje anycast'e ihtiyaç duymaz. Tek bir ülkeye hitap eden, ziyaretçilerinin büyük çoğunluğu tek bir bölgede toplanan küçük bir kurumsal site için, iyi bir bölgesel unicast DNS zaten yeterince hızlıdır. Anycast'in getirdiği çoklu lokasyon maliyeti ve karmaşıklığı, ancak belirli ihtiyaçlar karşılığında anlam kazanır.
Aşağıdaki durumlardan biri size uyuyorsa anycast DNS ciddi biçimde değerlendirilmelidir. Uluslararası bir kitleniz varsa ve kullanıcılarınız farklı kıtalara yayılmışsa, gecikmeyi tek elden düşürmenin en temiz yolu anycast'tir. E-ticaret, SaaS veya API gibi kesinti maliyeti yüksek servisler işletiyorsanız, DNS'in tek arıza noktası olmaktan çıkması başlı başına bir sigortadır. DDoS tehdidi altında olan ya da geçmişte saldırı yemiş bir markaysanız, anycast'in dağıtık soğurma kapasitesi vazgeçilmezdir. Son olarak, çok kısa TTL ile hızlı yük devretme yapan altyapılarda sorgu sıklığı yüksek olduğundan, her sorgudaki gecikme tasarrufu katlanarak birikir.
Bu kararı verirken pratik bir kontrol listesi işinizi kolaylaştırır:
# Anycast DNS'e geçişi tetikleyen sinyaller
kitle_dagilimi = cok_bolgeli ; tek ülke değil, birden fazla kıta
kesinti_maliyeti = yuksek ; dakikalar bile gelir kaybı demek
ddos_riski = var ; sektör/geçmiş saldırı durumu
sorgu_sikligi = yuksek ; kısa TTL, çok sayıda alt alan
sla_hedefi = %99.99+ ; yüksek erişilebilirlik taahhüdü
Bu sinyallerin çoğu sizde varsa, alan adınızı anycast bir yetkili DNS ağına taşımak en yüksek getirili altyapı iyileştirmelerinden biridir. Nameserver değişikliğinin nasıl yapıldığını ve popüler bir anycast ağının pratikte nasıl kullanıldığını Cloudflare DNS ve CDN rehberimizde adım adım anlatıyoruz; oradaki yaklaşım, kendi anycast altyapınızı sıfırdan kurmadan aynı avantajların çoğunu edinmenin en kısa yoludur.
Sıkça Sorulan Sorular#
Anycast DNS ile CDN aynı şey midir?#
Hayır, ama akraba teknolojilerdir. Anycast, aynı IP'yi birçok konumdan yayınlayan bir ağ yönlendirme tekniğidir; DNS için kullanıldığında sorguyu en yakın yetkili sunucuya çeker. CDN ise web içeriğini (görsel, video, statik dosya) kullanıcıya en yakın kenar sunucudan sunan bir dağıtım ağıdır. Modern CDN sağlayıcıları hem içeriği hem de kendi DNS altyapılarını anycast üzerine kurar, bu yüzden pratikte ikisi çoğu zaman bir arada gelir; ancak kavramsal olarak anycast bir taşıma yöntemi, CDN ise bir içerik dağıtım hizmetidir.
Anycast IP'ye ping attığımda nereye ulaşırım?#
Bulunduğunuz konuma ağsal olarak en yakın olan düğüme ulaşırsınız. Aynı ping 192.0.2.53 komutunu Türkiye'den ve Japonya'dan çalıştırırsanız, ikisi de aynı IP'ye gitmesine rağmen farklı fiziksel sunuculardan cevap alır ve gecikme süreleri belirgin biçimde farklı olur. Hangi düğüme düştüğünüzü kesin görmek için dig @192.0.2.53 hostname.bind CHAOS TXT sorgusunu kullanabilir ya da traceroute ile paketin izlediği yolu inceleyebilirsiniz.
Anycast tek başına DDoS'u tamamen durdurur mu?#
Tamamen durdurmaz ama saldırının etkisini çok büyük ölçüde azaltır. Anycast, saldırı trafiğini tek bir hedefte yığılmak yerine onlarca düğüme coğrafi olarak dağıtır; böylece her düğüm yalnızca kendi bölgesinden gelen payı soğurur ve toplam kapasite düğüm sayısıyla büyür. Yine de gerçek koruma için anycast'in yanına akıllı filtreleme, rate limiting ve bir web uygulama güvenlik duvarı gibi katmanlar eklemek gerekir. Anycast, savunmanın omurgasıdır; tek başına sihirli bir kalkan değildir.
Kendi sunucumda anycast DNS kurabilir miyim?#
Teknik olarak mümkündür ama pratikte çok yüksek eşiği vardır. Anycast'in çalışması için birden fazla farklı lokasyonda POP'unuz, her POP'ta BGP ile peering yapabilen bir yönlendiriciniz ve internete kendi IP bloğunuzu duyurabilmeniz (kendi AS numaranız veya sağlayıcı desteği) gerekir. Tek bir sunucu veya tek veri merkezi ile anycast'in dayanıklılık ve yakınlık avantajları oluşmaz. Bu nedenle çoğu ekip, altyapıyı kendi kurmak yerine hazır bir anycast DNS/CDN sağlayıcısından hizmet olarak alır; sonuç aynı, karmaşıklık ise sağlayıcıya devredilmiş olur.
Anycast DNS kullanmak alan adı kayıtlarımı değiştirir mi?#
Kayıtlarınızın içeriği (A, AAAA, MX, TXT gibi) aynı kalır; değişen tek şey, bu kayıtları hangi yetkili sunucuların sunduğudur. Anycast bir DNS ağına geçtiğinizde, alan adınızın nameserver (NS) kayıtlarını sağlayıcının anycast sunucularına yönlendirirsiniz. MX, SPF veya web IP'niz gibi değerlerin tümünü aynı şekilde tanımlamaya devam edersiniz; onları yalnızca artık dünya çapında dağıtık bir ağ yayınlar. Geçiş sırasında propagasyon süresi boyunca eski ve yeni sunucuların bir arada çalışabilmesi için kayıtları yeni sağlayıcıya taşımadan nameserver değişikliği yapmamaya dikkat edin.
Kapanış#
Anycast DNS, "aynı adres, en yakın sunucu" ilkesiyle özetlenebilecek zarif bir fikirdir: tek bir IP'yi dünyanın onlarca noktasından yayınlayarak sorguları en yakın düğüme çeker, gecikmeyi düşürür, tek arıza noktasını ortadan kaldırır ve DDoS trafiğini coğrafyaya yayarak soğurur. Unicast'in basitliği küçük, bölgesel projeler için hâlâ yeterli olsa da; uluslararası kitleye hitap eden, kesinti maliyeti yüksek veya saldırı hedefi olan her ciddi altyapı için anycast, en yüksek getirili dayanıklılık yatırımlarından biridir.
Bu avantajların çoğunu kendi BGP ve POP altyapınızı kurmadan edinmenin yolu, alan adınızı sağlam bir anycast DNS ağına taşımak ve arkasına doğru güvenlik katmanlarını eklemektir. Clou.TR'nin alan adı ve hosting hizmetleriyle sitenizi hızlı bir temele oturtabilir, DDoS koruma ve WAF çözümlerimizle saldırı yüzeyinizi daraltabilir, kendi dağıtık sunucularınızı kurmak isterseniz VDS ve sunucu yönetimi paketlerimizle yükü uzman ekibimize devredebilirsiniz. Alan adınızın çözümlemesini hızlandırıp dayanıklı hâle getirmek için doğru mimariyi birlikte kuralım.