Назад | Перейти на главную страницу

условное разрешение входящего запроса DNS

Я хочу условно разрешить DNS-запрос на основе входящего запроса.

Допустим, у меня 4 домена - www.a.com, www.b.com, www.c.com и www.d.com. На данный момент они указывают на s.com с помощью CNAME. Теперь, исходя из некоторых условий (географическое положение, время и т. Д.), Я хочу указать им на разные серверы.

Например, когда s.com получает запросы от a.com или b.com, он должен направлять его на s1.com, а в более поздних случаях - на s2.com.

Есть ли для этого хостинговое решение, где я могу определить правила или что-то в этом роде. Будет ли работать BIND в этом сценарии?

Заранее спасибо.

DNS - не лучший вариант в этом случае по многим причинам, таким как кеширование, время распространения и т. Д.

В идеале вы должны использовать что-то для управления входящим трафиком - например, Stingray Traffic Manager или F5 Traffic Manager. После этого вы сможете не только управлять трафиком в зависимости от условий, но и устанавливать перенаправления - например, 301 (так как перемещение не будет временным). У меня есть опыт работы с Zeus / StingRay, и эти продукты предлагают именно то, что вы хотите.

Я согласен с Крисом, но, придерживаясь фактического вопроса, теоретически это можно сделать с помощью BIND. Я бы просто не рекомендовал его ни для чего, кроме чрезвычайно краткосрочного решения.

Установите TTL для определенных записей равным нулю (предупреждение: некоторые кэширующие серверы, которые вы не используете, могут игнорировать это и реализовать минимальный TTL) или какое-либо другое очень маленькое число, и используйте представления, чтобы контролировать, какая версия s.com получит обслуживается на основе IP-адреса источника.

Обратите внимание, что просмотры влияют весь домен, поэтому, если вы не хотите управлять совершенно разными версиями домена, вы захотите сделать это на субдомене. (т.е. иметь раздельное представление foo.s.com, и отдельная зона s.com без разделенных просмотров)