Настройка маршрутизатора CISCO на работу с несколькими провайдерами по технологии VRF Lite + EVN RR. Резервирование канала (Failover), разделение трафика между провайдерами.

Рассмотрим вариант настройки маршрутизаторов CISCO, с использованием нескольких провайдеров, в режиме резервирования каналов и с возможностью разделения трафика между провайдерами.

 

В настройке будет использоваться технологии VRF Lite (Virtual Routing and Forwarding) в связке с EVN RR (Easy Virtual Network Route Replicate).

 

Исходные данные:

  • Маршрутизатор Cisco 2911/K9 версия прошивки 15.4(3)M9 (c2900-universalk9-mz.SPA.154-3.M9.bin)
  • Первый провайдер ISP1 — VLAN100 (77.77.77.2/30)
  • Второй провайдер ISP2 — VLAN200 (88.88.88.2/30)
  • Служебная сеть VLAN9 (10.10.9.0/30)
  • Локальные сети VLAN10 (10.10.10.0/24), VLAN11 (10.10.11.0/24)

 

Создание виртуальных интерфейсов (VRF)

Создаём виртуальные маршрутизаторы (VRF) и указываем кто с кем обменивается таблицами маршрутизации:

  • LAN — обменивается маршрутами с обоими провайдерами (ISP1, ISP2)
  • ISP1, ISP2 — обмениваются с LAN

 

Настройка физических интерфейсов

Настраиваем интерфейсы. Так как используются VLAN, то необходимо создать SUB-интерфейс для каждого VLAN, указать инкапсуляцию, привязывать виртуальные маршрутизаторы (VRF) к соответствующим интерфейсам, присвоить IP-адреса, указать NAT (inside — для локальной сети, outside — для внешней сети):

 

 

Проверка на доступность

Перед тем как прописать маршруты по-умолчанию, добавим проверку на доступность (IP SLA) провайдера (ISP1). Это необходимо для реализации резервирования каналов.

 

Настройка маршрутизации

Прописываем маршруты по-умолчанию, для каждого провайдера (ISP1, ISP2) и маршруты в локальные сети (10.10.10.0/24, 10.10.11.0/24).

 

Реализуем резервирование интернет канала, для этого маршрут по-умолчанию для второго провайдера (ISP2) укажем с дистанцией 10, а на маршрут по-умолчанию для первого провайдера (ISP1) повесим проверку доступности (IP SLA) канала. Так же добавим статический маршрут через первого провайдера (ISP1) до 8.8.4.4, для корректной работы проверки доступности (IP SLA):

 

Настройка NAT

Выполним настройку NAT, так чтобы при необходимости было легко расширить, прим. добавить новые подсети в NAT и т.д.

 

Создадим две группы объектов, первая (NAT-DENY) для запрета NAT, вторая (NAT-PERMIT) для разрешения NAT:

 

Создаем список доступа, в который сперва добавляем запрещающее правило для группы объектов NAT-DENY, затем разрешающее правило правило для NAT-PERMIT:

 

Делаем карты маршрутизации для каждого провайдера:

 

Добавляем NAT правила:

 

Очистка APR

При срабатывании (IP SLA) теста и переключении маршрута по-умолчанию, необходимо сбрасывать текущие NAT сессии, для этого добавим следующие правило:

 

На этом настройка маршрутизатора на работу с несколькими провайдера выполнена.

 

