Catalyst PBR: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 19: Строка 19:
 
<PRE>
 
<PRE>
 
ip access-list extended DIMAR-PBR-Test
 
ip access-list extended DIMAR-PBR-Test
deny ip host 192.168.4.44 192.168.0.0 0.0.255.255
+
deny ip any 192.168.0.0 0.0.255.255
deny ip host 192.168.4.44 172.16.0.0 0.15.255.255
+
deny ip any 172.16.0.0 0.15.255.255
permit ip host 192.168.4.44 any
+
deny ip any 10.0.0.0 0.255.255.255
deny ip any any
+
deny ip host 193.33.хх.хх 10.0.0.0 0.255.255.255
 
deny ip host 193.33.хх.хх 10.0.0.0 0.255.255.255
  +
permit ip host any any
  +
</PRE>
  +
В этом случае будем наблюдать увеличение счетчиков срабатывания ACL что применительно к коммутаторам говорит о том, что пакеты были обработаны программно. Пропорционально траффику растет загрузка процессора.
  +
<BR>
  +
  +
Второй вариант
  +
<PRE>
 
ip access-list extended PBR_Universal
 
ip access-list extended PBR_Universal
permit ip 95.69.136.0 0.0.7.255 0.0.0.0 7.255.255.255
+
permit ip any 0.0.0.0 7.255.255.255
permit ip 95.69.136.0 0.0.7.255 8.0.0.0 1.255.255.255
+
permit ip any 8.0.0.0 1.255.255.255
permit ip 95.69.136.0 0.0.7.255 11.0.0.0 0.255.255.255
+
permit ip any 11.0.0.0 0.255.255.255
permit ip 95.69.136.0 0.0.7.255 12.0.0.0 3.255.255.255
+
permit ip any 0.0.7.255 12.0.0.0 3.255.255.255
permit ip 95.69.136.0 0.0.7.255 16.0.0.0 15.255.255.255
+
permit ip any 16.0.0.0 15.255.255.255
permit ip 95.69.136.0 0.0.7.255 32.0.0.0 31.255.255.255
+
permit ip any 32.0.0.0 31.255.255.255
permit ip 95.69.136.0 0.0.7.255 64.0.0.0 15.255.255.255
+
permit ip any 64.0.0.0 15.255.255.255
permit ip 95.69.136.0 0.0.7.255 80.0.0.0 7.255.255.255
+
permit ip any 80.0.0.0 7.255.255.255
permit ip 95.69.136.0 0.0.7.255 88.0.0.0 3.255.255.255
+
permit ip any 88.0.0.0 3.255.255.255
permit ip 95.69.136.0 0.0.7.255 0.0.0.0 255.0.0.0
+
permit ip any 0.0.0.0 255.0.0.0
permit ip 95.69.136.0 0.0.7.255 95.0.0.0 0.63.255.255
+
permit ip any 95.0.0.0 0.63.255.255
permit ip 95.69.136.0 0.0.7.255 95.64.0.0 0.3.255.255
+
permit ip any 95.64.0.0 0.3.255.255
permit ip 95.69.136.0 0.0.7.255 95.68.0.0 0.0.255.255
+
permit ip any 95.68.0.0 0.0.255.255
permit ip 95.69.136.0 0.0.7.255 95.69.0.0 0.0.127.255
+
permit ip any 95.69.0.0 0.0.127.255
permit ip 95.69.136.0 0.0.7.255 95.70.0.0 0.1.255.255
+
permit ip any 95.70.0.0 0.1.255.255
permit ip 95.69.136.0 0.0.7.255 95.72.0.0 0.7.255.255
+
permit ip any 95.72.0.0 0.7.255.255
permit ip 95.69.136.0 0.0.7.255 95.80.0.0 0.15.255.255
+
permit ip any 95.80.0.0 0.15.255.255
permit ip 95.69.136.0 0.0.7.255 96.0.0.0 15.255.255.255
+
permit ip any 96.0.0.0 15.255.255.255
permit ip 95.69.136.0 0.0.7.255 112.0.0.0 7.255.255.255
+
permit ip any 112.0.0.0 7.255.255.255
permit ip 95.69.136.0 0.0.7.255 120.0.0.0 3.255.255.255
+
permit ip any 120.0.0.0 3.255.255.255
permit ip 95.69.136.0 0.0.7.255 124.0.0.0 1.255.255.255
+
permit ip any 124.0.0.0 1.255.255.255
permit ip 95.69.136.0 0.0.7.255 126.0.0.0 0.255.255.255
+
permit ip any 126.0.0.0 0.255.255.255
permit ip 95.69.136.0 0.0.7.255 128.0.0.0 31.255.255.255
+
permit ip any 128.0.0.0 31.255.255.255
permit ip 95.69.136.0 0.0.7.255 160.0.0.0 7.255.255.255
+
permit ip any 160.0.0.0 7.255.255.255
permit ip 95.69.136.0 0.0.7.255 168.0.0.0 3.255.255.255
+
permit ip any 168.0.0.0 3.255.255.255
permit ip 95.69.136.0 0.0.7.255 172.0.0.0 0.15.255.255
+
permit ip any 172.0.0.0 0.15.255.255
permit ip 95.69.136.0 0.0.7.255 172.32.0.0 0.31.255.255
+
permit ip any 172.32.0.0 0.31.255.255
permit ip 95.69.136.0 0.0.7.255 172.64.0.0 0.63.255.255
+
permit ip any 172.64.0.0 0.63.255.255
permit ip 95.69.136.0 0.0.7.255 172.128.0.0 0.127.255.255
+
permit ip any 172.128.0.0 0.127.255.255
permit ip 95.69.136.0 0.0.7.255 173.0.0.0 0.255.255.255
+
permit ip any 173.0.0.0 0.255.255.255
permit ip 95.69.136.0 0.0.7.255 174.0.0.0 1.255.255.255
+
permit ip any 174.0.0.0 1.255.255.255
permit ip 95.69.136.0 0.0.7.255 176.0.0.0 15.255.255.255
+
permit ip any 176.0.0.0 15.255.255.255
permit ip 95.69.136.0 0.0.7.255 192.0.0.0 0.127.255.255
+
permit ip any 192.0.0.0 0.127.255.255
permit ip 95.69.136.0 0.0.7.255 192.128.0.0 0.31.255.255
+
permit ip any 192.128.0.0 0.31.255.255
permit ip 95.69.136.0 0.0.7.255 192.160.0.0 0.7.255.255
+
permit ip any 192.160.0.0 0.7.255.255
permit ip 95.69.136.0 0.0.7.255 192.169.0.0 0.0.255.255
+
permit ip any 192.169.0.0 0.0.255.255
permit ip 95.69.136.0 0.0.7.255 192.170.0.0 0.1.255.255
+
permit ip any 192.170.0.0 0.1.255.255
permit ip 95.69.136.0 0.0.7.255 192.172.0.0 0.3.255.255
+
permit ip any 192.172.0.0 0.3.255.255
permit ip 95.69.136.0 0.0.7.255 192.176.0.0 0.15.255.255
+
permit ip any 192.176.0.0 0.15.255.255
permit ip 95.69.136.0 0.0.7.255 192.192.0.0 0.63.255.255
+
permit ip any 192.192.0.0 0.63.255.255
deny ip 95.69.136.0 0.0.7.255 host 193.33.48.33
+
deny ip any host 193.33.xx.xx
deny ip 95.69.136.0 0.0.7.255 host 193.33.49.160
+
deny ip any host 193.33.xx.xx
deny ip 95.69.136.0 0.0.7.255 host 193.33.48.10
+
permit ip any 193.0.0.0 0.255.255.255
permit ip 95.69.136.0 0.0.7.255 193.0.0.0 0.255.255.255
+
permit ip any 194.0.0.0 1.255.255.255
permit ip 95.69.136.0 0.0.7.255 194.0.0.0 1.255.255.255
+
permit ip any 196.0.0.0 3.255.255.255
permit ip 95.69.136.0 0.0.7.255 196.0.0.0 3.255.255.255
+
permit ip any 200.0.0.0 7.255.255.255
permit ip 95.69.136.0 0.0.7.255 200.0.0.0 7.255.255.255
+
permit ip any 208.0.0.0 15.255.255.255
permit ip 95.69.136.0 0.0.7.255 208.0.0.0 15.255.255.255
+
permit ip any 248.0.0.0 7.255.255.255
permit ip 95.69.136.0 0.0.7.255 248.0.0.0 7.255.255.255
 
 
</PRE>
 
