GeoDNS, aynı alan adı için DNS sorgusundan elde edilen ağ konumu sinyallerine göre farklı DNS yanıtları seçen bir yetkili DNS politikasıdır. Örneğin bir alan adı, farklı bölgelerden yapılan sorgularda ayrı sunucu IP adreslerine karşılık gelebilir.

Konum kararı çoğunlukla kullanıcının IP adresine değil, sorguyu yetkili DNS sunucusuna ileten recursive resolver (özyinelemeli DNS çözümleyicisi) hizmetinin konumuna dayanır. Recursive resolver, ECS (EDNS Client Subnet) bilgisini gönderdiğinde istemci IP adresinin ağ bölümünü gösteren kısaltılmış değer de yanıt seçiminde kullanılabilir.

GeoDNS bir DNS kayıt türü veya URL yönlendirmesi değildir. Standart DNS kayıtları arasından uygun yanıtı seçer; istemcinin bu yanıttaki hedefe kuracağı bağlantının ağ yolunu doğrudan yönetmez.

GeoDNS Bölgesel Yanıtı Nasıl Seçer?

GeoDNS ayrı bir DNS protokolü değildir. Normal DNS sorgu akışındaki yetkili yanıt aşamasına konuma duyarlı bir seçim politikası ekler.

İstemcinin DNS Sorgusunu Göndermesi

Telefon, bilgisayar veya başka bir istemci alan adını çözmek istediğinde sorguyu yapılandırılmış DNS sunucusuna gönderir. Bu sunucu çözümlemeyi kendisi yapabilir veya sorguyu başka bir recursive resolver hizmetine iletebilir. Kullanılan recursive resolver, internet servis sağlayıcısına veya kurumsal ağa ait olabilir; genel kullanıma açık bağımsız bir hizmet de seçilebilir.

Recursive resolver, aynı sorgu için aldığı geçerli ve istemcinin ağ kapsamına uygun bir yanıtı önbelleğinde tutuyorsa yetkili sunucuya yeniden sormadan cevap verebilir. İstemci, önceden seçilmiş bölgesel yanıtı alır.

Yetkili DNS Sunucusunun Konum Sinyalini Değerlendirmesi

Önbellekte kullanılabilir yanıt yoksa çözümlemeyi üstlenen recursive resolver, DNS hiyerarşisindeki delegasyonları izleyerek alan adının yetkili DNS sunucusuna ulaşır. Sorgu başka bir recursive resolver hizmetine iletilmişse bu işlemi o hizmet yürütür. Yetkili sunucunun doğrudan gördüğü sorgu kaynağı çoğu durumda son kullanıcı değil, recursive resolver hizmetidir.

GeoDNS politikası recursive resolver hizmetinin IP adresini yapılandırılmış ülke, bölge veya ağ gruplarıyla eşleştirebilir. Eşleşen bölge için tanımlanan A, AAAA veya CNAME kayıt kümesi yanıt olarak seçilir. Hiçbir özel bölge kuralı eşleşmezse genel veya varsayılan bir kayıt kümesi kullanılabilir.

Seçilen Hedefe Bağlantı Kurulması

Recursive resolver, yetkili sunucudan aldığı yanıtı istemciye iletir. İstemci daha sonra yanıtta bulunan IP adresine veya CNAME çözümlemesinden elde edilen nihai hedefe bağlanır.

GeoDNS'in görevi bu aşamada sona erer. Trafiğin seçilen hedefe hangi internet servis sağlayıcıları ve ağlar üzerinden ulaşacağını IP yönlendirme sistemi ve o andaki ağ koşulları belirler. Bu nedenle coğrafi olarak yakın görünen bir sunucu her durumda en kısa ağ yolunu veya en düşük gecikmeyi sunmayabilir.

Recursive Resolver Konumu GeoDNS Yanıtını Nasıl Etkiler?

GeoDNS sonucunun kullanıcının beklediği bölgeyle uyuşup uyuşmaması, recursive resolver hizmetinin konumuyla yakından ilişkilidir. Yetkili sunucu yalnız recursive resolver hizmetinin IP adresine göre karar veriyorsa aynı recursive resolver hizmetini kullanan çok sayıda istemci ortak bir bölgesel yanıt alabilir.

İnternet servis sağlayıcısı recursive resolver hizmetini kullanıcıya yakın bir noktada çalıştırıyorsa bu hizmetin konumu ile kullanıcının konumu çoğu durumda benzer olabilir. Buna karşılık uzak bir genel kullanıma açık recursive resolver, merkezi bir kurumsal DNS altyapısı veya farklı ülkedeki bir ağ çıkışı kullanıcının bulunduğu yerden farklı bir bölgeye ait yanıtın seçilmesine yol açabilir.

