Route Map
До сих пор все правила применялись безусловно – на все анонсы от пира или пиру. С помощью карт маршрутов (у других вендоров они могут называться политиками маршрутизации) мы можем очень гибко применять правила, дифференцируя анонсы.
Синтаксис команды следующий:
map_name – имя карты permit/deny – разрешаем или нет прохождение данных, подпадающих под условия route-map seq – номер правила в route-map match – условие подпадания трафика под данное правило.
expression:
Критерий | Команда конфигурации |
Network/mask | match ip address prefix-list |
AS-path | match as-path |
BGP community | match community |
Route originator | match ip route-source |
BGP next-hop address | match ip next-hop |
set – что сделать с отфильтрованными маршрутами expression:
Параметры | Команда конфигурации |
AS path prepend | set as-path prepend |
Weight | set weight |
Local Preference | set local-preference |
BGP community | set community |
MED | set metric |
Origin | set origin |
BGP next-hop | set next-hop |
Пример применения
Укажем, что в подсеть 120.0.0.0/24 предпочтительно ходить через Балаган Телеком, а в 103.0.0.0/22 через Филькин Сертификат. Для этого воспользуемся атрибутом Local Preference. Чем выше значение этого параметра, тем выше приоритет маршрута.
Сначала мы создали обычным образом prefix-list, которым выделили подсеть 120.0.0.0/24. Permit означает, что на этот префикс в будущем будут действовать правила route-map. Как и в обычных ACL далее идёт неявное правило deny для всего остального. В данном случае оно означает, что под действие route-map подпадёт только 120.0.0.0/24 и ничего другого.
В созданной карте маршрутов BGP1_IN мы разрешили прохождение маршрутной информации (permit), подпадающей под созданный prefix-list (match ip address prefix-list TEST1_IN). Для этих анонсов установим local preference в 50 – ниже, чем стандартные 100 (set local-preferеnce 50). То есть они будут менее «интересными».
И в конечном итоге привяжем карту к конкретному BGP-соседу (neighbor 102.0.0.1 route-map BGP1_IN in).
Что же получается в результате?
Другие примеры рассмотрим в следующем разделе.
Last updated