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

Квага не пишет маршруты...

Прошу сразу не пинать, с квагой и BGP только начал знакомится.

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

Но поскольку через резервного прова все-таки есть более короткие маршруты, есть они и в таблице машрутизации:

root@xxx:/etc/quagga# ip r |grep 'eth0.719' |wc -l
3712

А основной траф идет через другого:

root@xxx:/etc/quagga# ip r |grep 'eth1.720' |wc -l
313879

Понадобилось через 2 прова подключить канал на MSK-IX. BGP сессию прописали, анонсы с MSK-IX приняли.

Смотрим роуты:

xxx# sh ip bgp neighbors 77.94.166.5 routes
BGP table version is 0, local router ID is 10.0.0.11
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
             r RIB-failure, S Stale, R Removed
Origin codes: i - IGP, e - EGP, ? - incomplete

  Network          Next Hop            Metric LocPrf Weight Path
*> 62.16.32.0/19    77.94.166.5                            0 28809 12389 41938 15640 i
*> 62.16.64.0/19    77.94.166.5                            0 28809 25308 2820 i
*> 62.16.72.0/24    77.94.166.5                            0 28809 8744 2820 2820 2820 2820 2820 2820 i
*> 62.21.0.0/17     77.94.166.5                            0 28809 3327 24724 13110 13110 i
*  62.29.128.0/17   77.94.166.5                            0 28809 3327 8938 8938 i
*  62.32.64.0/20    77.94.166.5                            0 28809 44436 i

Видим best маршруты, помеченые > - я так понимаю, они и должны писатся в таблицу маршрутизации через 77.94.166.5?

Однако таких маршрутов там нет...

root@xxx:/etc/quagga# ip r |grep '77.94.166.5' |wc -l
0

 

Кто виноват, и что делать?

Share this post


Link to post
Share on other sites

LocalPref поднять на этого пира?

Share this post


Link to post
Share on other sites

xxx# sh ip bgp 62.16.32.0
BGP routing table entry for 62.16.32.0/19
Paths: (3 available, best #3, table Default-IP-Routing-Table)
  Not advertised to any peer
  47923 47923 47923 29226 12389 41938 15640
    83.69.196.9 from 83.69.196.9 (217.67.176.58)
      Origin IGP, localpref 100, valid, external
      Community: 0:44237 8342:1001
      Last update: Tue Apr 27 14:21:43 2010

  28809 12389 41938 15640
    77.94.166.189 from 77.94.166.189 (81.26.144.2)
      Origin IGP, localpref 100, valid, external
      Community: 28809:3 28809:8631
      Last update: Tue Apr 27 14:21:19 2010

  28809 12389 41938 15640
    77.94.166.5 from 77.94.166.5 (81.26.144.2)
      Origin IGP, localpref 100, valid, external, best
      Community: 28809:3 28809:8631
      Last update: Tue Apr 27 14:21:16 2010

 

LocalPref то на них одинаковый, зачем его поднимать?

И на 77.94.166.5 аттрибут стоит best, а в таблице:

 

root@xxx:~# ip r |grep '62.16.32.0'
62.16.32.0/19 via 77.94.166.189 dev eth1.720  proto zebra

Share this post


Link to post
Share on other sites

А зайти в квагу (zebra, а не bgpd) и посмотреть там ?

Share this post


Link to post
Share on other sites

в смысле, vtysh -d zebra ?

а где и что там смотреть надо? :)

Share this post


Link to post
Share on other sites

Ага, неправильный:

xxx# show ip route 62.16.32.0
Routing entry for 62.16.32.0/19
  Known via "bgp", distance 20, metric 0, best
  Last update 07:33:42 ago
  * 77.94.166.189, via eth1.720

 

А почему?

Я понимаю, что нужно вдумчиво курить мануал кваги, просто надо сейчас, а я до этого места не докурил еще... :(

Share this post


Link to post
Share on other sites

т.е. в одно и тоже время в bgpd

show ip bgp 62.16.32.0

и в zebra

show ip route 62.16.32.0

 

? в bgp стоит бест в

77.94.166.5

а в zebra в 77.94.166.189

?

 

А Last update 07:33:42 ago и Last update: Tue Apr 27 14:21:16 2010 друг с другом корелируют (незнаю, что там у Вас за временая зана) ? Вы bgpd кил-9 не срубали , и потом не запускали часом ? процес зебры и бгпд друг с другом общаются. Поидее наверное можно заставить зебру не видеть нового бгпд. Опустите обоих и запустите еще раз. Только зебру мягко а не -9. Чтобы она вычистила маршруты из ядра. Иначе потом она может не захотеть их менять, ибо они для нее будут кернел роут.

 

 

Share this post


Link to post
Share on other sites

Ага, время обновления разное, однозначно, в зебре более старое, чем в bgpd.

В общем, понятно, где копать - да и зебра странно себя ведет, я в zebra.conf прописал

log file /etc/quagga/zebra.log

послал зебре HUP, а она - ноль эмоций, ничего не пишет в лог...

А killall zebra - это для нее мягко будет? :)

 

Share this post


Link to post
Share on other sites

zebra не реагирует на kill -HUP, поэтому надо делать log syslog и забирать в файл из кучи с помощью syslog-ng по имени процесса, демону-сислогу можно и HUP послать и всё что душе захочется

 

А логи надо настраивать и на самой zebra и непосредственно на bgpd

Edited by s.lobanov

Share this post


Link to post
Share on other sites

s.lobanov, возьмите себе за правило рестратить квагу вот в такой последовательности:

/etc/init.d/bgpd stop

/etc/init.d/zebra restart

/etc/init.d/bgpd start

 

Т.е. демон БГП должен запускаться после удачного старта Зебры.

Share this post


Link to post
Share on other sites

Зачем их вообще рестартить? Только если что-то совсем заглючили и не понятно в чём дело.

Share this post


Link to post
Share on other sites

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

Помогал, только такой метод.

Share this post


Link to post
Share on other sites

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

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
Sign in to follow this