10.5 Настройка Route-map
5.5.1 Введение в функционал
Route-map используется для управления и изменения информации о маршрутах. Команда route-map позволяет перераспределять маршруты. Она включает список команд match и set:
- match - указывает условия, при которых перераспределение разрешено.
- set - задает действия перераспределения, которые выполняются, если условия команды
matchвыполняются.
Route-map предоставляет детальный контроль за распределением маршрутов между процессами маршрутизации и позволяет выполнять политику маршрутизации, что может перенаправлять пакеты по маршруту, отличающемуся от очевидного кратчайшего пути.
Если параметр permit указан и критерии match выполнены, маршрут перераспределяется в соответствии с действиями set. Если критерии не выполнены, проверяется следующая строка с тем же именем. Если параметр deny указан и критерии выполнены, маршрут не перераспределяется, и следующие строки не проверяются.
Каждая Route-map завершается неявным deny. Параметр sequence используется для указания позиции новой записи в уже существующем списке с тем же именем.
5.5.2 Конфигурация
Настройка Route-map для OSPF
Шаг 1: Войдите в режим конфигурации
Switch# configure terminal
Шаг 2: Создайте Route-map и задайте правило и действие
Имя route-map может содержать до 20 символов, в данном примере имя задано как "abc". Поддерживаются два действия: "permit" и "deny". Действие по умолчанию — "permit". Допустимый диапазон номеров последовательности — от 1 до 65535. Если номер последовательности не указан при создании первого правила route-map, система автоматически назначает номер 10.
Switch(config)# route-map abc permit
Switch(config-route-map)# match metric 20
Switch(config-route-map)# set tag 2
Switch(config-route-map)# exit
Switch(config)# route-map abc permit 20
Switch(config-route-map)# exit
Шаг 3: Войдите в режим настройки OSPF, перераспределите маршруты RIP и примените Route-map
Switch(config)# router ospf 100
Switch(config-router)# redistribute rip route-map abc
Switch(config-router)# exit
Шаг 4: Выйдите из режима конфигурации
Switch(config)# end
Шаг 5: Проверка
Для отображения Route-map используйте:
Switch# show route-map
route-map abc, permit, sequence 10
Match clauses:
metric 20
Set clauses:
tag 2
route-map abc, permit, sequence 20
Match clauses:
Set clauses:
Настройка Route-map для BGP
Шаг 1: Войдите в режим конфигурации
Switch# configure terminal
Шаг 2: Создайте IP access list:
Switch(config)# ip access-list acl1
Switch(config-ip-acl)# permit any 3.3.3.0 0.0.0.255 any
Switch(config-ip-acl)# exit
Шаг 3: Создайте Route-map для соответствия access list и задайте правило и действие
Switch(config)# route-map abc permit
Switch(config-route-map)# match ip address acl1
Switch(config-route-map)# set local-preference 200
Switch(config-route-map)# exit
Switch(config)# route-map abc permit 20
Switch(config-route-map)# exit
Шаг 4: Войдите в режим настройки BGP и примените Route-map
Switch(config)# router bgp 1
Switch(config-router)# neighbor 1.1.1.2 remote-as 1
Switch(config-router)# neighbor 1.1.1.2 route-map abc out
Switch(config-router)# network 2.2.2.2/32
Switch(config-router)# network 3.3.3.3/32
Switch(config-router)# exit
Шаг 5: Выйдите из режима конфигурации
Switch(config)# end
Шаг 6: Проверка
DUT1# show route-map
route-map abc, permit, sequence 10
Match clauses:
ip address acl1
Set clauses:
local-preference 200
route-map abc, permit, sequence 20
Match clauses:
Set clauses:
DUT2# show ip bgp
BGP table version is 6, local router ID is 1.1.1.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*>i2.2.2.2/32 1.1.1.1 0 100 0 i
*>i3.3.3.3/32 1.1.1.1 0 200 0 i