Резервирование внешних каналов связи (интернет провайдеров или ISP) обеспечивается без использования динамических протоколов маршрутизации в режиме активный/резервный (active/passive).
Переключение между каналами корректно функционирует только в том случае, если используется резервирование маршрута по умолчанию.
1. Задайте IP-адрес (цель), по доступности которого посредством протокола ICMP будет определяться состояние канала (в данном сценарии для такой цели будет выбран IP-адрес HTTP-сервера для распространения списка отозванных сертификатов):
esr:hub# configure
esr:hub(config)# wan load-balance target-list host_in_internet
esr:hub(config-wan-target-list)# target 1
esr:hub(config-wan-target)# ip address 172.17.10.100
esr:hub(config-wan-target)# enable
esr:hub(config-wan-target)# exit
esr:hub(config-wan-target-list)# exit
2. Задайте на внешних интерфейсах следующие настройки: IP-адрес маршрутизатора по умолчанию (nexthop); IP-адрес, который будет использоваться в качестве источника для ICMP пакетов (source-address); список с IP-адресами, доступность которых нужно контролировать (target-list):
esr:hub(config)# interface gigabitethernet 1/0/1
esr:hub(config-if-gi)# wan load-balance nexthop 172.16.15.1
esr:hub(config-if-gi)# wan load-balance source-address 172.16.15.2
esr:hub(config-if-gi)# wan load-balance target-list host_in_internet
esr:hub(config-if-gi)# wan load-balance enable
esr:hub(config-if-gi)# exit
esr:hub(config)# interface gigabitethernet 1/0/2
esr:hub(config-if-gi)# wan load-balance nexthop 172.16.16.1
esr:hub(config-if-gi)# wan load-balance source-address 172.16.16.2
esr:hub(config-if-gi)# wan load-balance target-list host_in_internet
esr:hub(config-if-gi)# wan load-balance enable
esr:hub(config-if-gi)# exit
3. Добавьте маршрут по умолчанию, ссылающийся на правило, в котором далее будут заданы сетевые интерфейсы и дополнительные параметры:
esr:hub(config)# ip route 0.0.0.0/0 wan load-balance rule 1
4. Создайте правило (параметр failover cgw-notify отвечает за удаление старых ISAKMP/IPsec SA и очистку таблицы NAT трансляций при переключении маршрута через интерфейс; цифра после имени интерфейса – вес/приоритет) и примените настройки:
esr:hub(config)# wan load-balance rule 1
esr:hub(config-wan-rule)# failover
esr:hub(config-wan-rule)# failover cgw-notify
esr:hub(config-wan-rule)# outbound interface gigabitethernet 1/0/1 255
esr:hub(config-wan-rule)# outbound interface gigabitethernet 1/0/2
esr:hub(config-wan-rule)# enable
esr:hub(config-wan-rule)# end
esr:hub# commit
esr:hub# confirm
Запрещено создавать несколько правил с параметром failover cgw-notify, так как корректная работа в этом случае не гарантируется.
В случае доступности по ICMP IP-адреса 172.17.10.100 через сетевой интерфейс gigabitethernet 1/0/1 на консоль будет выведено сообщение о добавлении маршрута через данный интерфейс (имя интерфейса выводится в cisco-like нотации, так как за удаление старых ISAKMP/IPsec SA и очистку таблицы NAT трансляций отвечает модуль CGW):
MultiWAN (cgw-notify): setting routes via GigabitEthernet1/1
5. Убедитесь, что маршрут по умолчанию добавлен через сетевой интерфейс gigabitethernet 1/0/1:
esr:hub# show ip route
Codes: C - connected, S - static, R - RIP derived,
O - OSPF derived, IA - OSPF inter area route,
E1 - OSPF external type 1 route, E2 - OSPF external type 2 route
B - BGP derived, D - DHCP derived, K - kernel route,
* - FIB route
S * 0.0.0.0/0 [1/0] via 172.16.15.1 on gi1/0/1 [static 09:18:39]
C * 192.168.20.0/24 [0/0] dev br1 [direct 15:03:39]
C * 172.16.15.0/24 [0/0] dev gi1/0/1 [direct 22:15:47]
C * 172.16.16.0/24 [0/0] dev gi1/0/2 [direct 15:03:40]