Основанный на описании Anycast в Википедии , он включает в себя как распределение сопоставления доменных имен по многим IP-адресам по многим DNS-серверам, так и ответы клиентов с наиболее географически близким (или самым быстрым) сервером.
В контексте глобально распределенного, высокодоступного сайта, такого как google.com (или любого сервиса CDN с множеством глобальных периферийных местоположений), это звучит как две ключевые функции, которые могут понадобиться.
Службы DNS, такие как Amazon Route53, EasyDNS и DNSMadeEasy, все объявляют себя сетями с поддержкой Anycast.
Поэтому я предполагаю, что каждая из этих служб DNS прозрачно предлагает мне эти две убойные функции: сопоставление нескольких IP-адресов в домен И маршрутизация клиентов к ближайшему узлу.
Однако каждая из этих служб, кажется, разделяет эти две функции, ссылаясь на 2-ю (маршрутизацию клиентов к ближайшему узлу) как «GeoDNS», «GeoIP» или «Global Traffic Director» и взимает дополнительную плату за услугу.
Если основной клиент системы, поддерживающей Anycast, уже должен это делать, почему эта функциональность выделяется в качестве этой дополнительной функции? Что это за функция «GeoDNS», которую не выполняет стандартная служба Anycast DNS (в соответствии с определением Anycast из Википедии - я понимаю, что рекламируется, только не то, почему это уже не подразумевается).
Я очень растерялся, когда служба DNS, такая как Route53, которая не поддерживает эту туманную функцию «GeoDNS», перечисляет такие функции, как:
Быстрый - Используя глобальную сеть anycast DNS-серверов по всему миру, Route 53 предназначен для автоматической маршрутизации ваших пользователей в оптимальное местоположение в зависимости от условий сети. В результате служба предлагает низкую задержку запросов для ваших конечных пользователей, а также низкую задержку обновления для ваших нужд управления записями DNS.
... это звучит точно так же, как GeoDNS, но географически ориентированные клиенты - это то, что они пока явно не поддерживают .
В конечном итоге я ищу две следующие функции от поставщика DNS:
- Сопоставить несколько IP-адресов с одним доменным именем (как это делают google.com, amazon.com и т. Д.)
- Используйте службу DNS, которая будет отвечать на запросы клиентов для этого домена с IP-адресом ближайшего к запрашиваемому серверу сервера.
Как уже упоминалось, кажется, что это все часть службы DNS Anycast (все эти службы есть), но функции и маркетинг, которые я вижу по ним, указывают на обратное, заставляя меня думать, что мне нужно больше узнать о том, как DNS работает до выбора развертывания.
Заранее спасибо за любые разъяснения.
Любой аспект BGP позволяет клиентам отправлять запрос на заданный DNS-сервер и получать этот запрос на ближайший экземпляр DNS-сервера с помощью таблицы маршрутизации BGP, надеясь получить быстрый ответ.
Однако обычный старый DNS-сервер, который географически распределен и anycasted, не может по-разному отвечать на запросы в зависимости от местоположения запрашивающего клиента - это дополнительная функция, которую эти службы «Geo-DNS» предоставляют за дополнительную плату, что позволяет отправлять клиентов на экземпляр службы, которая им близка.
Причиной существования этой функции является то, что BGP anycast прекрасно работает для чего-то без сохранения состояния, такого как DNS, где оно быстрое и грязное и не требует подключения или сохранения сеанса, но для чего-то вроде веб-сервера вы хотите прикрепить экземпляры по всему миру. и убедитесь, что данный клиент будет придерживаться определенного экземпляра - изменения маршрутизации в промежуточном соединении глобальной таблицы BGP будут разрывать соединения TCP, прерывать сеансы веб-приложений и, как правило, приводить к хаосу; По этой причине anycast обычно не используется для веб-серверов.
Лучше предоставить пользователю в округе X IP-адрес для экземпляра в стране X через DNS, и именно на это вы потратите деньги с помощью службы Geo-DNS.
источник
Традиционно у вас будет несколько DNS-серверов. Клиент выберет один случайным образом и запросит IP-адрес вашего веб-сервера. Это хорошо, если DNS-сервер находится близко к клиенту, но плохо, если, как это часто бывает, DNS-сервер находится далеко от клиента. В любом случае, клиент получит тот же IP-адрес, что и ответ.
Anycast позволяет нескольким серверам отвечать на один и тот же IP-адрес. В anycast DNS, когда клиент пытается связаться с вашим сервером имен, отвечает самый близкий / самый быстрый сервер имен. Это означает, что клиент всегда получает быстрый ответ на свой DNS-запрос. Однако он все равно всегда будет получать один и тот же ответ на свой DNS-запрос - IP-адрес вашего сервера. Если ваш сервер находится далеко от клиента, взаимодействие с клиентом может быть неоптимальным.
GeoDNS позволяет DNS-серверу отвечать другим IP-адресом, в зависимости от того, где находится клиент. (Очевидно, что для этого требуется, чтобы у вас было несколько географически распределенных серверов.) GeoDNS не подразумевает произвольную рассылку, хотя обычно вы развертываете оба, так что в итоге клиент получает ответ на свой DNS-запрос от расположенного поблизости географического DNS-сервера, который затем отвечает с помощью IP-адрес географически расположенного поблизости веб-сервера.
источник