Anycast

Anycast — техника раздачи одного и того же IP-адреса из множества физических точек. Роутинг BGP отправит клиента к ближайшему экземпляру (в терминах BGP-метрик). Ключевая технология CDN, публичных DNS-резолверов (1.1.1.1, 8.8.8.8) и защиты от DDoS.

Четыре модели адресации

МодельОдин-к-...Пример
UnicastОдному конкретному хостуОбычный веб-сервер
MulticastГруппе (все члены)Multicast IPTV, mDNS
BroadcastВсем в подсетиARP
AnycastОдному из группы (ближайшему)1.1.1.1, 8.8.8.8, все CDN

Как реализуется

  1. Оператор владеет IP-блоком, например 1.1.1.0/24.
  2. Ставит серверы в 300 датацентрах по миру.
  3. Из каждого анонсирует один и тот же префикс в BGP.
  4. Каждый ISP видит несколько путей к 1.1.1.0/24, выбирает лучший по BGP-метрикам (обычно короткий AS-PATH).
  5. Пользователь автоматически попадает в ближайший (в терминах BGP) сервер.

Важно: «ближайший» не значит географически. BGP-метрики — это AS-hop count, локальные preferences, MED. Иногда трафик из Владивостока идёт в Ашбёрн вместо Токио — потому что аплинки так настроены.

Какая проблема с сессионностью

TCP-сессия должна идти на один и тот же сервер. Если BGP-путь изменится посреди сессии — новый пакет пойдёт в другой anycast-node, у которого нет истории сессии → TCP RST.

На практике редко случается: BGP стабилен на порядки минут-часов. Но у больших CDN есть защита — consistent hashing внутри anycast-сети, или общий state (BGP Session Recovery, sticky-ECMP).

Где anycast работает лучше всего

Где anycast сложнее

Знаменитые anycast-адреса

IPОператорСервис
1.1.1.1CloudflareDNS
1.0.0.1CloudflareDNS
8.8.8.8 / 8.8.4.4GoogleDNS
9.9.9.9Quad9DNS с фильтрами
77.88.8.8ЯндексDNS
194.190.190.190ЯндексDNS FamilyDNS
ROOT DNS a-m.root-servers.netICANN и партнёры13 root DNS, каждый anycast из десятков мест

Как проверить что перед тобой anycast

См. также