Jump to content
Калькуляторы

Два BGP аплинка на два border'a резервирование по отказоустойчивости

Есть ли практики реализации такой схемы резервирования BGP сессий на двух бордерах, которая позволит при падении одного из бордеров установить BGP сессию с аплинком на другом?

 

До failover'a

UP1  UP2
|     | <- EBGP
|     |
BR1--BR2

и после него

UP1  UP2
  \   | <- EBGP
    \ |
BR1  BR2

 

Или я странного хочу?

 

PS Поиск по форуму просветления не дал...

 

Share this post


Link to post
Share on other sites
Есть ли практики реализации такой схемы резервирования BGP сессий на двух бордерах, которая позволит при падении одного из бордеров установить BGP сессию с аплинком на другом?

 

До failover'a

UP1  UP2
|     | <- EBGP
|     |
BR1--BR2

и после него

UP1  UP2
  \   | <- EBGP
    \ |
BR1  BR2

 

Или я странного хочу?

 

PS Поиск по форуму просветления не дал...

 

Ну если только в рамках того, что вы озвучили, то advertise map и BGP сессия между бордерами, imho...

Share this post


Link to post
Share on other sites
Ну если только в рамках того, что вы озвучили, то advertise map и BGP сессия между бордерами, imho...
Больше похоже на vvrp или carp

 

Share this post


Link to post
Share on other sites

Кто мешает поднять по две сессии с каждого бордера?

Share this post


Link to post
Share on other sites
VVRP.

я тоже подозревал что это мог бы быть vrrp в сторону аплинков

 

а что можно сделать в сторону своей автономки ?

если, допустим на каждый бордер будет приходить несколько сотен ВЛАНов ?

или ставить между бордерами и сетью один роутер (L3 switch) ?

Не очень хотелось бы создавать такое узкое место.

Share this post


Link to post
Share on other sites

Можно по 2 сессии с каждого бордера. На внутреннюю сеть carp-интефейс, если мы про FreeBSD.

L3 нужен, если в вашей сети много внутреннего межсегментного трафика.

Share this post


Link to post
Share on other sites

Ети две сессии будут одновременно работать на каждом из бордеров и балансировать нагрузку?

Share this post


Link to post
Share on other sites

у нас два бордера, два браса, два аплинка.

с каждого бордера до каждого аплинка поднята BGP сессия (/29-я сеть на стыке), с добавленым препендом на резервном бордере

между бордерами и брасами OSPF.

ну и уменьшены тайминги на определение потеряной связаности в BGP и в OSPF

 

так сказать горячий резерв.

Share this post


Link to post
Share on other sites

А реально ли сделать load balancing & failover на BGP бордерах?

Share this post


Link to post
Share on other sites

От аплинков fullview ?

А между бордерами что, IBGP ?

 

у нас два бордера, два браса, два аплинка.

с каждого бордера до каждого аплинка поднята BGP сессия (/29-я сеть на стыке), с добавленым препендом на резервном бордере

между бордерами и брасами OSPF.

ну и уменьшены тайминги на определение потеряной связаности в BGP и в OSPF

 

так сказать горячий резерв.

Share this post


Link to post
Share on other sites

Идея с /29 вполне элегантна.

 

А дальше всё просто. Делаете оспф от брас1 до асбр1 с меньшим весом, а от брас2 до асбр2.

на асбр1 прописываете препенды на сети брас2, а на асбр2 препенды на брас1.

 

В итоге исходящий трафик у вас рулится автоматом по двум сессиям.

Входящий трафик к вам рулится препендами.

 

Трафик на брас1 ходит через асбр1, на брас2 через асбр2.

 

Препенды можно заменить на MED.

Share this post


Link to post
Share on other sites

Как сделать со стороны аплинков - это не проблема. Вот как быть со стороны локалки? У самого два роутера под FreeBSD, с локалки приходит несколько сотен вланов с /30 маской. Т.е. CARP уже никак не прикрутишь. Плюс адреса в локалке белые - значит подсети делать /29 ради CARP неоправданно. Была такая идея - один роутер в режиме ожидания пингует основной. Если основной не отвечает - поднимает все интерфейсы для локалки. Главный роутер возвращается - все локальные интерфейсы в даун. Даже скрипт на шеле написал, но в дело так и не ввел.

Share this post


Link to post
Share on other sites

  up1                 up2

    |                        |

bgp1   ----------  bgp2

\                           /

   \                    /

       \             /

       L2switch

 

Пытаюсь реализовать такую схему. 

Даны два разных аплинка, от которых беру fullview, bgp1 и bgp2 - попытка разделить нагрузку от абонентов на два бордера, каждый из которых анонсирует одинаково аплинкам мою asXXXX и несколько абонетских /22 сетей. между бордерами поднят линк с ibgp сессией.

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

