Cisco PBR
Материал из Xgu.ru
На этой странице рассматриваются принципы работы и настройка маршрутизации на основе политик (Policy based routing, PBR) на маршрутизаторах Cisco.
Маршрутизация на основе политик (policy based routing, PBR) позволяет маршрутизировать трафик на основании заданных политик, тогда как в обычной маршрутизации, только IP-адрес получателя определяет каким образом будет передан пакет.
Содержание |
[править] Принцип работы
PBR может применяться, как для сквозного трафика, так и для трафика, который генерируется маршрутизатором.
Примеры задач, которые PBR может решить:
- Маршрутизировать трафик по любому признаку, который можно указать в ACL (IP отправителя и получателя, порты TCP/UDP)
- Маршрутизировать VoIP трафик через один канал, а весь остальной, через другой,
- Маршрутизировать трафик пользователей VLAN 10 через один канал, в пользователей VLAN 20 через другой
- Маршрутизировать трафик, который генерирует маршрутизатор, по определенному пути
PBR перехватывает пакеты до стандартной маршрутизации и отправляет пакеты по настроенным правилам. Если для группы пакетов в PBR не указано как их маршрутизировать, то они будут отправлены по стандартным правилам маршрутизации.
[править] Настройка PBR
Основной объект с помощью которого настраивается PBR: route-map.
Route-map:
- состоит из правил:
- каждое из правил, указывает отправлять указанные пакеты по правилам PBR или нет
- permit значит, что пакеты, которые попадают в описание match, буду отправлены так как описано в set
- deny значит, что пакеты будут отправлены на стандартную маршрутизацию
- каждое из правил, указывает отправлять указанные пакеты по правилам PBR или нет
- В каждом правиле route-map два компонента:
- match - описывает какой трафик должен маршрутизироваться согласно PBR
- как правило, для PBR, используется в виде match ip address <acl>
- set - описывает куда перенаправлять трафик, который описан в match
- как правило, для PBR, используется в виде set ip next-hop <ip-address>
- match - описывает какой трафик должен маршрутизироваться согласно PBR
- У каждого правила route-map есть порядковый номер
- когда пакеты проходят сквозь интерфейс, к которому применена PBR, пакеты проверяются по порядку по правилам
- если пакет совпал с описанием в match, то он маршрутизируется по правилу set
- если пакет не совпал с описанием в match, правила проверяются дальше
- если ни в одном правиле совпадения не найдено, то пакет будет маршрутизироваться по стандартной таблице маршрутизации
Пример настройки route-map:
route-map PBR permit 10 match ip address VLAN_10 set ip next-hop 10.0.1.1 route-map PBR permit 20 match ip address VLAN_20 set ip next-hop 10.0.2.2
|
Обратите внимание, что route-map могут использоваться в разных областях. Например:
На этой странице описание и использование route-map относится только к PBR. Смысл команд внутри route-map, в зависимости от области применения, может меняться. Поэтому, не все команды, которые доступны внутри route-map, относятся к настройкам PBR. Также, при чтении документации, нужно обращать внимание на то, к каком контексте используется route-map. В этом смысле, route-map чем-то похожи на ACL. ACL также, в зависимости от области применения, может выполнять разные действия. |
Для того чтобы, при получении трафика на интерфейсе, машрутизатор обрабатывал его не по обычным правилам, а использовал настройки маршрутизации на основе политик, необходимо применить команду ip policy:
router(config-if)# ip policy route-map <route-map-name>
Команда применяется на интерфейсе, который является входящим для трафика.
[править] Настройка PBR с track
Когда PBR используется для того чтобы распределять трафик между различными провайдерами, трафик нужно не просто отправлять на определенный next-hop, но и проверять, работоспособен ли провайдер, через которого отправляется трафик.
Для проверки работоспособности используется комбинация IP SLA и Track.
Пример привязки трек к next-hop, для проверки доступности провайдера:
route-map POLICY permit 10 match ip address odd set ip next-hop verify-availability 70.1.1.100 1 track 1 route-map POLICY permit 20 match ip address even set ip next-hop verify-availability 80.1.1.100 2 track 2
[править] Команды просмотра
dyn1# sh ip policy Interface Route map Fa0/0 POLICY
router# sh route-map POLICY route-map POLICY, permit, sequence 10 Match clauses: ip address (access-lists): odd Set clauses: ip next-hop verify-availability 192.168.1.5 1 track 1 [up] Policy routing matches: 36 packets, 1512 bytes route-map POLICY, permit, sequence 20 Match clauses: ip address (access-lists): even Set clauses: ip next-hop verify-availability 192.168.2.6 2 track 2 [up] Policy routing matches: 9 packets, 378 bytes
[править] Команды debug
Внимательно отнеситесь к включению команды debug, так как она может дать на выходе очень много информации, что неблагоприятно отразится на работе вашего маршрутизатора (он попросту "зависнет"). Так что постарайтесь использовать этот режим при низком трафике через ваш маршрутизатор, а то и вовсе выключите этот режим, воспользовавшись (в EXEC режиме) командой no debug ip policy. |
Но, если Вы тестируете работу PBR в лабораторных условиях, то командой можно воспользоваться для того чтобы увидеть какие пакеты маршрутизировались по правилам PBR, а какие стандартно.
Проверить работу policy routing:
router# debug ip policy
[править] Примеры настройки
[править] Балансировка трафика по признаку четные/нечетные адреса
ip access-list standard odd permit 10.0.100.1 0.0.0.254 ip access-list standard even permit 10.0.100.0 0.0.0.254 route-map POLICY permit 10 match ip address odd set ip next-hop 192.168.1.5 route-map POLICY permit 20 match ip address even set ip next-hop 192.168.2.6 interface FastEthernet0/0 ip policy route-map POLICY
[править] PBR с использованием track
ip sla 1 icmp-echo 192.168.6.8 source-interface FastEthernet1/0 timeout 500 frequency 3 ip sla schedule 1 life forever start-time now ip sla 2 icmp-echo 192.168.7.9 source-interface FastEthernet2/0 timeout 500 frequency 3 ip sla schedule 2 life forever start-time now track 1 ip sla 1 reachability delay down 10 up 5 track 2 ip sla 2 reachability delay down 10 up 5 ip access-list standard odd permit 10.0.100.1 0.0.0.254 ip access-list standard even permit 10.0.100.0 0.0.0.254 route-map POLICY permit 10 match ip address odd set ip next-hop verify-availability 192.168.1.5 1 track 1 route-map POLICY permit 20 match ip address even set ip next-hop verify-availability 192.168.2.6 2 track 2 interface FastEthernet0/0 ip policy route-map POLICY
[править] Дополнительная информация
|
---|