DNS kullanarak ziyaretçileri en yakın sunucuya nasıl gönderebilirim?


20

DNS girişlerini yerelleştirmenin bir yolu var mı? Yani, Asya'daki kullanıcılar alanadim.com'u ABD veya Avrupa'daki kullanıcılardan başka bir IP'ye çözüyor. Bu, kullanıcılara yakındaki sunucuyu vermekte yardımcı olacaktır. DNS, şu ana kadar kullanılan tek tekniktir, yani bunu çözmek için dns'in yerini alan bazı yazılım yönlendirme veya merkezi sistem yerleştiremiyorum.

Yanıtlar:


20

Evet, şu anda bu soruna iki popüler çözüm var.

Birincisi Anycast, aynı IP bloğunun kelimenin tam anlamıyla dünyanın birçok yerinde kullanıldığı yerde denir . Yani, alan adınız için ad sunucuları her zaman aynı IP adresini döndürür, ancak bu IP adresi aslında birden fazla fiziksel sunucu kümesine atanır.

Bununla ilgili daha fazla bilgiyi buradan edinebilirsiniz http://en.wikipedia.org/wiki/Anycast

İkinci teknik yine AnyCast'i içeriyor, ancak bu sefer yayınlanan herhangi bir IP adresi aralığı isim sunucularımıza atıfta bulunuyor. Ad sunucuları yalnızca kendilerine en yakın olan istemcilerden (BGP'nin büyüsü tarafından belirlendiği üzere) istediği için, kendileri de mantıksal olarak yerel olan IP adreslerini istemciye döndürebilirler.

Bunun bir örneği google'ın l.google.com alan adıdır

Avustralya'daki bir ev sahibinden

crimson:~ dave$ host www.google.com
www.google.com is an alias for www.l.google.com.
www.l.google.com is an alias for www-notmumbai.l.google.com.
www-notmumbai.l.google.com has address 66.249.89.99
www-notmumbai.l.google.com has address 66.249.89.147
www-notmumbai.l.google.com has address 66.249.89.103
www-notmumbai.l.google.com has address 66.249.89.104

ABD'deki bir ev sahibinden

[dave@odessa ~]$ host www.google.com
www.google.com is an alias for www.l.google.com.
www.l.google.com has address 74.125.95.99
www.l.google.com has address 74.125.95.147
www.l.google.com has address 74.125.95.104
www.l.google.com has address 74.125.95.106
www.l.google.com has address 74.125.95.105
www.l.google.com has address 74.125.95.103

Böylece, için CNAME www.google.comçözümlenir www.l.google.com, ancak bunu çözdüğünüzde, bulunduğunuz yere bağlı olarak, istemciniz farklı bir IP adresi kümesi alır. İçin istek aldı ad sunucusu Bunun nedeni www.l.google.comoldu yerel müşteriye göreli alan adı sunucusu.


5
Bu cevap teknik olarak soruyu ele alıyor, ancak bence gerçek bir sorun için gerçek bir cevap olma açısından oldukça işe yaramaz: çoğu tarafın herhangi bir yayını yok, bu nedenle cevabınız tüm bu taraflar için erişilemez.
cnst

Peki hangi tescil ettiren bu çözümü sunuyor?
dinamik

Ayrıca DNS'nin bu özelliğe sahip olduğunu belirtmek gerekir. Kayıtları o bölgedeki bir web sunucusuna işaret eden bir bölgeye DNS sunucusu yerleştirin. Diğer bölgelerde tekrarlayın. Kar.
dmourati

@dmourati: Bu, diğer DNS sunucularını yaymaz ve güncellemez mi? Her zaman DNS sunucularının, hepsi senkronize olana kadar her zaman bilgi yaydığını varsaydım.
Guru Prasad

@GuruPrasad Birden fazla ana bilgisayara (genellikle farklı coğrafi bölgelerde) aynı tek noktaya yayın IP adresi verilir ve adrese giden farklı yollar BGP aracılığıyla duyurulur. Yönlendiriciler, bunların aynı hedefe alternatif rotalar olduğunu düşünürken, aslında aynı adrese sahip farklı hedeflere giden rotalardır. Her zamanki gibi, yönlendiriciler, kullanılan mesafe ölçüsü (en az maliyet, en az sıkışık, en kısa) olan bir rota seçer. Bu kurulumda bir rota seçmek, bir hedef seçmek anlamına gelir. == wikipedia / anycast ---- ama IPv6'da bu
tanımdan

2

Yalnızca Asya, Kuzey Amerika ve Avrupa için sunucuları yerelleştirmek istiyorsanız, hem web uygulamanızı hem de DNS'inizi kendiniz çalıştırmaya karar verebilirsiniz.

DNS ile, DNS sunucunuzun entegre işlevselliği ( GeoDNS olarak adlandırabilir ) veya farklı IP adresi aralıklarını farklı çalışmalara yönlendirecek bir güvenlik duvarı aracılığıyla gerçekleştirilebilen Split-Horizon DNS yaklaşımı gibi bir şey kullanabilirsiniz. DNS sunucunuzun örnekleri (yerel makinenizde sunucunun farklı yerel IP adreslerini dinleyecek birkaç farklı kopyasını çalıştırabilirsiniz).

RIPE ve AfriNIC IP adreslerinden gelen DNS isteklerini AAvrupa'daki barındırıcınızın kaydıyla, APNIC - Asya'daki ana bilgisayardan gelen istekleri ve IP adreslerinden gelen istekleri yanıtlayarak, vakaların ≈% 90'ında beklenen sonuçları alabilirsiniz . / 8 blok ARIN , LACNIC ve / 8 adres alanının geri kalanı Atarafından Kuzey Amerika'daki sunucunuzun kaydı ile yönetilir . Bu, bazı durumlarda bazı yanlış sonuçlara yol açacaktır (Avrupa ve Kuzey Amerika arasında bazı / 8 blok paylaşılır, bazı adres alanı anycast vb.), Ancak olabilecek en kötü şey etkilenen taraf için ekstra bir gecikmedir, bu nedenle önemli değil.

(Ve evet, bunları kolaylaştırmanın bir yolu olmalı, ancak şimdiye kadar hiç yok gibi görünüyor.)


2

Aynı problemim vardı. Firmamızın Rusya ve Çin'de müşterileri var ve hepsi de servisimize çok hızlı bağlantıya ihtiyaç duyuyor. Amazon Route 53 Geo dns kullandık ve iki kayıt oluşturduk; bunlardan biri Çin'den Tokyo bölge kümemize ve Rusya'dan Londra'ya müşteriler yönlendirecek.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.