Как то в небольшом оффисе понадобилось подключить резервный интернет провайдер, на случай падения основного. Получился следующий конфиг:
Для примера:
ISP1 ip — 1.1.1.2, gateway — 1.1.1.1 (интерфейс fa0/0)
ISP2 ip — 2.2.2.2 gateway — 2.2.2.1 (интерфейс fa0/1)
Локальная сеть: 192.168.1.0/24 (интерфейс vlan1)
Создаем access-list для NAT и route-map правил, а так же конфигурируем интерфейсы:
ip access-list extended NAT
permit ip 192.168.1.0 0.0.0.255 any
route-map RM-NAT-ISP01 permit 10
match ip address NAT
match interface FastEthernet0/0
route-map RM-NAT-ISP02 permit 10
match ip address NAT
match interface FastEthernet0/1
interface FastEthernet0/0
description ISP1
ip address 1.1.1.2 255.255.255.252
ip nat outside
interface FastEthernet0/1
description ISP2
ip address 2.2.2.2 255.255.255.252
ip nat outside
interface Vlan1
ip address 192.168.1.1 255.255.255.0
ip nat inside
ip nat inside source route-map RM-NAT-ISP01 interface FastEthernet0/0 overload
ip nat inside source route-map RM-NAT-ISP02 interface FastEthernet0/1 overload
Теперь создаем ip sla для тестирования доступности основного канала. В качесте тестирования будем пинговать DNS сервер google : 8.8.8.8 .
ip sla 10
icmp-echo 8.8.8.8 source-interface FastEthernet0/0
timeout 1000
frequency 10
ip sla schedule 10 life forever start-time now
track 1 rtr 10 reachability
Создаем правило для маршрутизации
ip route 0.0.0.0 0.0.0.0 1.1.1.1 track 1
ip route 0.0.0.0 0.0.0.0 2.2.2.1 2
Последний штрих. При переключении провайдеров, у нас будет подвисать NAT таблица, поэтому ее надо в эти моменты отчищать.
event manager applet NatClear
event track 1 state any
action 0.9 cli command "enable"
action 1.0 cli command "clear ip nat translation *"
action 2.0 cli command "clear ip nat translation forced"
И на заметку. Подобный конфиг был сделан для допотопного 1841 роутера. Так как на роутере небыло достаточно памяти чтоб обновить ios до 15 версии (где включена поддержка ip sla) то пришлось искать прошивку 12 ios с поддержкой ip sla. Такая нашлась в тесовой версии c1841-advipservicesk9-mz.124-9.T1.bin
Напоминаю что тестовые прошивки лучше не использовать.
Thank you!!1