</PRE>

Версия 12:11, 26 мая 2009

Policy Routing

Маршрутизация на основе политики (Policy Routing) - это маршрутизация при которой критерием для выбюора next-hop служит не адрес получателя а некотрое устивие (в случае с cisco - описанное в route-map) На коммутаторах есть особенность, способная доставить немало головной боли. Дело в том, что в ACL которая является критерием выбора для route-map все вхождения deny обрабатываются программно, с соответвующей деградацией производительности.

Примеры использования

Для всех пакетов попавших в PBR_ACL установить next-hop 172.16.1.1 (т.е. использовать альтернативный шлюз)

route-map PBR permit 10
 match ip address PBR_ACL
 set ip next-hop 172.16.1.1

Если я хочу написать ACL вида:

  • Для всех пакетов идущих на "серые" (192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8) сети использовать стандартную таблицу маршутизации
  • Для всех пакетов идущих на ДНС-сервера использовать стандартную таблицу маршутизации
  • Для остальных (уходящих в "Мир") использовать шлюз 172.16.1.1

Есть 2 варианта, оба абсолюьно рабочих, но производительностью они будут отличаться в разы.
Первый - использовать простой ACL

ip access-list extended DIMAR-PBR-Test
 deny   ip any 192.168.0.0 0.0.255.255
 deny   ip any 172.16.0.0 0.15.255.255
 deny   ip any 10.0.0.0 0.255.255.255
 deny   ip host 193.33.хх.хх 10.0.0.0 0.255.255.255
 deny   ip host 193.33.хх.хх 10.0.0.0 0.255.255.255
 permit ip host any any

