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

quagga ibgp Часть конфига не читается

Сложилась такая ситуация: bird стабильно теряет несколько маршрутов (пробовали ibgp и ospf) и не найдя решения этой проблемы (тут же на наге создавал тему) было принято решение поставить quagga. Я взял один из своих серверов(centos) и свой рабочий ПК(archlinux) установил на них quagga, поднял bgp-соседство. Затем я установил на наш bras(у нас он называется NAS и имеет на борту freebsd 9.1) quagga и бгп соседство с сервером(centos), и сервер настроил для передачи маршрутов на рабочий арч. У себя на арче я сразу увидел все ng-интерфейсы которые анонсировал bras.

Дело оставалось за малым - настроить quagga на bras'е для передачи маршрутов бордеру(freebsd 9.1) на котором тоже стоит bird.

Для начала я решил так же не заморачиваясь настроить bgp-соседство на bras'e и на centos/arch (С помощью quagga, конечно), чтобы потом просто поменять адрес АСки и ip на соответсвующие бордеру. Всё настроил как обычно, но вот беда - выводы команд и содержимое логов под спойлерами.

bras:

 

 

bgpd# show ip bgp summary
bgpd#

bgpd# show ip bgp neighbors
bgpd#

Это меня смутило и я заглянул в конфиг (сначала работающий)

bgpd# show running-config

Current configuration:
!
hostname bgpd
password 
enable password
log file /var/log/quagga/bgpd.log
!
line vty
!
end
bgpd#

Затем конфиг запуска:

bgpd# show startup-config

Current configuration:
!
hostname bgpd
password 
enable password
log file /var/log/quagga/bgpd.log
!
router bgp 11111
bgp router-id <bras ip adress>
bgp log-neighbor-chnges
neighbor <arch ip adress> remote-as 22222
neighbor <arch ip adress> update-source <arch ip adress>
!
line vty
!
end
bgpd#

Я думаю понятно, что в файле конфигурации /usr/local/etc/quagga/bgpd.conf написано именно то, что можно увидеть в show startup-config.

Сначала я подумал, что допускаю какие то ошибки в конфиге и стёр конфиг полностью кроме строк с паролем. Затем настроил всё через telnet.

bgpd# enable
bgpd#
bgpd# configure terminal
bgpd(config)#
...
bgpd# copy running-config startup-config

Там где "..." я просто вбивал те же команды, дабы программа сама составила себе конфиг без возможных ошибок.

Соответственно никакого результата это не дало.

 

Кроме того в логах bgpd.log: (bras)

BGPd 0.99.22.3 starting: vty@2505, bgp@<all>:179
can't bind socket : Can't assign requested adress
%ADJCHANGE: neighbor <ip arch> UP
bind: adress already in use
bgp_socket: no usable adresses
Terminating on signal
bind: adress already in use
bgp_socket: no usable adresses
bind: adress already in use
bgp_socket: no usable adresses
BGPd 0.99.22.3 starting: vty@2505, bgp@<all>:179
can't bind socket : Can't assign requested adress
can't bind socket : Can't assign requested adress
%ADJCHANGE: neighbor <ip arch> UP
Vty connection from 127.0.0.1
Vty connection from 127.0.0.1

 

 

archlinux:

 

 

На archlinux я наблюдаю совершенно иную ситуацию:

bgpd# show ip bgp summary
BGP router identifier <ip>, local AS number 22222
RIB entries 0, using 0 bytes of memory
Peers 1, using 4560 bytes of memory

Neighbor    V    AS    MsgRcvd  MsgSent  TblVer  InQ  OutQ  Up/Down   State/PfxRcd
<bras ip>   4  11111    10486    10574     0      0    0    08:07:13       0

Total number of neighbors 1

 