Bu durum GeoDNS'in yanlış bir konum sinyali kullandığı anlamına gelmek zorunda değildir. Yetkili sunucu erişebildiği sinyale göre karar verir. Elindeki tek sinyal recursive resolver hizmetinin konumuysa bölgesel yanıtı da buna göre seçer.

ECS (EDNS Client Subnet) GeoDNS Kararını Nasıl Etkiler?

ECS, recursive resolver hizmetinin istemci ağına ait kısaltılmış bir IP prefix'ini yetkili DNS sunucusuna iletebilmesini sağlar. Bu prefix istemcinin tam IP adresi olmak zorunda değildir; belirli büyüklükte bir ağ bölümünü temsil eder.

Yetkili sunucu ECS seçeneğini destekliyorsa yanıtı yalnız recursive resolver hizmetinin konumuna göre değil, iletilen IP prefix'ine göre seçebilir. Böylece uzak veya merkezi bir recursive resolver hizmetini kullanan istemciler için istemci ağına daha uygun bir bölgesel yanıt seçilebilir.

ECS her sorguda bulunmaz. Recursive resolver bu bilgiyi göndermeyebilir, yetkili DNS hizmeti bilgiyi kullanmayabilir veya iletilen prefix geniş bir ağ aralığını temsil edebilir. Bu nedenle ECS, GeoDNS'in zorunlu bileşeni değil, desteklendiğinde kullanılabilen ek bir sinyaldir.

ECS, istemci ağı hakkında ek bilgi taşıdığı için yetkili DNS sunucusuna ağ konumu hakkında daha fazla veri aktarır. Recursive resolver, ECS'ye göre üretilen yanıtları farklı istemci ağlarına yanlışlıkla vermemek için önbellek kayıtlarını ağ kapsamına göre ayırmalıdır.

DNS Önbelleği ve TTL Bölgesel Yanıtları Nasıl Etkiler?

Recursive resolver hizmetleri aldıkları yanıtları, saniye cinsinden belirtilen önbellek kullanım süresi olan TTL boyunca saklayabilir. Bu mekanizma sorgu yükünü azaltır ve tekrar eden çözümlemeleri hızlandırır; ancak yetkili sunucudaki GeoDNS politikası bu nedenle her istemci sorgusunda yeniden çalışmaz.

Bir recursive resolver belirli bir bölge için seçilmiş yanıtı önbelleğe aldıysa aynı önbellek kapsamındaki sonraki istemciler TTL sona erene kadar aynı yanıtı alabilir. Alan adının bölgesel kayıtları veya seçim politikası değiştirilse bile eski yanıt, farklı recursive resolver hizmetlerinin önbellek süreleri dolana kadar görülmeye devam edebilir.

Daha kısa TTL değerleri yeni yanıtların daha erken alınmasına yardımcı olabilir fakat yetkili DNS sunucularına gönderilen sorgu sayısını artırabilir. TTL değerinin sonradan düşürülmesi, daha önce önbelleğe alınmış yanıtın kalan süresini kısaltmaz. Daha uzun TTL değerleri sorgu yükünü azaltırken bölgesel değişikliklerin görünür hale gelmesini geciktirebilir. Uygun TTL değeri, bölgesel hedeflerin ne sıklıkla değiştiğine ve DNS altyapısının kapasitesine bağlıdır.

Bazı recursive resolver hizmetleri, yenileme başarısız olduğunda süresi dolmuş yanıtları geçici olarak sunabilir. Bu özellik kullanılıyorsa eski bölgesel hedef, TTL sona erdikten sonra da görülebilir.

GeoDNS Hangi Kullanım Alanlarında Tercih Edilir?

GeoDNS, aynı hizmetin birden fazla coğrafi bölgede sunulduğu yapılarda kullanılır. Amaç genellikle istemciyi konum sinyallerine göre seçilen bölgesel sunucuya veya hizmet noktasına yöneltmek veya trafiği belirlenmiş coğrafi kümeler arasında ayırmaktır.

  • Çok bölgeli uygulamalar: Aynı alan adı, Avrupa, Asya veya başka bölgelerde çalışan ayrı uygulama kümelerine karşılık verebilir.
  • CDN altyapıları: İçerik dağıtım sistemi, uygun bölgesel hizmet noktasının seçilmesinde GeoDNS politikasından yararlanabilir.
  • Bölgesel hizmet noktaları: API, indirme veya medya hizmetleri farklı kullanıcı gruplarına ayrı IP adresleri döndürebilir.
  • Kapasite dağılımı: DNS yanıtları, önceden yapılandırılmış bölgesel sunucu kümeleri arasında trafik paylaşımına katkıda bulunabilir.

