BGP-путь, предварительно добавленный маршрут, не указан
У нас есть простая многосетевая установка с двумя маршрутизаторами, которые рекламируют нашу AS двум провайдерам. Второй провайдер (ISP B) используется только для резервного копирования, когда провайдер A выходит из строя, поэтому мы добавили нашу AS 3 раза на этом маршруте.
Примечание: это пример ASN, а не настоящие.
Этим утром я провожу пару часов в поисках роутеров по всему интернету, и ни один из них не перечисляет наш резервный маршрут с указанным заранее. Я проверил южноафриканский интернет-обмен, лондонский интернет-обмен, интернет-обмен Орегона и пару дюжин интернет-провайдеров. Все они имеют несколько маршрутов через ISP A, часто с 3 или 4 прыжками. Маршрут через ISP B должен, по крайней мере, появляться где-то и иметь 5 или 6 прыжков. Но я нигде не мог его найти. (Я проверил полные таблицы BGP на маршрутизаторах с зеркалом, используя show ip bgp 65000
)
Мои вопросы:
- Существует ли ограничение на размер маршрута, после которого большинство маршрутизаторов просто отбрасывают маршрут?
- Будет ли работать даже наш резервный маршрут, когда провайдер A не работает, если об этом не знает ни один маршрутизатор?
Наши два маршрутизатора подключены по iBGP. Возможно ли, что маршрут через ISPB не объявляется, потому что сеанс iBGP предпочитает маршрут через ISPA? Это то, что должны делать non-существующие-map и advertise-map, но ни один из них не используется ни в одном из маршрутизаторов.
1 ответ
1.) Заданному маршрутизатору, говорящему по протоколу BGP, присваивается один и тот же префикс от нескольких пиров, после чего он будет распространяться только по лучшим из этих путей (согласно правилам выбора пути BGP). В вашем случае это означает, что если какой-то удаленный маршрутизатор видит как простой, так и предварительно подготовленный маршрут, он будет проходить только по обычному маршруту со своими соседями. Объявивший маршрутизатор будет иметь оба пути в "sh ip bgp abcd", но его соседи не будут.
1a.) Тот факт, что вы не видите предварительно созданный маршрут, не означает, что резервное копирование не будет работать. Маршрутизатор, у которого в таблице есть как предварительно добавленный, так и непредставленный маршрут, обычно будет объявлять только непредставленный маршрут, но если неподготовленный маршрут отменяется / время ожидания истекает, тогда предложенный маршрут будет немедленно предложен.
Попробуйте эту команду на вашем резервном маршрутизаторе: sh ip bgp neighbors x.y.z.q advertised-routes
чтобы точно увидеть, что отправляется вашему провайдеру.
2.) Трудно сказать, какой эффект будет иметь пиринг iBGP, не зная, как вы создаете (и обрабатываете) свой префикс. Есть ли причина, по которой вам нужен одноранговый узел iBGP между этими маршрутизаторами?
3.) advertise-map
Команда заставит объявить определенный префикс на основании наличия другого префикса. Примером может быть объявление 10.128.0.0/16 всякий раз, когда присутствует 10.0.0.0/8. Так же, non-exist-map
будет рекламировать определенный префикс, когда другой префикс отсутствует. Ни один из них не должен требоваться для базовой настройки множественной адресации.
В конечном итоге лучшим тестом будет время, чтобы отключить ваш основной маршрут, чтобы подтвердить, что резервная копия будет принимать трафик.
Да, и кстати, вы рекламируете действительно пространство PI или этот префикс является частью одного из агрегатов провайдера? Самый длинный матч превосходит все остальное.