Если все настраиваю и поднимаю сессию ibgp сессию между бордерами, они обмениваются полученными от аплинков маршрутами и вроде бы все должно прекрасно работать. Но вот интернет то у абонентов отваливается!(((

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

В общем вот. 

Наверняка многие делали подобную схему и может быть подскажут как сконфигурировать quagga правильно???

 

 

Share this post


Link to post
Share on other sites

Возможно, не делаете redistribute static, ospf в bgp.

Share this post


Link to post
Share on other sites
1 hour ago, dignity said:

Возможно, не делаете redistribute static, ospf в bgp.

ospf не использую. Надо будет посмотреть. На самом деле мало опыта в настройке bgp, поэтому в настройке quagga что-то сильно упущено

Share this post


Link to post
Share on other sites

Конфиги серверов симметричные, вот конфиг первого бордера bgp1:

 

Spoiler



! Zebra configuration saved from vty

!
hostname gw1
password 12345
enable password 12345
log file /var/log/quagga/bgpd.log
!
router bgp 12345
 bgp router-id 1.2.3.1
 bgp log-neighbor-changes
 network a.b.c.0/22
 network d.e.f.0/22
 neighbor x.x.x.x remote-as XXXX
 neighbor x.x.x.x description UP1
 neighbor x.x.x.x update-source x.x.x.y

neighbor x.x.x.x next-hop-self
 neighbor x.x.x.x soft-reconfiguration inbound
 neighbor x.x.x.x route-map UP1-IN in
 neighbor x.x.x.x route-map UP1-OUT out
 neighbor a.a.a.a remote-as 12345
 neighbor a.a.a.a description iBGP_to_GW2
 neighbor a.a.a.a next-hop-self
 neighbor a.a.a.a soft-reconfiguration inbound
!
ip prefix-list MYNET seq 5 permit a.b.c.0/22
ip prefix-list MYNET seq 10 permit d.e.f.0/22
ip prefix-list bogons description bogus nets
ip prefix-list bogons seq 15 permit 0.0.0.0/8 le 32
ip prefix-list bogons seq 20 permit 127.0.0.0/8 le 32
ip prefix-list bogons seq 25 permit 192.0.2.0/24 le 32
ip prefix-list bogons seq 30 permit 10.0.0.0/8 le 32
ip prefix-list bogons seq 35 permit 172.16.0.0/12 le 32
ip prefix-list bogons seq 40 permit 192.168.0.0/16 le 32
ip prefix-list bogons seq 45 permit 169.254.0.0/16 le 32
ip prefix-list bogons seq 50 permit 192.42.172.0/24 le 32
ip prefix-list bogons seq 55 permit 198.18.0.0/15 le 32
ip prefix-list bogons seq 60 permit 192.88.99.0/24 le 32
ip prefix-list bogons seq 65 permit 224.0.0.0/4 le 32
ip prefix-list bogons seq 70 permit 240.0.0.0/4 le 32
!
ip as-path access-list 1 permit _6451[2-9]_
ip as-path access-list 1 permit _645[2-9][0-9]_
ip as-path access-list 1 permit _64[6-9][0-9][0-9]_
ip as-path access-list 1 permit _65[0-9][0-9][0-9]_
!
route-map UP1-IN deny 100
 description -- filter private ASs
 match as-path 1
!
route-map UP1-IN deny 110
 description -- -- filter bogons
 match ip address prefix-list bogons
!
route-map UP1-IN permit 200

set local-preference 100
!
route-map UP1-OUT permit 20

match ip address prefix-list MYNET
!
route-map iBGP-IN deny 100
 description -- filter private ASs
 match as-path 1
!
route-map iBGP-IN deny 110
 description -- -- filter bogons
 match ip address prefix-list bogons
!
route-map iBGP-IN permit 200
 set local-preference 100
!
route-map iBGP-OUT permit 20
 match ip address prefix-list MYNET
!
line vty

 


 

 

 

Edited by ikoctya

Share this post


Link to post
Share on other sites

Я такую схему с двумя Cisco 1002x рассмотрел бы в реальной работе 

Share this post


Link to post
Share on other sites
14 часов назад, Odissey сказал:

ему с двумя Cisco 1002x рассмотрел бы в

Синтаксис не особо отличается! Для расширения для меня это идеальный вариант

Share this post


Link to post
Share on other sites

Так то некую схему я вижу и даже тестовую площадку собирал, только туда ещё dpi надо воткнуть на второй узел, чтобы он смог работать независимо в случае аварии

Share this post


Link to post
Share on other sites
Только что, Odissey сказал:

Так то некую схему я вижу и даже тестовую площадку собирал, только туда ещё dpi надо воткнуть на второй узел, чтобы он смог работать независимо в случае аварии

Как шёл траффик на тестовой площадке, всмысле все ОК? Может быть поделишься конфигом

Share this post


Link to post
Share on other sites

Подключал к центральному узлу на живую, поэтому кроме ibgp между роутерами и списком vlan не пускал клиентов с одного на другой. На столе 7609 долго не простоял как тестовый и убрал на склад до лучших времён. Так что рабочей схемы и с dpi на обоих не запускал

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now