Карты маршрутов EcoRouter Documentation / Маршрутизация / Карты маршрутов
Карты маршрутов (route-map) применяются для управления формированием и изменением таблиц маршрутизации, а также процессом передачи маршрутной информации по сети. Они позволяют накладывать определенные требования на анонсируемые маршруты. Если маршрут удовлетворяет условию, указанному в конструкции match, то будет выполнено некоторое действие, которое сетевой администратор указывает с помощью команды set.
Настройка карт маршрутов
Создание карт маршрутов осуществляется в режиме конфигурирования маршрутизатора. В этом режиме вводится команда route-map и имя карты маршрута. Далее задаются условия, которым должна удовлетворять маршрутная информация, и указываются ключевые слова permit (разрешить) или deny (запретить). После чего необходимо задать номер оператора.
Синтаксис команды создания карты маршрутов: route-map <имя> permit/deny <номер оператора>.
После этого в контекстном режиме конфигурирования route-map можно задать условия и действия, осуществляемые при срабатывании данных условий. Эти параметры задаются в паре условие-действие.
EcoRouter(config)#route-map <имя> permit/deny <номер>
EcoRouter(config-route-map)#match <условие>
EcoRouter(config-route-map)#set <действие>
Если при создании карты маршрутов номер не был задан, то по умолчанию он будет равен 10. Для конфигурирования следующих условий и правил той же route-map номер должен быть задан администратором вручную. С помощью конструкции match можно проверить условия, перечисленные в таблице ниже.
Условие | Описание |
---|---|
as-path | Наличие в BGP маршруте атрибута AS-path, который содержит данные, совпадающие с указанными в ip as-path access-list |
community | Наличие в BGP маршруте атрибута community, который содержит данные, совпадающие с указанными в ip community-list |
extcommunity | Наличие в BGP маршруте атрибута extcommunity, который содержит данные, совпадающие с указанными в ip extcommunity-list |
interface | Совпадение с выходным интерфейсом локального маршрутизатора на основе таблицы маршрутизации |
ip address <policy-filter-list> | Сопоставление префикса с policy-filter-list |
ip address <prefix-list> | Сопоставление префикса с prefix-list |
ip nexthop | Проверяется next-hop адрес маршрута |
ip peer | Проверяется BGP сосед для определенного префикса |
metric | Проверяется метрика маршрута |
origin | Проверяется значение атрибута origin |
route-type | Проверяет тип маршрута для OSPF и IS-IS (external, internal, type-1, type-2) |
tag | Проверяется тег установленный для маршрута ранее |
С помощью конструкции set можно выполнить следующие действия:
- установить значения BGP атрибутов (подробнее об установке атрибутов пути через параметр set читайте в разделе BGP);
- установить уровень маршрута для протокола IS-IS;
- изменить тип метрики в OSPF и IS-IS с помощью конструкции metric-type;
- протегировать маршрут с помощью конструкции tag.
Обработка записей в картах маршрутов
Записи в карте маршрутов обрабатываются по порядку, сверху вниз, как и в случае стандартных или расширенных списков доступа. Если обнаружено соответствие маршрута к какому-либо условию в списке, дальнейшая проверка списка прекращается. Нумерация записей применяется только для того, чтобы вставлять или удалять нужные записи в route-map используя параметр no. Если в последней записи route-map указать пустое условие с ключевым словом permit, то все варианты, не описанные в правилах, будут допустимыми. Если такая строчка отсутствует в route-map, то все варианты, не описанные в правилах, по умолчанию будут запрещены (применен deny).
Для того, чтобы сконфигурировать route-map, которая будет устанавливать тег 7 в единственный маршрут 10.0.0.0/8 и удалять сети 11.0.0.0/8 11.0.0.0/24 из анонса потребуются следующие команды:
EcoRouter(config)#ip prefix-list 1 permit 10.0.0.0/8
EcoRouter(config)#ip prefix-list 2 permit 11.0.0.0/8 le 24
EcoRouter(config)#route-map TEST permit 1
EcoRouter(config-route-map)#match ip address prefix-list 1
EcoRouter(config-route-map)#set tag 7
EcoRouter(config-route-map)#route-map TEST deny 2
EcoRouter(config-route-map)#match ip address prefix-list 2
EcoRouter(config-route-map)#route-map TEST permit 3
Для удаления последовательности 3 можно воспользоваться командой no route-map TEST permit 3.
Для просмотра общей информации по картам маршрутов используется команда show route-map <имя>.