bgpd# show ip bgp neighbors
BGP neighbor is <bras ip>, remote AS, local AS, external link
 BGP version 4, remote router ID <bras ip>
 BGP state = Established, up for 08:05:13
 Last read 00:00:06, hold time is 180, keepalive interval is 60 seconds
 Neighbor capabilities:
   4 Byte AS: advertised and received
   Route refresh: advertised and received(old & new)
   Adress family IPv4 Unicast: advertised and received
 Message statistics:
   Inq: depth is 0
   Outq: depth is 0
                       Sent    Rcvd
   Opens:               59      0
   Notifications:        0      0
   Updates:              0      0
   Keepalive:          10513  10486      
   Route Refresh:        0      0 
   Capability:           0      0 
   Total:              10574  10486
 Minimum time between adwertisment runs is 30 seconds
 Update source is <bras ip>

For adress family: IPv4 Unicast
 Community attribute sent to this neighbor(both)
 0 accepted prefix

 Connections established 29; dropped 28
 Last reset 08:07:13, dye to Peer closed the session
Local host: <ip arch>, Local port: 179
Foreign host: <bras ip>, Foreign port: 52854
Nexthop: <ip arch>
Nexthop global: <ipv6>
Nexthop local: ::
BGP connection: non shared network
Read thread: on white thread: off

В логах такая ситуация:

%ADJCHANGE: neighbor <bras ip> Up
%ADJCHANGE: neighbor <bras ip> Down Peer closed the session
can't bind socket : Can't assign requested adress
%ADJCHANGE: neighbor <bras ip> Up
%ADJCHANGE: neighbor <bras ip> Down Peer closed the session
can't bind socket : Can't assign requested adress
%ADJCHANGE: neighbor <bras ip> Up
%ADJCHANGE: neighbor <bras ip> Down Peer closed the session
can't bind socket : Can't assign requested adress
%ADJCHANGE: neighbor <bras ip> Up
%ADJCHANGE: neighbor <bras ip> Down Peer closed the session
can't bind socket : Can't assign requested adress
...

bgpd.conf абсолютно аналогичен.

На centos ситуация в точности такая же.

 

 

Помогите, пожалуйста, решить проблему.

Share this post


Link to post
Share on other sites

router bgp 11111

 bgp router-id <bras ip adress>

 bgp log-neighbor-chnges

 neighbor <arch ip adress> remote-as 22222

 neighbor <arch ip adress> update-source <arch ip adress>

 

 

Оно у вас реально так вписано? Ну тогда не удивительно что не работает.

Попробуйте без нее

Share this post


Link to post
Share on other sites

Убрал, перезапустил, эффекта не получил...

Что не так в этой строчке? На сколько я помню из того, что читал - эта строка указывает на адрес обмена update сообщениями с соседом...

Share this post


Link to post
Share on other sites

Да у вас там кроме этого радости хватает. iBGP на разных автономках, явно не вписаны network или redistribute.

А сама эта строка означает с какого интерфейса цепляться к соседу, обычно на цисках используют чтобы с loopback делать сессии.

 

В файлах то сохраняется что-либо после copy runn start или write?

 

И там бгпд случаем не пару раз запущен?

Share this post


Link to post
Share on other sites

После "copy running-config startup-config" конфиг bgpd.conf сохранился нормально и результат я выложил в первом посте.

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

Share this post


Link to post
Share on other sites

ошибочка :)

Edited by anix

Share this post


Link to post
Share on other sites

После "copy running-config startup-config" конфиг bgpd.conf сохранился нормально и результат я выложил в первом посте.

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

 

Ну порт то один. Вполне предсказуемо было, не?

Share this post


Link to post
Share on other sites

"Виной всему человеческая глупость." - мои же слова)

Спасибо за помощь, DVM-Avgoor

 

Еще такой вопрос: на сколько я понимаю все интерфейсы на bras будут анонсироваться сами(без особых настроек)

zebra.conf

hostname zebra
password
enable password
log file .../zebra.log
line vty

Share this post


Link to post
Share on other sites

"Виной всему человеческая глупость." - мои же слова)

Спасибо за помощь, DVM-Avgoor

 

Еще такой вопрос: на сколько я понимаю все интерфейсы на bras будут анонсироваться сами(без особых настроек)

zebra.conf

hostname zebra
password
enable password
log file .../zebra.log
line vty

 

Ммм... они получаются connected? Не уверен что по iBGP они сами выльются. Ну там redistribute connected в помощь :)

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