Вы здесь

Автопереключение между двумя провайдерами

Для повышенной надежности часто практикуют подключение к двум провайдерам одновременно.
Cisco IOS позволяет обеспечить автоматическое переключение с основного провайдера на резервный.

Мониторинг:
Для того чтобы понять работает интернет через ISP1 или нет, будем через него мониторить через пинг какой нибудь ресурс.
Возьмем к примеру внешний адрес 85.202.241.71
Для мониторнга этот ресурс необходимо смаршрутизировать только через ISP1
ip route 85.202.241.71 255.255.255.255 a.a.a.1

access-list 101 permit icmp any host 85.202.241.71 echo

route-map echo permit 10
match ip address 101
set interface GigabitEthernet0/2

ip local policy route-map echo

Собственно сам мониторинг организовывается через IP SLA:
track 123 ip sla 1 reachability

ip sla 1
icmp-echo 85.202.241.71 source-ip a.a.a.2
timeout 1000
threshold 3
frequency 5

ip sla schedule 1 life forever start-time now

Маршрутизация:
ip route 0.0.0.0 0.0.0.0 a.a.a.1 track 123
ip route 0.0.0.0 0.0.0.0 b.b.b.1 254

Таким образом если track 123 живой - у нас пропишется первый маршрут, т.к. у второго Administratove Distance 254 а у первого 1. При пропадании же track123 в таблицу пропишется второй маршрут

Трансляция:
route-map isp2 permit 10
match ip address NAT_Rules
match interface GigabitEthernet0/1

route-map isp1 permit 10
match ip address NAT_Rules
match interface GigabitEthernet0/2

ip nat inside source route-map isp2 interface GigabitEthernet0/1 overload
ip nat inside source route-map isp1 interface GigabitEthernet0/2 overload

ip access-list extended NAT_Rules
permit ip 192.168.100.0 0.0.0.255 any

Данная конструкция необходима для корректной работы NAT, который должен привязываться к разным интерфейсам при работе с разными провайдерами.

Для сброса NAT сессий при переключении, добавим следующее:
event manager applet ISP_SWITCHED_20
event track 123 state any
action 1.0 cli command «enable»
action 2.0 cli command «clear ip nat trans forced»

Пример рабочего конфига

Система проверяет на доступность 4 разных внешних IP через основного провайдера. Если все они будут недоступны, основной провайдер будет считаться сбойным и произойдет переключение на резервный.
Предусмотрено переключение натирования внутренних пользователей, а также удаление старых сессий трансляции.

a.a.a.10 - адрес от основного ISP
a.a.a.1 - DG от основного ISP

b.b.b.10 - адрес от резервного ISP
b.b.b.1 - DG от резервного ISP

ip access-list extended echo_check
permit icmp any host 8.8.8.8 echo
permit icmp any host 62.141.69.157 echo
permit icmp any host 93.186.61.38 echo
permit icmp any host 85.202.241.71 echo

route-map echo_rm permit 10
match ip address echo_check
set ip next-hop a.a.a.1

ip local policy route-map echo_rm

ip sla 1
icmp-echo 8.8.8.8 source-ip a.a.a.10
ip sla schedule 1 life forever start-time now
ip sla 2
icmp-echo 62.141.69.157 source-ip a.a.a.10
ip sla schedule 2 life forever start-time now
ip sla 3
icmp-echo 93.186.61.38 source-ip a.a.a.10
ip sla schedule 3 life forever start-time now
ip sla 4
icmp-echo 85.202.241.71 source-ip a.a.a.10
ip sla schedule 4 life forever start-time now

track 1 ip sla 1 reachability
delay down 30 up 30

track 2 ip sla 2 reachability
delay down 30 up 30

track 3 ip sla 3 reachability
delay down 30 up 30

track 4 ip sla 4 reachability
delay down 30 up 30

track 5 list boolean or
object 1
object 2
object 3
object 4

ip route 0.0.0.0 0.0.0.0 a.a.a.1 track 5
ip route 0.0.0.0 0.0.0.0 b.b.b.1 254

route-map isp2 permit 10
match ip address acl_nat_rules
match interface FastEthernet0/0/0

route-map isp1 permit 10
match ip address acl_nat_rules
match interface FastEthernet0/0/1

ip nat inside source route-map isp1 interface FastEthernet0/0/1 overload
ip nat inside source route-map isp2 interface FastEthernet0/0/0 overload

ip access-list extended acl_nat_rules
permit ip 192.168.100.0 0.0.0.255 any

event manager applet ISP_SWITCHED_20
event track 5 state any
action 1.0 cli command "enable"
action 2.0 cli command "clear ip nat trans forced"

Проверка

show ip sla statistics
show track 123

Внешние IP адреса для теста

Для теста удобны следующие адреса:

Сервис-провайдер: Google
8.8.8.8
8.8.4.4

Сервис-провайдер: vnsc-pri.sys.gtei.net
4.2.2.1
4.2.2.3
4.2.2.4
4.2.2.5
4.2.2.6

Сервис-провайдер: OpenDNS
208.67.222.222
208.67.220.220

yandex.ru
77.88.8.8
77.88.8.1
213.180.193.11
93.158.134.11
213.180.204.11

mail.ru
94.100.180.200
94.100.180.202
217.69.139.200
217.69.139.202

Комментарии