5.5. Настройка политик маршрутизации (Route-map)
Назначение
Политика маршрутизации - это технология манипуляции с атрибутами маршрутной информации.
Политики маршрутизации используются для управления и изменения информации о маршрутизации, а также для детального контроля над распределением маршрутов между процессами маршрутизации.
Политики маршрутизации позволяют направлять пакеты по маршруту, отличному от очевидного кратчайшего пути.
Описание
Для настройки политики маршрутизации используется команда route-map
.
Имя политики маршрутизации может содержать до 20 символов. Количество правил в политике можно установить от 1 до 65535.
После имени политики указывается номер правила в политике маршрутизации. Если номер правила не указан, то система по умолчанию присвоит номер 10
. Все последующие номера правил задаются только вручную.
Команда match
определяет условия совпадения.
Команда set
определяет действие, которое будет выполнено при совпадении свойств пакета с критериями, установленными командой match
. Доступны два типа действия: permit
(разрешить) и deny
(запретить). Если действие для правила не указано, то выполняемым действием по умолчанию будет permit
.
Правила политики маршрутизации проверяются построчно в поисках совпадения. При совпадении с правилом политики выполняется настроенное действие (permit
или deny
) и поиск совпадений в последующих правилах не производится. Если критерий match
в правиле не совпадает c параметрами пакета, то проверяется следующее правило политики маршрутизации. При отсутствии совпадений, маршрутизатор, достигнув последней строки, отбрасывает пакет.
Настройка
Настройка политики маршрутизации для OSPF
Шаг 1: Вход в режим “Global config”
Switch# configure terminal
Шаг 2: Создание и настройка политики маршрутизации
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: Настройка работы OSFP
Вход в режим конфигурации OSFP, переназначение маршрутов из RIP, применение политики маршрутизации:
Switch(config)# router ospf 100
Switch(config-router)# redistribute rip route-map abc
Switch(config-router)# exit
Шаг 4: Выход из режима “Global config”
Switch(config)# end
Шаг 5: Проверка
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:
Настройка политики маршрутизации для BGP
Шаг 1: Вход в режим “Global config”
Switch# configure terminal
Шаг 2: Создание ACL
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: Настройка политики маршрутизации
Создание и настройка политики маршрутизации, совпадающей с ACL:
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 и применение политики маршрутизации
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: Выход из режима “Global config”
Switch(config)# end
Шаг 6: Проверка
Switch# 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:
Switch# 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