Если публичные IP-адреса привязаны к одной AS, как работает BGP anycast?


11

Насколько я понимаю, общедоступные IP-блоки назначаются из IANA , которая назначает субблоки для RIR , которая назначает субблоки для интернет-провайдеров, которая назначает субблоки отдельным AS, как описано в этом вопросе: Как на самом деле назначаются IP-адреса?

Это (и ресурсы, подобные этой странице ), по-видимому, подразумевает сопоставление 1 общедоступного IP-адреса с 1 AS.

Однако, похоже, что anycast работает, рекламируя один и тот же публичный IP-адрес из разных мест, обеспечивая разные пути к этому IP. Например:

Если общедоступные ips должны разрешаться в одну AS, как работает anycast?

  • Является ли это хаком, когда вы притворяетесь, что выполняете многоадресную / многопутевую передачу BGP и просто захватываете трафик при его прохождении через AS (как представляется, здесь подразумевается: /server//a/728609/148476 )?
  • Является ли это исключением из «правила» 1 IP на AS?
  • Или, может быть, я просто что-то упустил ...

2
Также не существует строгого правила для «1 AS на адрес» - просто посмотрите на 192.88.99.0/24, используемый 6to4. (Хотя это, безусловно, становится проблематичным ...)
— user1686

2
Есть ли у вас ссылка на утверждение о том, что IP-адреса назначены AS? Прошло несколько лет, но я когда-либо видел только блоки IP-адресов, назначенные организациям. (Отображения, на которые вы ссылаетесь, вероятно, просто говорят вам, что AS (ы) рекламируют определенный блок, который наблюдает за тем, что на самом деле происходит, а не присваивает.)
— David Schwartz

То, как адреса назначаются объекту, на самом деле не имеет ничего общего с тем, как маршруты к адресам объявляются в Интернете. Возможно, что каждый провайдер, входящий в Интернет, может объявить, что у него есть маршрут к определенному префиксу, и может случиться так, что каждый из них узнал маршрут к префиксу от другого провайдера. Маршрутизация - это всего лишь один маршрутизатор, сообщающий другому, что он знает, как перенаправлять трафик в сеть, и каждый интернет-маршрутизатор может на законных основаниях полагать, что он знает его. Маршрутизаторы, получающие несколько маршрутов в сеть, выберут один из этих маршрутов для использования.
— Рон

@DavidSchwartz Нету ссылки на IP для назначения AS. Прочитав некоторые из этих ответов и несколько других статей, я не думаю, что это вообще правильно, просто это подразумевается во многих ресурсах (возможно, так как это наиболее распространенный случай).
— turtlemonvh

@RonMaupin Я понимаю разделение маршрутизации и назначения блоков ip. Однако в сообщениях о маршрутах BGP имеется раздел AS_PATH, который используется для принятия решений о маршрутизации (см .: tools.ietf.org/html/rfc4271#section-4.3 ). Мой вопрос на самом деле касается поведения, когда эти объявления о маршрутах делаются из многих AS, и каждая AS говорит, что это единственная AS в пути, то есть они имеют прямой путь к IP-адресу без какой-либо дополнительной внешней маршрутизации.
— turtlemonvh

Ответы:


5

Не требуется, чтобы IP-адреса или интернет-маршруты для префикса исходили из одной AS. ASN присваиваются организациям, а адреса также присваиваются организациям. Регистраторы, такие как ARIN, не связывают мое распределение адресов с моим распределением ASN. Даже в новых системах, таких как Resource Public Key Infrastructure, она все же позволяет нескольким AS создавать маршрут к сети. Страница Team Cymru говорит об этом в часто задаваемых вопросах:

В некоторых случаях префикс сети будет объявлен несколькими, но разрозненными сетями или автономными системами. Наиболее вероятной причиной этого является то, что известно как «множественная адресация». Это совершенно нормально. В зависимости от вашего взгляда на топологию Интернета и политики исходной сети, одна из этих исходных сетей будет предпочтительным путем для отправки и получения трафика с рассматриваемым сетевым блоком.

Вот (длинный) список сетей , которые в настоящее время рекламируются из нескольких AS.

Относительно того, как он добирается до места, куда он идет: маршруты выбираются с использованием алгоритма выбора пути BGP, который выбирает путь на основе информации, которую знает каждый маршрутизатор, через который проходит трафик. Каждый маршрутизатор в Интернете имеет свое собственное представление таблицы маршрутизации, поэтому трафик в одной части Интернета может оказаться в другом месте и AS, чем трафик в другой части Интернета. Нет даже требования, чтобы каждый пакет в потоке отправлялся в одно и то же место, что, очевидно, может сделать вещи интересными в случае произвольного вещания или множественной адресации.


Спасибо dk1. Идея, что общедоступное сопоставление IP-адресов - 1: N, а не 1: 1, была ключевой для меня. Эта статья также была полезна: serverfault.com/questions/137257/… , так же как и дополнительные статьи, обсуждающие пиринг AS, например: umbrella.cisco.com/blog/blog/2013/01/10/… . Эта статья OpenDNS также показывает, что их AS распределены по всему миру.
— turtlemonvh

11

AS не обязательно должен быть ограничен одним физическим местоположением.

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

С точки зрения BGP, это не сильно отличается от того, что вы бы сделали для избыточности с несколькими ISP из AS на одном сайте; в ситуации «один сайт, несколько интернет-провайдеров» один маршрутизатор отправляет сообщение «Я AS X, и у меня диапазон IP Y!» нескольким интернет-провайдерам; в любом случае, вы просто указываете географически разрозненным маршрутизаторам, чтобы все рекламировали свои почти идентичные слова: «Я AS X, и у меня диапазон IP Y!» отправлять сообщения своим собственным интернет-провайдерам, запрашивая свой AS и диапазон anycast, и позволяя BGP выбрать лучшего интернет-провайдера для отправки трафика.

Интернет-провайдеры не знают ничего другого; Интернет не имеет смысла, что различные доступные пути не просто ведут к одному и тому же сильно избыточному сайту.


Иными словами, Интернет не знает, что он не общается с одним и тем же сервером через вашу секретную подземную оптоволоконную сеть стоимостью в несколько миллиардов долларов.
— user253751

@immibis Это хороший способ взглянуть на это, но с одной стороны: в этом случае (перенаправляя обратно на один центральный сервер через вашу собственную внутреннюю сеть) мы технически больше не подпадаем под определение anycast, так как запрос не будет на самом деле обрабатываться в географически разрозненных сайтах. В случае, который я описываю, у вас будут почти идентичные серверы на каждом сайте, а не секретная внутренняя сеть, чтобы вы могли получить правильный сервер.
— Шейн Мэдден

Это не придурок, в этом все дело. Совершенно верно иметь частную сеть между отдельными сайтами. Протоколы интернет-маршрутизации не могут отличить частную сеть от вас, и вы притворяетесь, что она есть, и вместо этого используете anycast.
— user253751

Совершенно верно иметь частную сеть между сайтами, я просто говорил, что вы не захотите на самом деле развертывать anycast таким способом (на одном сервере), поскольку это будет самоубийством. Но я согласен с вашей точкой зрения: с точки зрения интернета они будут выглядеть одинаково.
— Шейн Мэдден

Это отличный ответ. Можете ли вы добавить несколько ссылок на документы по стандартам или другие внешние ресурсы, чтобы показать, что вы сказали, что это правда? (т.е. нечеткая и множественная адресация в основном то же самый)
— turtlemonvh

2

Это (и ресурсы, подобные этой странице), по-видимому, подразумевает сопоставление 1 общедоступного IP-адреса с 1 AS.

Да. Это правда.

Тем не менее, Anycast, кажется, работает, рекламируя один и тот же публичный IP-адрес из нескольких мест,

Просто точно "просто делая это". AS - это объект, который определяет свою собственную маршрутизацию на международном уровне. Он может подключать один и тот же IP-адрес к нескольким местоположениям - если маршрутизация не изменяется в середине соединения, это нормально.

Просто будьте невежественными на мгновение (потому что здесь невежество работает).

Если вы запрашиваете IP x в США, вы отправляетесь в центр обработки данных в США в соответствии с правилами AS BGP. Если вы сделаете это в Австралии, вы окажетесь в центре обработки данных в Австралии. Законченный. Ничто не говорит о том, что IP не может быть повторно использован, так как длинный, так как маршрут стабильный.

Это не BGP-хак, а обычное использование BGP.


1
BGP не использует геополитические подразделения, чтобы решить, куда отправить пакет, и это неправда, что адреса принадлежат какой-либо одной AS.
— dk1

Вы упоминаете: «Пока маршрутизация не меняется в середине соединения, это нормально». Я думал, что такие изменения маршрутизации были известной проблемой в конфигурациях anycast, и это одна из причин, по которой anycast используется usu. зарезервировано для протоколов без установления соединения, таких как UDP? Смотрите: blog.cloudflare.com/…
— turtlemonvh
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.