Чтож. походу без пояснения задачи никак:))) а это блин словами сложно.. ну напрягусь...
downlink1
|
Juniper MX480
/ |
/ iBGP |
/ |
peer1 --- BSD1 ---------- BSD2 ----- Uplink
/ | | \
peer2 peer3 downlink2 peer4
peer (local-pref 100) - обмениваемся только своими AS & prefix (локально)
downlink (local-pref 200) - Транзитники... Принимают от меня мир, я от них их as-patch и набор префиксов и анонсю в аплинк
uplink (local-pref 80) - думаю без вопросов...
с uplink принимаю мир
с downlink1 принимаю его префиксы на основе as-patch
peer1 анонсит мне xxx.xxx.xxx.xxx/23
peer2 анонсит мне yyy.yyy.yyy.yyy/24 и т.д.
Итак. Самое интересное...
Преамбула..
в downlink нельзя отдавать сети пиров, т.к пиры не примут чужие сети и АС..... Сети пиров downlink должен получить из uplink. Поэтому помечаем все приходящие префиксы отдельными коммунити.
peer peer:comm
downlink downlink:comm
uplink uplink:comm
BSD2
xxx.xxx.xxx.xxx/23 от BSD1(peer:comm) (LP100)
xxx.xxx.xxx.xxx/23 от uplink(uplink:comm) (LP80)
Т.к локалпреф локального пира выше... то первый маршрут признается best... Второй инактив. Соответственно анонсится соседям 1ый. Про второй система "забывает" (ВОТ суть первого поста...)
И поэтому
MX480
xxx.xxx.xxx.xxx/23 от BSD1(peer:comm)
xxx.xxx.xxx.xxx/23 от BSD2(!!!!peer:comm!!!!) а нужен uplink:comm
тут на основе коммунити downlink'y отфильтровываю мир(uplink:comm) и себя....
НО на маршрутизаторе есть только xxx.xxx.xxx.xxx/23(peer:comm).....
Вот и надо мне заставить quagga отдать неактивный маршрут...
В полноценной циске это bgp suppress-inactive, в JunOS есть advertise-inactive....
Собственно эта проблема не только на MX480.. А по всем маршрутизаторам...
Если кто предложит выполнять задачу по префикслистам и AS...
То:
peer >30шт (>350 префиксов)
downlink тоже хватает...
Вот..
Кто че понял.. .Пишите:)))