GeoDNS, bağlantı yükünü gerçek zamanlı izleyip tek başına hedef değiştiren bir trafik yöneticisi değildir. DNS yanıtı seçilip önbelleğe alındıktan sonra GeoDNS istemciyi başka bir hedefe anında geçiremez.

GeoDNS, ECS, Anycast ve CDN Arasındaki Farklar

Bu kavramlar aynı altyapıda birlikte bulunabilse de farklı görevleri yerine getirir. Temel ayrım, kararın DNS yanıtında mı, IP ağ yönlendirmesinde mi yoksa içerik dağıtım mimarisinde mi verildiğidir.

KavramÇalıştığı AlanTemel Görevi
GeoDNSYetkili DNS yanıt politikasıKonum sinyaline göre farklı DNS kaydı seçer.
ECS (EDNS Client Subnet)DNS sorgusuna eklenen ağ bilgisiİstemci ağına ait IP prefix'ini recursive resolver hizmetinden yetkili sunucuya taşıyabilir.
AnycastIP ağ yönlendirmesiAynı IP adresine yönelik trafiğin dağıtık ağ noktalarından birine ulaşmasını sağlar.
CDNİçerik ve uygulama dağıtımıİçeriği bölgesel hizmet noktalarında barındırır ve istemciye uygun noktadan sunmaya çalışır.

GeoDNS farklı bölgeler için farklı IP adresleri döndürebilir. Anycast ise aynı IP adresinin birden fazla ağ noktasından duyurulmasına dayanır. CDN daha geniş bir hizmet mimarisidir ve uç seçimi için GeoDNS, Anycast veya başka yöntemleri birlikte kullanabilir.

GeoDNS Neden Kesin Konum ve Performans Garantisi Vermez?

GeoDNS sonuçları kullanıcının kesin fiziksel konumunu göstermez. Yanıt seçimi recursive resolver hizmetinin IP adresi, varsa ECS prefix'i, IP adresiyle konum eşlemesi, önbellek durumu ve yetkili sunucudaki politika kuralları gibi dolaylı verilere bağlıdır.

  • Recursive resolver kullanıcının bulunduğu şehirden veya ülkeden farklı bir konumda çalışabilir.
  • VPN ve kurumsal ağlar DNS sorgusunun görünen çıkış noktasını değiştirebilir.
  • IP adresiyle ilişkilendirilen konum verisi güncel veya yeterince ayrıntılı olmayabilir.
  • Recursive resolver, yetkili sunucuya yeniden sormadan önce önbellekteki yanıtı kullanabilir.
  • Seçilen hedefteki yoğunluk ve trafiğin izlediği ağ yolu gerçek bağlantı performansını değiştirebilir.

GeoDNS ile HTTP Yönlendirmesi Arasındaki Fark Nedir?

GeoDNS, HTTP 301 veya 302 gibi URL yönlendirmeleriyle aynı işlem değildir. DNS yanıtı yalnız bağlantıda kullanılacak hedefin seçimini etkiler; tarayıcıdaki adresi değiştiren bir HTTP yanıtı üretmez.

Farklı GeoDNS Yanıtlarını Karşılaştırırken Nelere Bakılır?

Tek bir DNS sorgusundan alınan sonuç, kullanılan recursive resolver hizmetini, önbellek durumunu ve sorgu anındaki seçim koşullarını yansıtır. Farklı bir recursive resolver, farklı ECS davranışı veya süresi dolmamış başka bir önbellek kaydı ayrı bir sonuç üretebilir.

DNS Yayılım Kontrolü aracıyla farklı çözümleme noktalarından alınan kayıtları karşılaştırabilirsiniz. Sonuçların farklı olması, tek başına GeoDNS kullanıldığını veya kullanıcının kesin konumunu kanıtlamaz.

Karşılaştırma yaparken kullanılan recursive resolver hizmetini, sorgu zamanını, kayıt türünü, TTL değerini ve mümkünse ECS davranışını not edin. Farklı yanıtlar GeoDNS politikasından kaynaklanabileceği gibi yakın zamanda yapılan DNS değişikliği veya önbellek farkı nedeniyle de oluşabilir.