Мне известно о балансировке нагрузки «циклического DNS», но как можно сбалансировать нагрузку на один IP-адрес?
Например, DNS-серверы Google, 8.8.8.8
и 8.8.4.4
. В статье Википедии о балансировке нагрузки говорится:
Для Интернет-служб балансировщик нагрузки обычно представляет собой программу, которая прослушивает порт, к которому внешние клиенты подключаются для доступа к службам. Балансировщик нагрузки перенаправляет запросы на один из «внутренних» серверов, который обычно отвечает на балансировщик нагрузки.
... что кажется разумным при использовании с циклическим перебором DNS, однако для подобных DNS-серверов Google это не кажется слишком избыточной или функциональной установкой.
http://en.wikipedia.org/wiki/Anycast
Anycast - это методология сетевой адресации и маршрутизации, при которой дейтаграммы от одного отправителя направляются на топологически ближайший узел в группе потенциальных получателей, хотя они могут быть отправлены на несколько узлов, все идентифицируемые одним и тем же адресом назначения.
...
Почти все корневые серверы имен Интернета реализованы как кластеры хостов с произвольной адресацией. 12 из 13 корневых серверов A-M существуют в разных местах, из них 11 - на разных континентах. (Корневой сервер H существует в двух местоположениях в США. Корневой сервер B существует в одном неуказанном месте.) 12 серверов с несколькими местоположениями используют объявления с произвольным адресом для предоставления децентрализованной услуги. Это ускорило развертывание физических (а не логических) корневых серверов за пределами США. RFC 3258 документирует использование произвольной адресации для предоставления авторитетных служб DNS. Многие коммерческие поставщики DNS перешли на среду Anycast IP, чтобы повысить производительность запросов, избыточность и реализовать балансировку нагрузки.
Балансировка нагрузки службы на одном (или нескольких) IP-адресах не имеет ничего общего с разрешением DNS. Он работает с маршрутизатором (или сервером, действующим как маршрутизатор), прослушивая порт на внешнем интерфейсе, который распространяется как отдельный сервер, например www.someplace.com, а затем перенаправляет этот трафик на внутренние серверы, балансируя их в соответствии с к правилам, определенным в его собственной настройке. Таким образом, клиент всегда подключается к маршрутизатору балансировки нагрузки, и после этого трафик распространяется только на внутренние серверы, в отличие от балансировки с циклическим перебором DNS, когда клиенты подключаются напрямую к одному из серверов, переданных ему DNS.