Ответ к задаче №8.4

Проблема в route-map OUTBOUND.
В ней не хватает правила, которое разрешает остальные обновления.
При текущих настройках, от провайдера Филькин Сертификат приходят только его сети.
В route-map надо добавить правило разрешающее остальные обновления:

route-map OUTBOUND permit 10
match as-path 10
set weight 1000
route-map OUTBOUND permit 20


Кроме того, для того чтобы, при доступности двух провайдеров, через провайдера Филькин Сертификат передавался только трафик в его сети, надо добавить route-map, которая повысит приоритет маршрутов полученных через Балаган Телеком:

neighbor 101.0.0.1 route-map WEIGHT in
!
route-map WEIGHT permit 10
set weight 500


Итоговая конфигурация:

router bgp 64500
no synchronization
bgp log-neighbor-changes
network 100.0.0.0 mask 255.255.254.0
neighbor 101.0.0.1 remote-as 64501
neighbor 101.0.0.1 prefix-list LAN out
neighbor 101.0.0.1 route-map WEIGHT in
neighbor 102.0.0.1 remote-as 64502
neighbor 102.0.0.1 prefix-list LAN out
neighbor 102.0.0.1 route-map OUTBOUND in
no auto-summary
!
route-map OUTBOUND permit 10
match as-path 10
set weight 1000
route-map OUTBOUND permit 20
!
route-map WEIGHT permit 10
set weight 500
!
ip prefix-list LAN permit 100.0.0.0/23
!
ip as-path access-list 10 permit ^64502$
!
ip route 100.0.0.0 255.255.254.0 Null0

7 комментариев

avatar
Насколько я понимаю, здесь ошибка, потому что чем выше значение атрибута Weight, тем предпочтительный будет маршрут.
В примере указывается для маршрутов через «Балаган телеком» значение 500, а через «Филькин сертификат 1000».

А я сделал так:
!
router bgp 64500
no synchronization
bgp log-neighbor-changes
network 100.0.0.0 mask 255.255.254.0
neighbor 101.0.0.1 remote-as 64501
neighbor 101.0.0.1 route-map OUTBOUND_BALAGAN in
neighbor 102.0.0.1 remote-as 64502
neighbor 102.0.0.1 route-map OUTBOUND_FILKIN in
no auto-summary
!
ip route 100.0.0.0 255.255.254.0 Null0
!
ip as-path access-list 10 permit ^64502$
ip as-path access-list 10 permit _64503$
ip as-path access-list 20 permit _64503$
!
!
route-map OUTBOUND_BALAGAN permit 10
match as-path 20
set weight 1500
!
route-map OUTBOUND_FILKIN permit 10
match as-path 10
set weight 1000
!
avatar
В примере указывается для маршрутов через «Балаган телеком» значение 500, а через «Филькин сертификат 1000».
В примѣрѣ атрибут Weight будет равен 1000 тоʌько дʌя сѣтей автономной системы 64502, дʌя сѣтей пришедших через AS 64502 Weight по умоʌчанію будет равен 0.
avatar
Насколько рационально будет использовать для решения задачи атрибут Local Preference? (подразумевается, что по умолчанию Local Preference = 100)
Можно установить для маршрутов из AS провайдера Филькин Сертификат Local Preference = 50, кроме его собственных сетей. Тогда маршруты из AS Балаган телеком будут более предпочтительными:

!
neighbor 102.0.0.1 route-map FCERT_IN in
!
route-map FCERT_IN permit 10
match ip address prefix-list FCERT_NET
set local-preference 100
!
route-map FCERT_IN permit 20
set local-preference 50

Второй вопрос: зачем устанавливать более высокий приоритет для маршрута в сеть 102.0.0.0/21 через провайдера Филькин сертификат, если этот маршрут и так будет иметь более высокий приоритет в силу меньшей длины AS_Path (при прочих равных условиях)?
avatar
Да у меня такой же вопрос, но как я понимаю это же просто допущение задачи, если представить, что приоритет маршрутов не учитывает AS-Path). Просто задача расчитана на закрепление навыков распределения исходящего трафика, показанного в видео и в статье)
avatar
Я разобрался почему)Смотрите Максим, предположим, что у нас будет значение AS-Path короче при всех прочих равных условиях, тогда трафик, предназначенный «филькиным» подсетям так и так пойдет в «Филькины» подсети через 102.0.0.1, тогда как заставить остальной трафик без дополнительных настроек ходить через «Балаган»? Ведь он может пойти в сети ЦОД и через «Филькин» роутер, а по условию задачи сказано, что он должен идти только через «Балаган». Тогда если мы, например, поставим значение local preference 500 для Балагана (соседа 101.0.0.1) у нас весь трафик пойдет через него, потому что значение local preference приоритетнее, чем AS-Path). И тогда мы не выполним условие, что нам нужно трафик для «Филькиных» подсетей слать через «Филькин» роутер, и придется настроить отдельную route-map для «филькиных» подсетей, чтобы установить для их анонсов со стороны «Филькиного» роутера значение local preference, большее 500, т.е 1000 например, как и в примере автора) как-то так)
avatar
Естественно я имел ввиду параметр Weight)
avatar
Кроме того, для того чтобы, при доступности двух провайдеров, через провайдера Филькин Сертификат передавался только трафик в его сети, надо добавить route-map, которая повысит приоритет маршрутов полученных через Балаган Телеком:

Я бы сказал это не для этого сделано и поэтому когда читаешь немного путает) Как я понял Вы хотели сказать, что необходимо установить хоть какое-нибудь значение weight для анонсов от соседа 101.0.0.1, чтобы эти анонсы, полученные бордером, получали больший приоритет в отличие от анонсов со стороны соседа 102.0.0.1, которые получат значение weight 0, кроме анонсов «филькиных» подсетей разумеется. И поэтому при работающих линках обоих провайдеров трафик в «Филькины» подсети будет ходить через 102.0.0.1, а трафик в остальные подсети через «Балаган».) Поправьте, если не так понял)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.