08.12.2016

Как настроить Cisco для работы основного и бэкапного каналов

From: fenix2 <fenix111@mail.ru.>
Newsgroups: email
Date: Mon, 24 Oct 2007 14:31:37 +0000 (UTC)
Subject: Как настроить Cisco для работы основного и бэкапного каналов.


ip sla или как сделать чтобы красиво работал основный\бэкапный каналы без BGP.


Итак, у нас есть маршрутизатор Cisco и 2 канала, основной и бэкапный. 

Мы хотим 

1. чтобы когда отваливался основной, работал бэкапный (и когда основной
поднялся, маршрут обратно переписывался на него)

2. чтобы нагрузка между ними балансировалась (и с PBR в том числе).
Опять же, при падении провайдера трафик не него не должен ходить.

Оба провайдера у нас через ethernet, и статический маршрут не исчезнет
при падении провайдера.

Настроим IP SLA для проверки доступности провайдеров
(пингуем наши дефолт-гейтвеи)

        ip sla 1
        icmp-echo 80.91.170.13 source-interface GigabitEthernet0/1  
        timeout 2000  
        frequency 3 
        ip sla schedule 1 life forever start-time now

        ip sla 2
        icmp-echo 83.218.239.13 source-interface GigabitEthernet0/2  
        timeout 2000  
        frequency 3 
        ip sla schedule 2 life forever start-time now

        track 1 rtr 1 reachability
        track 2 rtr 2 reachability


Метод icmp-echo не очень хорош, т.к. при пропадании одного icmp пакета,
что случается чаще чем я думал (можно глянуть коммандой show track), 
идёт переключение маршрута(об этом чуть позже). Лучше использовать, icmp-jitter 
(доступен с только с 12.4Т), тк. он пускает несколько пакетов.
Например:

        ip sla 1
          icmp-jitter 80.91.170.13 source-ip 80.91.170.14 num-packets 5
          timeout 2
          frequency 4
        ip sla schedule 2 life forever start-time now

        ip sla 2
          icmp-jitter 83.218.239.13 source-ip 83.218.239.14 num-packets 5
          timeout 2
          frequency 4
        ip sla schedule 2 life forever start-time now


И собственно добавим статические маршруты на провайдеров.

        ip route 0.0.0.0 0.0.0.0 80.91.170.13 50 track 1 (основной провайдер, AD 50)
        ip route 0.0.0.0 0.0.0.0 83.218.239.13 100 track 2 (бэкапный, AD 100)


Если нету ответа на эхо запрос от провайдера, статический маршрут
убирается.

При отсутствии AD (Administrative Distance) в ip route у статических маршрутов будет load blancing
(per destanation, при влючённом ip cef. Т.е. на один dst-ip всё поёдет через одного провайдера, на другой dst-ip через другого)

Добавим еще PolicyBasedRouting (если у нас не симметричные каналы, или мы хотим чтобы
некоторые внутренние хосты выходили через конкретного провайдера, а в
случае его падения через бэкапного). В route-map выставляется приоритет
на лучшего провайдера.

рисуем рoут мап

        route-map 115 permit 10
        match ip address 115
        set ip next-hop verify-availability 80.91.170.13 10 track 1
        set ip next-hop verify-availability 83.218.239.13 20 track 2


указывем в acl внутренних хостов

        access-list 115 permit ip host 192.168.0.15 any
        access-list 115 permit ip host 192.168.10.2 any
        access-list 115 permit ip host 192.168.0.161 any


И вешаем 

        ip policy route-map 115


На интерфейс который смотрит в локалку.

При такой конфигурации переход на живого провайдера происходит примерно
за время timeout в ip sla, т.е. 2 секунды.