Назад | Перейти на главную страницу

Вопрос Cisco BGP о рекламных маршрутах

У меня есть следующая конфигурация, и я прекрасно понимаю, что происходит со всем, кроме маршрутов, которые я рекламирую. Другими словами, у меня есть вопрос о ВХОДЯЩЕМ трафике. Я «хочу», чтобы весь трафик направлялся ко мне через Qwest (AS209) и переключался на Sprint (AS1239) ТОЛЬКО в случае отказа Qwest.

«Разрешение ^ $» позволяет мне рекламировать маршруты, исходящие из моей AS. Так что же это за маршрут? Как я могу сказать миру, чтобы он направил меня через Qwest?

Вот мой конфиг ... СПАСИБО!

router bgp 00000
 network 65.170.190.0 mask 255.255.255.0
 neighbor 160.81.69.97 remote-as 1239    !This is Sprint
 neighbor 160.81.69.97 filter-list 3 in  
 neighbor 160.81.69.97 filter-list 4 out
 neighbor 65.118.70.1 remote-as 209   !This is Qwest
 neighbor 65.118.70.1 filter-list 3 in
 neighbor 65.118.70.1 filter-list 4 out 

ip as-path access-list 3 deny .*
ip as-path access-list 4 permit ^$
ip as-path access-list 4 deny .*

ip route 0.0.0.0 0.0.0.0 FastEthernet3/0 !This sets Qwest as default
ip route 0.0.0.0 0.0.0.0 Serial0/0 10   !This sets Sprint as a backup only

Я не уверен, что понимаю весь ваш вопрос, но сделаю несколько заметок о нескольких вещах:

1) Вы запрещаете все входящие маршруты от вашего интернет-провайдера и вручную устанавливаете значение по умолчанию. Это очень плохо. Что произойдет, если что-то в восходящей сети Qwest (ваш основной маршрут) станет недоступным? Вы никогда не переключаетесь на Sprint, если FA3 / 0 физически не выйдет из строя. Существует множество сценариев сбоя, при которых вы хотите переключить трафик на Sprint, которые не связаны с отключением FA3 / 0. Способен ли ваш маршрутизатор обрабатывать полную таблицу BGP в Интернете? Если нет, вы можете запросить, чтобы поставщики просто создавали маршруты по умолчанию к вам, что намного лучше, чем плавающие статические данные, которые вы в настоящее время используете - тогда вы можете назначить локальные предпочтения в BGP, чтобы предпочесть исходящий Qwest, пока ваш маршрутизатор все еще получает маршрут по умолчанию (или полная таблица). Не идеально, но по большей части неплохо.

2) Маршрут, который начинается в вашей собственной AS, частично определяется вашим сетевым оператором - вы рекламируете 65.170.190.0/24. Если есть другие маршруты, изученные iBGP, вы также анонсируете их - однако, исходя из вашей конфигурации, я предполагаю, что это ваш единственный маршрутизатор iBGP.

3) Вы рекламируете свой маршрут 65.170.190.0/24 с одинаковой стоимостью для Sprint и Qwest. Вы можете добавить свой собственный ASN несколько раз к Sprint, чтобы сделать его менее предпочтительным; хотя сложно точно контролировать, что происходит глубже в Интернете и в пиринговых отношениях между Sprint и Qwest. Я предполагаю, что корень вопроса в следующем - Зачем вы хотите, чтобы весь ваш входящий трафик шел через Qwest? Я предполагаю, основываясь на вашей конфигурации, что у вас более высокая пропускная способность для Qwest. В этом случае я думаю, что вы разумно добавить свой собственный ASN несколько раз в ссылку на Sprint, что должно работать по большей части.

Я «хочу», чтобы весь трафик направлялся ко мне через Qwest (AS209) и переключался на Sprint (AS1239) ТОЛЬКО в случае отказа Qwest.

Это плохая идея. Не все провайдеры поддерживают все маршруты (довольно тонко, но все же).

Классическое решение - сохранить рекламу по обоим восходящим каналам, но несколько раз добавить собственный asn по наименее желаемому восходящему каналу. Это приведет к очень длинным путям, и почти весь трафик будет выбирать желаемый восходящий канал. Iirc renesys предложил 3 раза.

Кроме того, вы можете (или не можете) захотеть привлечь прямую сеть спринта через спринт.

Не уверен в вашей конфигурации tbh. Первый вопрос, Qwest и Sprint объявляют вам маршрут по умолчанию? Если нет, просто попросите их сделать это. Наличие статических маршрутов по умолчанию - беспорядок при запуске BGP, вам нужно настроить трекеры IP SLA на «основном» маршруте по умолчанию и добавить второй маршрут по умолчанию с более высокой метрикой, чтобы он использовался только при выходе из строя трекера SLA.

Если вы добавите remote-as пару раз к наименее предпочтительному интернет-провайдеру, его маршруты будут использоваться только в случае отказа «основного». Кроме того, если вы принимаете маршрут по умолчанию и хотите только одного провайдера, если он не отключен, нет особого смысла брать больше, чем маршрут по умолчанию.

router bgp 65010
 no synchronization
 bgp router-id 1.1.1.1
 bgp log-neighbor-changes
 bgp maxas-limit 40
 neighbor 67.x.x.77 remote-as 710
 neighbor 67.x.x.77 route-map ISP1-ACCEPT-AS-ONLY in
 neighbor 67.x.x.77 route-map ISP1-TO-INTERNET out
 neighbor 61.x.x.71 remote-as 720
 neighbor 61.x.x.71 route-map ISP2-ACCEPT-AS-ONLY in
 neighbor 61.x.x.71 route-map ISP2-TO-INTERNET out
 no auto-summary
!
! Accesslist with the networks you want to advertise to upstream.
!
ip access-list standard ROUTES-TO-INTERNET
 permit 25.25.0.0 0.0.255.255
!
ip as-path access-list 80 permit ^710$
ip as-path access-list 90 permit ^720$
!
route-map ISP1-AS-ONLY permit 10
 match as-path 80
 set as-path prepend 710 710
!
route-map ISP2-AS-ONLY permit 10
 match as-path 90
!
route-map ISP1-TO-INTERNET permit 10
 match ip address ROUTES-TO-INTERNET
 set as-path prepend 65010 65010
!
route-map ISP2-TO-INTERNET permit 10
 match ip address ROUTES-TO-INTERNET
!

В некотором смысле это противоречит принципам BGP. Если у вас достаточно ЦП и памяти маршрутизатора, использование полных маршрутов даст вам лучшую производительность.