В свое время столкнулся с задачей, довольно редкой, на мой взгляд, - наличие более одного выхода в Интернет и другие внешние сети у организации. А главное - необходимость разрулить трафик не по назначению, а по источнику, и при этом организовать достаточно надежное соединение.
Вот как это стало выглядеть в последствии:
Схема
Но изначально все было более чем печально. Часть "хвостов" от провайдеров висели в воздухе, что-то было подключено вообще напрямую в сеть, а что-то было воткнуто в сервера. Ни NAT, ни какой либо иной защиты просто напросто не было. При том, что серверов хватало, на которых можно было бы настроить прокси, и циски были, они просто пылились в углу, а часть лежала еще дальше и в коробках. Люди просто не знали, что с этим добром делать!
В первую очередь пришлось построить защиту на базе 2811 и MS ISA сервере, а в последствии развернуть ядро на базе 3750. Много времени ушло на построение и перестроение локальной сети, но потом пришлось заняться внешними каналами. Как выяснилось, использовался не самый производительный канал, да и нагрузка на сеть постоянно росла.
Задачи стояли следующие:
Сие действа можно было организовать с помощью цисок и волшебного route-map (карты маршрутов).
После долгого курения манов я сходил к знающим людям и поспрашал их немного, т.к. у меня не "клеились" настройки. Спрашивал я тут - http://www.certification.ru/cgi-bin/forum.cgi?action=thread&id=36807, а получив совет - все доделал и поблагодарил добрых людей.
Итак, немного из того самого обсуждения и пошаговая стратегия (на примере 3750 Router из схемы выше):
interface GigabitEthernet1/0/1
switchport trunk encapsulation dot1q
switchport mode trunk
interface Vlan1
description LAN
ip address 192.168.250.2 255.255.0.0
interface Vlan550
description Main Routing
ip address 172.30.8.2 255.255.252.0
sdm prefer routing
, чтобы циска однозначно использовала маршрутизацию, а не коммутацию. (на маршрутизаторах этот шаг как правило не нужен, там изначально все настроено на маршрутизацию)ip classless
ip route 0.0.0.0 0.0.0.0 172.30.8.10
ip route 172.16.0.0 255.255.0.0 172.30.8.1 name LAN
( 172.30.8.1 - адрес 3750 Core )access-list 101 remark .
access-list 101 remark Route through PROXY 172.30.8.10
access-list 101 permit ip 172.16.0.0 0.0.255.255 any
access-list 101 permit ip 192.168.0.0 0.0.255.255 any
access-list 125 remark .
access-list 125 remark Route through PROXY 192.168.0.9
access-list 125 remark . TO Biblio Sites
access-list 125 permit ip any host 160.109.109.143
access-list 125 permit ip any host 198.81.200.2
access-list 125 remark . FROM Other
access-list 125 permit ip host 172.16.32.128 any
access-list 125 permit ip host 172.16.251.11 any
access-list 125 remark . FROM Servers
access-list 125 permit ip host 192.168.0.5 any
access-list 135 remark .
access-list 135 remark Route through PIX 172.30.8.5
access-list 135 remark . sites
access-list 135 permit ip any 10.36.173.0 0.0.0.255
access-list 135 remark . transplant COD
access-list 135 permit ip any host 87.245.138.172
access-list 135 remark . 1C reg
access-list 135 permit ip any host 194.190.207.41
access-list 135 remark . servers
access-list 135 permit ip host 192.168.0.251 any
access-list 135 permit ip host 172.16.254.3 any
access-list 135 remark . admins
access-list 135 permit ip host 172.16.32.2 any
access-list 135 permit ip host 172.16.32.5 any
access-list 135 remark . users other
access-list 135 permit ip host 172.16.52.99 any
access-list 145 remark .
access-list 145 remark Siemens route through 192.168.0.21
access-list 145 permit ip host 172.16.115.2 any
access-list 145 permit ip host 172.16.115.3 any
route-map MAIN permit 10
description Siemens
match ip address 145
set ip next-hop 192.168.0.21
route-map MAIN permit 20
description ISA_2
match ip address 125
set ip next-hop 192.168.0.9
route-map MAIN permit 30
description 2801
match ip address 135
set ip next-hop 172.30.8.5
route-map MAIN permit 40
description ISA_1
match ip address 101
set ip next-hop 172.30.8.10
interface Vlan550
ip policy route-map MAIN
Главное в этой истории то, что в случае если Вы измените хотя бы на символ саму карту - придется откручивать и прикручивать заново ее к интерфейсу, иначе все перестанет работать.
А вот при любом изменении ACL ничего страшного не происходит и, соответственно, если нужно что-то куда-то перенаправить, просто вносите изменения в них и все, процесс будет работать.
Disclaimer
Как говорили добрые люди - PBR - это зло, тем более для каталиста. Во всех мануалах его рекомендуют использовать в самых крайних случаях. Так что если вдруг загрузка CPU подскочит до 100 % - не удивляйтесь.
Именно по этой причине данный сервис был поднят мною не на сетевом ядре, а в стороне от него.