В этом случае будем наблюдать увеличение счетчиков срабатывания ACL что применительно к коммутаторам говорит о том, что пакеты были обработаны программно. Пропорционально траффику растет загрузка процессора.

Второй вариант

ip access-list extended PBR_Universal
 permit ip any 0.0.0.0 7.255.255.255
 permit ip any 8.0.0.0 1.255.255.255
 permit ip any 11.0.0.0 0.255.255.255
 permit ip any 0.0.7.255 12.0.0.0 3.255.255.255
 permit ip any 16.0.0.0 15.255.255.255
 permit ip any 32.0.0.0 31.255.255.255
 permit ip any 64.0.0.0 15.255.255.255
 permit ip any 80.0.0.0 7.255.255.255
 permit ip any 88.0.0.0 3.255.255.255
 permit ip any 0.0.0.0 255.0.0.0
 permit ip any 95.0.0.0 0.63.255.255
 permit ip any 95.64.0.0 0.3.255.255
 permit ip any 95.68.0.0 0.0.255.255
 permit ip any 95.69.0.0 0.0.127.255
 permit ip any 95.70.0.0 0.1.255.255
 permit ip any 95.72.0.0 0.7.255.255
 permit ip any 95.80.0.0 0.15.255.255
 permit ip any 96.0.0.0 15.255.255.255
 permit ip any 112.0.0.0 7.255.255.255
 permit ip any 120.0.0.0 3.255.255.255
 permit ip any 124.0.0.0 1.255.255.255
 permit ip any 126.0.0.0 0.255.255.255
 permit ip any 128.0.0.0 31.255.255.255
 permit ip any 160.0.0.0 7.255.255.255
 permit ip any 168.0.0.0 3.255.255.255
 permit ip any 172.0.0.0 0.15.255.255
 permit ip any 172.32.0.0 0.31.255.255
 permit ip any 172.64.0.0 0.63.255.255
 permit ip any 172.128.0.0 0.127.255.255
 permit ip any 173.0.0.0 0.255.255.255
 permit ip any 174.0.0.0 1.255.255.255
 permit ip any 176.0.0.0 15.255.255.255
 permit ip any 192.0.0.0 0.127.255.255
 permit ip any 192.128.0.0 0.31.255.255
 permit ip any 192.160.0.0 0.7.255.255
 permit ip any 192.169.0.0 0.0.255.255
 permit ip any 192.170.0.0 0.1.255.255
 permit ip any 192.172.0.0 0.3.255.255
 permit ip any 192.176.0.0 0.15.255.255
 permit ip any 192.192.0.0 0.63.255.255
 deny   ip any host 193.33.xx.xx
 deny   ip any host 193.33.xx.xx
 permit ip any 193.0.0.0 0.255.255.255
 permit ip any 194.0.0.0 1.255.255.255
 permit ip any 196.0.0.0 3.255.255.255
 permit ip any 200.0.0.0 7.255.255.255
 permit ip any 208.0.0.0 15.255.255.255
 permit ip any 248.0.0.0 7.255.255.255