CISCO: IP SLA, Track, Embedded Event Manager, Route-map, два провайдера
Два провайдера и CISCO роутер
IP SLA - позволяет создавать тесты Enhanced Object Tracking (Track) — отслеживает состояние выбранного объекта EEM (Embedded Event Manager) - отслеживает события в логах, по возникновению исполнит заданную последовательность действий Route-map - маршрут на основе правил
Пример (роутер и два провайдера, в случае падения изменяем основной маршрут):
!
!
interface FastEthernet0/0
description LAN
ip address 172.16.0.1 255.255.255.0
ip nat inside
ip policy route-map FastEthernet0.0-nexthop
!
interface FastEthernet0/1
description ISP1
ip address 1.1.1.2 255.255.255.252
ip nat outside
!
interface FastEthernet0/2
description ISP2
ip address 2.2.2.2 255.255.255.252
ip nat outside
!
access-list 172 permit ip 172.16.0.0 0.0.0.255 any
access-list 172 deny ip any any
!
!
ip sla 1
icmp-echo 8.8.8.8 source-interface FastEthernet0/1
threshold 1000
timeout 1500
frequency 3
!
ip sla schedule 1 life forever start-time now
!
ip sla 2
icmp-echo 8.8.8.8 source-interface FastEthernet0/2
threshold 1000
timeout 1500
frequency 3
!
ip sla schedule 2 life forever start-time now
!
!
track 1 ip sla 1 reachability
delay down 15 up 10
!
track 2 ip sla 2 reachability
delay down 15 up 10
!
!
ip route 0.0.0.0 0.0.0.0 1.1.1.1 10 track 1
ip route 0.0.0.0 0.0.0.0 2.2.2.1 20 track 2
ip route 0.0.0.0 0.0.0.0 1.1.1.1 254
!
!
route-map ISP_1 permit 10
match ip address 172
match interface FastEthernet0/1
!
route-map ISP_2 permit 10
match ip address 172
match interface FastEthernet0/2
!
route-map FastEthernet0.0-nexthop permit 10
set ip next-hop verify-availability 1.1.1.1 1 track 1
set ip next-hop verify-availability 2.1.1.1 2 track 2
!
!
event manager applet DOWN_and_UP
event track 1 state any
action 1.0 cli command "clear ip nat translation forced"
!
!
ip nat inside source route-map ISP_1 interface FastEthernet0/1 overload
ip nat inside source route-map ISP_2 interface FastEthernet0/2 overload
!
Сдесь:
Тест IP SLA (Проверка доступности google) threshold - указания верхнего порога значения времени, timeout - задержка, frequency - частота
Рекомендация настройки параметров - "frequency seconds" больше "timeout milliseconds" больше "threshold milliseconds"
!
ip sla 1
icmp-echo 8.8.8.8 source-interface FastEthernet0/1
threshold 1000
timeout 1500
frequency 3
!
ip sla schedule 1 life forever start-time now
!
ip sla 2
icmp-echo 8.8.8.8 source-interface FastEthernet0/2
threshold 1000
timeout 1500
frequency 3
!
ip sla schedule 2 life forever start-time now
!
TRACK (связываем с нашим sla тестом, задержка срабатывания на down - 15, up - 10 секунд)
Параметр state: Up — код OK, Down — другие коды
Параметр reachability: Up — код OK или код OverThreshold, Down — другие коды
!
track 1 ip sla 1 reachability
delay down 15 up 10
!
track 2 ip sla 2 reachability
delay down 15 up 10
!
EEM событие (тест провалился - в свойствах меняем маршрут на второго провайдера)
!
event manager applet DOWN_and_UP
event track 1 state any
action 1.0 cli command "clear ip nat translation forced"
!
Route-map - управляем информацией в таблице маршрутизации на основании показаний триггеров
!
route-map FastEthernet0.0-nexthop permit 10
set ip next-hop verify-availability 1.1.1.1 1 track 1
set ip next-hop verify-availability 2.1.1.1 2 track 2
! Тут:
set ip next-hop verify-availability 1.1.1.1 10 track 1 – устанавливает next-hop на 1.1.1.1 по значении track 1 - "up", имеет приоритет 10
set ip next-hop verify-availability 2.1.1.1 20 track 2 - устанавливает next-hop на 2.1.1.1 по значении track 2 - "up", имеет приоритет 20
Route-map назначаем на ВХОДЯЩИЙ интерфейс:
!
interface FastEthernet0/0
description LAN
ip address 172.16.0.1 255.255.255.0
ip nat inside
ip policy route-map FastEthernet0.0-nexthop
!
В итоге весь траффик локальной сети маршрутизируется в соответствии с route-map, контролируясь таблицей маршрутизации
Дебаг:
sh ip sla summary
sh ip sla statistics 1
sh ip sla statistics details
sh track
sh track brief
show ip nat translations