Перейти к содержимому
Калькуляторы

Приоритет маршрутов в quagga

Здравствуйте.

Подскажите: как придать бОльший вес маршруту, полученному по bgp?

 

У меня есть 2 провайдера: 100мб/с (SkyEn) и 200мб/с (ILogica).

Большинство трафика повернуто на 200мб/с провайдера.

 

Так же есть 2 тунеля до удаленного офиса.

 

Задача: Чтоб трафик первого тунеля шел через 100мб/с провайдера, а трафик второго тунеля шел через 200мб/с провайдера.

 

Раньше bgp был на mikrotik и задача решалась просто: Во входящих правилах для 100мб/с провайдера было прописано, что при приеме сети 77.41.0.0/16 выставить weight=5 Local Pref=200.

Как это сделать в quagga?

hostname AS11111
password ******
enable password ******
log file /var/log/quagga/bgpd.log
log stdout
!
router bgp 11111
bgp router-id 10.10.10.1
bgp log-neighbor-changes
network 10.10.10.0/24
!
neighbor 10.20.20.1 remote-as 22222
neighbor 10.20.20.1 description SkyEn
neighbor 10.20.20.1 next-hop-self
neighbor 10.20.20.1 soft-reconfiguration inbound
neighbor 10.20.20.1 route-map SkyEn-in in
neighbor 10.20.20.1 route-map SkyEn-out out
neighbor 10.30.30.1 remote-as 33333
neighbor 10.30.30.1 description ILogica
neighbor 10.30.30.1 next-hop-self
neighbor 10.30.30.1 soft-reconfiguration inbound
neighbor 10.30.30.1 route-map ILogica-in in
neighbor 10.30.30.1 route-map ILogica-out out
!
ip prefix-list bogons description bogus nets
ip prefix-list bogons seq 20 permit 127.0.0.0/8 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 224.0.0.0/4 le 32
ip prefix-list bogons seq 55 permit 240.0.0.0/4 le 32
ip prefix-list our-CIDR-blocks seq 5 permit 10.10.10.0/24
ip prefix-list upstream-out seq 10 permit 10.10.10.0/24
ip prefix-list qwerty seq 5 permit 77.41.0.0/16 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 SkyEn-in deny 100
match as-path 1
!
route-map SkyEn-in deny 110
match ip address prefix-list bogons
!
route-map SkyEn-in deny 120
match ip address prefix-list our-CIDR-blocks
!
route-map SkyEn-in permit 200
set local-preference 100
!
route-map SkyEn-in permit 250
match ip address prefix-list qwerty
set local-preference 200
!
route-map SkyEn-out permit 100
match ip address prefix-list upstream-out
set as-path prepend 11111 11111
!
route-map SkyEn-out deny 200
!
route-map ILogica-in deny 100
match as-path 1
!
route-map ILogica-in deny 110
match ip address prefix-list bogons
!
route-map ILogica-in deny 120
match ip address prefix-list our-CIDR-blocks
!
route-map ILogica-in permit 200
set local-preference 100
!
route-map ILogica-out permit 100
match ip address prefix-list upstream-out
!
route-map ILogica-out deny 200

 

Я попытался сделать это следующими строчками:

ip prefix-list qwerty seq 5 permit 77.41.0.0/16 le 32

route-map SkyEn-in permit 250
match ip address prefix-list qwerty
set local-preference 200

 

но не сработало.

Изменено пользователем monstr

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я обычно по автономке матчу, так не делал,

но здесь вроде всё верно, глаз замылен не вижу ошибок.

не ставится на этот префикс лп 200?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мне именно не по автономке надо, а определенный блок адресов отправить через определенного провайдера с помощью local-preference

 

Заметил порядок правил. Сначала ставлю local-preference=100 всем принятым маршрутам, а только потом выделяю сеть. Поменял конфиг. Вечером буду тестить.

Изменено пользователем monstr

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

!

route-map SkyEn-in permit 200

set local-preference 100

!

route-map SkyEn-in permit 250

match ip address prefix-list qwerty

set local-preference 200

 

 

 

Поменять местами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Может еще подскажите:

Пытаюсь сохранить конфигурацию с помощью команды write или copy run star, а получаю такой ответ:

Can't backup old configuration file /etc/quagga/bgpd.conf.sav.

 

Гугл молчит :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

М.б. права на запись в каталог /etc/quagga/?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

М.б. права на запись в каталог /etc/quagga/?

Помогло изменение владельца файлов в папке /etc/quagga на quagga:quagga. Был root.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.