GeoDNS — функция DNS-сервисов, позволяющая отдавать разные ответы на одинаковые DNS-запросы в зависимости от IP-адреса запрашивающего клиента. Клиенту из Москвы возвращается IP московского сервера, из Нью-Йорка — американского. Это снижает задержку и балансирует нагрузку между географически распределёнными инфраструктурами.
Как работает
DNS-сервер с поддержкой GeoDNS определяет регион клиента по IP-адресу рекурсивного резолвера (не напрямую клиента — клиентский IP недоступен авторитативному серверу по умолчанию). Используется база геолокации IP: MaxMind GeoIP2, IP2Location или собственные базы. На основе региона сервер выбирает из заранее настроенных пулов ответов: для RU возвращает 91.0.0.1, для US — 104.0.0.1.
Расширение DNS EDNS0 Client Subnet (ECS, RFC 7871) позволяет передавать часть IP-адреса клиента авторитативному серверу через рекурсивный резолвер — это повышает точность геолокации. Google DNS и Cloudflare поддерживают ECS.
GeoDNS работает только на уровне DNS: когда клиент кэшировал IP, трафик идёт напрямую. Поэтому TTL для GeoDNS-записей рекомендуется устанавливать 60–300 секунд, чтобы перемещение пользователя между регионами влияло на маршрутизацию.
История
Первые реализации GeoDNS появились в конце 1990-х годов в рамках Akamai Technologies — первого крупного CDN-провайдера. Akamai использует DNS для направления клиентов к ближайшим узлам с 1998 года. Технология распространилась в 2000-х: Amazon Route 53 предложил геомаршрутизацию в 2012 году, Cloudflare — в 2014 году.
Применение
- CDN-маршрутизация — пользователи попадают на ближайший PoP CDN.
- Аварийное переключение (failover) — при падении сервера в одном регионе трафик автоматически уходит в другой.
- Распределение нагрузки — разные регионы направляются на разные пулы серверов.
- Геоблокировка — отдельным регионам возвращается другой IP или NXDOMAIN.
Связь с хостингом
GeoDNS доступен как отдельный сервис (AWS Route 53, Cloudflare, Google Cloud DNS, NS1) или через специализированных DNS-провайдеров. На стандартных хостинговых NS-серверах GeoDNS, как правило, недоступен. При развёртывании многорегиональной инфраструктуры с CDN или несколькими серверными площадками GeoDNS — обязательный компонент умной маршрутизации.
Принцип работы GeoDNS
GeoDNS анализирует IP-адрес резолвера запроса и возвращает разный ответ в зависимости от географии. Базы геолокации: MaxMind GeoIP2, DB-IP. Точность на уровне страны — 99%, региона — 85–90%. Cloudflare, AWS Route 53, Яндекс Cloud DNS поддерживают GeoDNS нативно.
Применение в хостинге
Направление пользователей на ближайший сервер для минимизации задержки. Геотаргетинг контента: российским пользователям — российский CDN-узел, европейским — европейский. Аварийный failover: при недоступности основного региона — перенаправление на резервный.
GeoDNS и SEO
При использовании GeoDNS убедитесь, что Googlebot (из нескольких регионов) видит правильный контент. Разные версии сайта для разных стран должны иметь hreflang-разметку. GeoDNS в связке с Anycast CDN — стандарт для сайтов с глобальной аудиторией.