[spoiler title=’Конфигурация’ style=’default’ collapse_link=’true’]vrf definition ISP1
!
address-family ipv4
route-replicate from vrf LAN unicast all
exit-address-family
!
vrf definition ISP2
!
address-family ipv4
route-replicate from vrf LAN unicast all
exit-address-family
!
vrf definition LAN
!
address-family ipv4
route-replicate from vrf ISP1 unicast all
route-replicate from vrf ISP2 unicast all
exit-address-family
!
object-group network NAT-DENY
!
object-group network NAT-PERMIT
10.10.9.0 255.255.255.240
10.10.10.0 255.255.255.0
10.10.11.0 255.255.255.0
!
track 10 ip sla 10 reachability
delay down 20 up 10
!
interface GigabitEthernet0/0.9
description LAN GATEWAY
encapsulation dot1Q 9
vrf forwarding LAN
ip address 10.10.9.1 255.255.255.240
ip nat inside
ip virtual-reassembly in
!
interface GigabitEthernet0/1.100
description PRIMARY INTERNET
encapsulation dot1Q 100
vrf forwarding ISP1
ip address 77.77.77.2 255.255.255.252
ip nat outside
ip virtual-reassembly in
!
interface GigabitEthernet0/2.200
description SECONDARY INTERNET
encapsulation dot1Q 200
vrf forwarding ISP2
ip address 88.88.88.2 255.255.255.252
ip nat outside
ip virtual-reassembly in
!
ip nat inside source route-map ISP1-NAT interface GigabitEthernet0/1.100 vrf LAN overload
ip nat inside source route-map ISP2-NAT interface GigabitEthernet0/2.200 vrf LAN overload
ip route vrf ISP1 0.0.0.0 0.0.0.0 77.77.77.1 track 10
ip route vrf ISP1 8.8.4.4 255.255.255.255 77.77.77.1
ip route vrf ISP2 0.0.0.0 0.0.0.0 88.88.88.1 10
!
ip access-list extended NAT
deny ip object-group NAT-DENY any
permit ip object-group NAT-PERMIT any
!
ip sla 10
icmp-echo 8.8.4.4 source-interface GigabitEthernet0/1.100
vrf ISP1
threshold 1000
timeout 1500
frequency 3
ip sla schedule 10 life forever start-time now
!
route-map ISP1-NAT permit 10
match ip address NAT
match interface GigabitEthernet0/1.100
!
route-map ISP2-NAT permit 10
match ip address NAT
match interface GigabitEthernet0/2.200
!
event manager applet CLR_NAT_10
event track 10 state any
action 10 cli command «enable»
action 20 cli command «clear ip nat translation *»
![/spoiler]

 

Разделение трафика между каналами

Рассмотрим как в приведенной выше конфигурации использовать не только резервирование канала, но и возможность разделать трафик между каналами. Для реализации данной задачи будем использовать PBR (Policy Base Routing).

 

Задача:

  • Выход в интернет из подсети 10.10.10.0/24, осуществлять через ISP1
  • Выход в интернет из подсети 10.10.11.0/24, осуществлять через ISP2
  • Доступ в интерент с IP-адреса 10.10.11.5, осуществлять через ISP1

Создаем группы объектов, по каким портам мы будем разделять трафик. В примере мы будем разделять трафик по WEB портам (80, 8080, 443):

 

Создаем группы объектов, для определения принадлежности IP-адресации к тому или иному каналу.

  • ISP1-DENY, ISP2-DENY — для запрета прохождения трафика через ISP1/ISP2
  • ISP1-PERMIT, ISP2-PERMIT — для разрешения прохождения трафика через ISP1/ISP2

 

Создаем списки доступа (ACL), для каждого провайдера (ISP1, ISP2) на основе ранее созданных групповых объектов. Сперва указывается запрещающее правило, затем разрешающее:

 

Добавим проверку на доступность (IP SLA) провайдера (ISP2). Это нужно для исключения ситуации, когда канал будет не доступен, а маршруты будут направляться через него.

 

Добавляем карты маршрутизации для каждого из каналов (ISP1, ISP2), с указанием проверки списков доступа (ACL) и на основе их, направлять запрос, через тот или иной канал (с проверкой его на доступность). В случае если один из каналов будет не доступен, то маршрутизация будет осуществятся на основании глобальных параметров маршрутизации.

 

Применяем карту маршрутизации на интерфейс который смотрит в локальную сеть.

 

Добавим сбрасывать текущие NAT сессии, при срабатывании (IP SLA) теста на доступность второго канала (ISP2):

 

