Domain IP Lookup

Одно имя хоста — несколько записей A

1-й ответ

93.184.216.34

2-й ответ

93.184.216.35

3-й ответ

93.184.216.36

Резолвер возвращает все записи, обычно с ротацией порядка

Инфраструктура и эксплуатация

DNS round-robin: как распределить трафик между IP-адресами

4 мин чтения

DNS round-robin — простой приём, при котором DNS публикует для имени несколько адресных записей и может менять их порядок от ответа к ответу. Клиенты и резолверы видят тогда несколько возможных пунктов назначения вместо одного фиксированного IP. Его часто используют, чтобы распределять соединения между серверами или обеспечить базовую избыточность. Однако DNS не наблюдает, исправен ли каждый сервер для каждого отдельного клиента, а из-за кеширования резолверы могут продолжать использовать ответ в течение его TTL. Поэтому round-robin — это лёгкий способ распределения, а не полноценная система балансировки с учётом работоспособности и гарантированным переключением при отказе.

Что могут видеть клиенты

DNS-ответ может содержать больше одной записи A или AAAA. Рекурсивный резолвер может закешировать этот набор, а операционная система или приложение само решает, как перебирать возвращённые адреса. Одни системы используют первый адрес, другие переупорядочивают или пытаются установить несколько соединений, а современные браузерные стеки могут «гонять» семейства адресов по собственным стратегиям соединения. По одному только порядку адресов в DNS-ответе нельзя определить, какой сервер в итоге обработал запрос пользователя. Повторная проверка может показывать разный порядок или разные подмножества, но это поведение зависит от авторитативного провайдера и резолвера.

СвойствоDNS round-robin
Входные данныеЗаписи A или AAAA с несколькими адресами
Учёт работоспособностиНе свойственен обычной ротации DNS
Влияние кешаСтарые наборы ответов могут сохраняться до истечения TTL
Лучше всего подходитПростое распределение, когда все конечные точки остаются работоспособными
ОграничениеЭто не решение для каждого запроса и не гарантия мгновенного переключения

Важное следствие: вышедший из строя сервер может оставаться в кешированных ответах, пока не истечёт соответствующий TTL или резолвер не обновит данные. Уменьшение TTL перед плановой миграцией может сократить ожидаемое окно кеширования, но не отменяет ответ, уже закешированный со старым TTL. У клиента тоже может быть собственный кеш или повторное использование соединений. Поэтому DNS round-robin не должен быть единственной защитой от отказа сервера, если сервису требуется быстрое и надёжное переключение на основе состояния.

Чем он отличается от балансировщика нагрузки

Специализированный балансировщик нагрузки может принимать решения на уровне соединения или приложения, выполнять проверки работоспособности и направлять трафик только на конечные точки, соответствующие заданным критериям. DNS-провайдер тоже может предлагать проверки работоспособности и динамические ответы, но эти возможности зависят от провайдера и всё равно взаимодействуют с рекурсивными кешами. Базовый набор записей round-robin просто предоставляет варианты, у него нет собственной обратной связи. Эти решения можно сочетать: например, DNS направляет пользователей на региональный балансировщик, а тот выбирает исправный бэкенд. Выбирайте тот уровень, который способен заметить нужный вам вид отказа.

  • Следите, чтобы каждый адрес в наборе round-robin мог обслуживать это имя хоста.
  • Мониторьте каждую конечную точку независимо: ротация DNS не является проверкой работоспособности.
  • Разберитесь в TTL и клиентском кешировании, прежде чем планировать переключение.
  • Используйте балансировщик с учётом работоспособности, когда нужно быстро исключать конечные точки.
  • Сравнивайте повторные ответы от именованных резолверов и фиксируйте время каждого запроса.

Как разбираться с несколькими ответами

Если домен разрешается в несколько IP-адресов, сначала выясните, задумано ли это. Проверьте авторитативную зону или панель провайдера, чтобы увидеть полный набор записей, затем сравните рекурсивные ответы. Определите, принадлежат ли адреса ожидаемой хостинговой инфраструктуре, CDN или балансировщику, по документации провайдера, а не только по обратному запросу. Если вы администрируете конечные точки, проверьте каждую через предполагаемое имя хоста и конфигурацию TLS. Прямой запрос на IP может дать другой результат, потому что виртуальный хостинг зависит от имени хоста, поэтому не считайте проверку по голому IP идеальной заменой обычного трафика.

DNS round-robin легко настроить, но эта операционная простота может скрывать важные допущения о длительности кеширования и состоянии конечных точек. Для более широкого контекста прочитайте, почему у доменов несколько IP и как CDN используют DNS. Проверка IP домена может показать актуальный публичный набор ответов; дополните это наблюдение мониторингом и проверками, специфичными для сервиса, чтобы понять, работает ли распределение так, как задумано.

Сохраняйте единообразие пула для всех точек назначения

Прежде чем добавлять в набор round-robin несколько адресов, убедитесь, что каждая конечная точка может безопасно обслуживать то же имя хоста и ту же версию приложения. Проверьте покрытие сертификатом, работоспособность, согласованность данных и любые допущения о состоянии сессий. Если пользователи могут попасть на любой адрес, сервер с неполным контентом или другой конфигурацией входа способен вызывать перемежающиеся сбои, которые выглядят случайными. Мониторьте каждый адрес с правильным заголовком host и именем TLS и сравнивайте ошибки приложения, а не полагайтесь только на ping. Когда удаляете неисправную точку назначения, учитывайте закешированные DNS-ответы и уже открытые соединения. DNS может перестать объявлять адрес для новых запросов, но не способен мгновенно разорвать существующую сессию или закешированное соединение каждого клиента.

Нужно проверить публичные DNS-адреса домена? Воспользуйтесь инструментом Domain IP Lookup.

Читайте также

Одно имя хоста — несколько записей A

1-й ответ

93.184.216.34

2-й ответ

93.184.216.35

3-й ответ

93.184.216.36

Резолвер возвращает все записи, обычно с ротацией порядка

Инфраструктура и эксплуатация

DNS-балансировка нагрузки: методы, плюсы и ограничения

Сравниваем DNS-распределение трафика с прикладными балансировщиками: как TTL, проверки работоспособности и региональные ответы влияют на доступность.

4 мин чтения

Почему проверка показывает CDN, а не исходный сервер

Посетитель

запрашивает домен

Edge-сервер CDN

104.21.x.x

именно его возвращает DNS

Исходный сервер

реальный IP не раскрывается

Инфраструктура и эксплуатация

Что такое исходный сервер и чем он отличается от CDN

Что делает исходный сервер за CDN или обратным прокси, почему публичный DNS может показывать адрес пограничной точки и как безопасно диагностировать сбои.

4 мин чтения

Почему проверка показывает CDN, а не исходный сервер

Посетитель

запрашивает домен

Edge-сервер CDN

104.21.x.x

именно его возвращает DNS

Исходный сервер

реальный IP не раскрывается

Инфраструктура и эксплуатация

Что такое обратный прокси: практическое руководство по DNS и вебу

Как обратный прокси располагается между клиентами и серверами, как DNS направляет пользователей к нему и как он поддерживает маршрутизацию, TLS и безопасность.

4 мин чтения