[spoiler title=’Итоговая конфигурация’ style=’default’ collapse_link=’true’]vrf definition ISP1
!
address-family ipv4
route-replicate from vrf LAN unicast all
exit-address-family
!
vrf definition ISP2
!
address-family ipv4
route-replicate from vrf LAN unicast all
exit-address-family
!
vrf definition LAN
!
address-family ipv4
route-replicate from vrf ISP1 unicast all
route-replicate from vrf ISP2 unicast all
exit-address-family
!
object-group network NAT-DENY
!
object-group network NAT-PERMIT
10.10.9.0 255.255.255.240
10.10.10.0 255.255.255.0
10.10.11.0 255.255.255.0
!
object group service WEB-PORTS
tcp eq www
tcp eq 8080
tcp eq 443
!
object-group network ISP1-DENY
!
object-group network ISP1-PERMIT
10.10.10.0 255.255.255.0
host 10.10.11.5
!
object-group network ISP2-DENY
host 10.10.11.5
!
object-group network ISP2-PERMIT
10.10.11.0 255.255.255.0
!
track 10 ip sla 10 reachability
delay down 20 up 10
!
interface GigabitEthernet0/0.9
description LAN GATEWAY
encapsulation dot1Q 9
vrf forwarding LAN
ip address 10.10.9.1 255.255.255.240
ip nat inside
ip virtual-reassembly in
ip policy route-map ROUTE-ISP
!
interface GigabitEthernet0/1.100
description PRIMARY INTERNET
encapsulation dot1Q 100
vrf forwarding ISP1
ip address 77.77.77.2 255.255.255.252
ip nat outside
ip virtual-reassembly in
!
interface GigabitEthernet0/2.200
description SECONDARY INTERNET
encapsulation dot1Q 200
vrf forwarding ISP2
ip address 88.88.88.2 255.255.255.252
ip nat outside
ip virtual-reassembly in
!
ip nat inside source route-map ISP1-NAT interface GigabitEthernet0/1.100 vrf LAN overload
ip nat inside source route-map ISP2-NAT interface GigabitEthernet0/2.200 vrf LAN overload
ip route vrf ISP1 0.0.0.0 0.0.0.0 77.77.77.1 track 10
ip route vrf ISP1 8.8.4.4 255.255.255.255 77.77.77.1
ip route vrf ISP2 0.0.0.0 0.0.0.0 88.88.88.1 10
!
ip access-list extended NAT
deny ip object-group NAT-DENY any
permit ip object-group NAT-PERMIT any
!
ip access-list extended ISP1
deny object-group WEB-PORTS object-group ISP1-DENY any
permit object-group WEB-PORTS object-group ISP1-PERMIT any
!
ip access-list extended ISP2
deny object-group WEB-PORTS object-group ISP2-DENY any
permit object-group WEB-PORTS object-group ISP2-PERMIT any
!
ip sla 10
icmp-echo 8.8.4.4 source-interface GigabitEthernet0/1.100
vrf ISP1
threshold 1000
timeout 1500
frequency 3
ip sla schedule 10 life forever start-time now
!
ip sla 20
icmp-echo 8.8.4.4 source-interface GigabitEthernet0/2.200
vrf ISP2
threshold 1000
timeout 1500
frequency 3
ip sla schedule 20 life forever start-time now
!
route-map ISP1-NAT permit 10
match ip address NAT
match interface GigabitEthernet0/1.100
!
route-map ISP2-NAT permit 10
match ip address NAT
match interface GigabitEthernet0/2.200
!
route-map ROUTE-ISP permit 10
match ip address ISP1
set ip next-hop verify-availability 77.77.77.1 10 track 10
!
route-map ROUTE-ISP permit 20
match ip address ISP2
set ip next-hop verify-availability 88.88.88.1 10 track 20
!
event manager applet CLR_NAT_10
event track 10 state any
action 10 cli command «enable»
action 20 cli command «clear ip nat translation *»
!
event manager applet CLR_NAT_20
event track 20 state any
action 10 cli command «enable»
action 20 cli command «clear ip nat translation *»
![/spoiler]

 

Понравилась или оказалась полезной статья, поблагодари автора

 

БесполезноСлабоватоПриемлемоОтличноПревосходно (1 голос(ов), в среднем: 5,00 из 5)
Загрузка...

Оставить ответ

1 × 3 =