Стартовое состояние сети в дочернем офисе

Рассмотрим пример подключения к облаку DMVPN небольшого офиса, в котором присутствует два интернет-провайдера, один из которых предоставляет доступ через проводное подключение, а второй — через stick-модем.


Рисунок 9. Схема подключения маршрутизатора дочернего офиса (с резервным подключением через модем) через сети двух интернет-провайдеров

В рамках данной схемы DMVPN на узле Spoke организуются два GRE-туннеля: первый — к первому DMVPN Hub, второй — ко второму. Узел Spoke обладает IP-связностью по двум независимым интернет-провайдерам; транспорт первого интернет-провайдера используется для построения DMVPN-соединения с первым DMVPN Hub, используя uplink как «проводное» подключение к сети, транспорт второго интернет-провайдера — для соединения со вторым DMVPN Hub с помощью stick-модема. В рамках данного руководства используется stick-модем huawei E8372

Маршрутизатор дочернего офиса подключается к двум интернет-провайдерам, каждый из которых предоставляет канал с белым статическим IP-адресом. Для удобства конфигурирования сразу зададим именования обоим устройствам в данной схеме.

hostname RT-OFFICE-5


hostname SW-OFFICE-5


Организация локального сегмента сети дочернего офиса

В рамках руководства рассмотрим простой пример настройки коммутатора доступа для обеспечения подключения оборудования дочернего офиса к пограничному маршрутизатору. Параметры локальной сети офиса описаны в таблице 24.

Таблица 24. Параметры локальной сети дочернего офиса №5

НазначениеVLANПодсеть
Локальная сеть дочернего офиса №5100192.168.15.0/24

Перейдем к настройке коммутатора. Необходимо сконфигурировать клиентские порты в режиме general. Требуемый VLAN ID инсталлируется нетегированному трафику.

vlan database
 vlan 100
exit
!
interface range GigabitEthernet1/0/1-24
 switchport mode general
 switchport general allowed vlan add 100 untagged
 switchport general pvid 100
 switchport protected-port
exit
Для изоляции клиентов в широковещательном домене включим функционал port-protection.

Физический интерфейс в сторону маршрутизатора настроим в режиме trunk для требуемого VLAN ID:

interface TenGigabitEthernet1/0/1
 switchport mode general
 switchport general allowed vlan add 100 tagged
 switchport forbidden default-vlan 
exit


Перейдем к конфигурации пограничного маршрутизатора. Добавим саб-интерфейс для обработки тегированного трафика с соответственным VLAN ID:

interface gigabitethernet 1/0/3.100
  description "LAN | CUSTOMER"
  ip address 192.168.15.1/24
exit


Добавим для саб-интерфейса зону безопасности и обеспечим прием входящего трафика протокола ICMP из данной зоны безопасности:

security zone CUSTOMER
  description "LAN | CUSTOMER"
exit

interface gigabitethernet 1/0/3.100
  security-zone CUSTOMER
exit

security zone-pair CUSTOMER self
  rule 10
    description "Permit | ICMP | From ANY | To ANY"
    action permit
    match protocol icmp
    enable
  exit
exit


Подключение к сети интернет-провайдера №1 с помощью проводного подключения с использованием статической адресации

Рассмотрим подключение к сети Интернет с учетом выданных интернет-провайдером №1 данных для настройки статической адресации на интерфейсе. Параметры для подключения к интернет-провайдеру описаны в таблице 25.

Таблица 25. Данные интернет-провайдера №1 для настройки статической IP-адресации на пограничном маршрутизаторе дочернего офиса №5

ПараметрЗначение
IP-адрес пограничного маршрутизатора203.11.1.2
Маска сети255.255.255.0
IP-адрес шлюза203.11.1.1

В рамках данного примера интернет-провайдер №1 и №2 предоставляет для настройки статической адресации публичные (белые) IP-адреса от каждого интернет-провайдера соответственно. Для случая, где интернет-провайдер предоставляет для настройки приватный (серый) IP-адрес с дальнейшим NAT-преобразованием в публичную IP-адресацию настройка будет выглядеть аналогичным образом.

Перейдем к настройке сетевого интерфейса и статической маршрутизации. Интерфейс разграничим с помощью VRF — далее в настройке будет производиться конфигурация Front-Door VRF-схемы.

Схема подключения, в которой транспортная сеть для некой виртуальной сети выносится в отдельное сетевое пространство имен, называется Front-Door VRF. Такая схема организации транспорта для виртуальной сети дает следующие преимущества:

  • возможность использования маршрута по умолчанию как в виртуальной сети, так и в транспортной сети;
  • отсутствие пересечения маршрутной информации между транспортной и виртуальной сетью;
  • дополнительный уровень безопасности виртуальной сети, поскольку трафик из неё не может попасть в транспортную сеть без настроенной инкапсуляции в туннель.
ip vrf ISP-CORE
exit

interface gigabitethernet 1/0/1
  ip vrf forwarding ISP-CORE
  description "ISP-CORE | Uplink"
  ip address 203.11.1.2/24
exit

ip route vrf ISP-CORE 0.0.0.0/0 203.11.1.1 name ISP-CORE


Сконфигурируем для данного сетевого интерфейса отдельную зону безопасности и разрешим входящий с точки зрения пограничного маршрутизатора трафик протокола ICMP из данной зоны безопасности:

security zone CORE
  description "ISP-CORE | Uplink"
  ip vrf forwarding ISP-CORE
exit

interface gigabitethernet 1/0/1
  security-zone CORE
exit

security zone-pair CORE self
  rule 10
    description "Permit | ICMP | From ANY | To ANY"
    action permit
    match protocol icmp
    enable
  exit
exit


Подключение к сети интернет-провайдера №2 с помощью stick-модема с использованием статической адресации

Необходимо рассмотреть подключение к сети Интернет с учетом выданных интернет-провайдером №2 данных для настройки статической адресации на модеме. Параметры для подключения к интернет-провайдеру описаны в таблице 26.

Таблица 26. Данные интернет-провайдера №2 для настройки статической IP-адресации на пограничном маршрутизаторе дочернего офиса №5

ПараметрЗначение
IP-адрес маршрутизатора203.11.0.2
Маска сети255.255.255.0
IP-адрес шлюза203.11.0.1

Перейдем к настройке stick-модема и статической маршрутизации. Интерфейс также разграничим с помощью VRF — далее в настройке будет производиться конфигурация Front-Door VRF-схемы.

Первый шаг к настройке подключения через модем заключается в подключении модема к пограничному маршрутизатору и ожидании определения производителя модема и номера слота, куда подключен модем. Данную информацию можно просмотреть с помощью команды show cellular status modem. При пустой конфигурации в отношении модемов статус модема будет в disabled/Down.

esr# show cellular status modem 
Number   USB port   Manufacturer   Model        Current state   Inteface          Link    
device                                                                            state   
------   --------   ------------   ----------   -------------   ---------------   -----   
1        3-1        huawei         E8372        disabled        --                Down    


Второй шаг заключается в настройка самого интерфейса stick-модема. Перейдем к нему:

ip vrf ISP-MODEM
exit

cellular profile 1
  APN internet
exit

cellular modem 1
  ip vrf forwarding ISP-MODEM
  description "ISP-MODEM | Uplink"
  device 3-1
  profile 1
  allowed-mode 3g
  allowed-mode 4g
  enable
exit

ip route vrf ISP-MODEM 0.0.0.0/0 interface modem 1 name ISP-MODEM


При конфигурации модема необходимо создать профиль с указанием APN оператора, к которому осуществляется подключение, а также задать идентификатор USB-порта модема, полученный на первом этапе с помощью команды show cellular status modem. Дополнительно требуется определить маршрут по умолчанию через модемный интерфейс для организации выхода в сеть Интернет.

Сконфигурируем для сетевого интерфейса, выходящего в сеть интернет-провайдера №2, отдельную зону безопасности и разрешим входящий с точки зрения пограничного маршрутизатора трафик протокола ICMP из данной зоны безопасности:

security zone MODEM
  description "ISP-MODEM | Uplink"
  ip vrf forwarding ISP-MODEM
exit

cellular modem 1
  security-zone MODEM
exit

security zone-pair MODEM self
  rule 10
    description "Permit | ICMP | From ANY | To ANY"
    action permit
    match protocol icmp
    enable
  exit
exit


Настройка IKEv2 и IPsec-туннелирования на DMVPN Spoke

Конфигурация IPsec для будущего DMVPN-облака представляет собой ключевой этап данного руководства. Правильная настройка IPsec обеспечивает конфиденциальность и защиту трафика между дочерними офисами. При последующей настройке будут использоваться параметры IKE и IPsec, приведённые в таблице 27.

Таблица 27. Параметры IKE и IPsec, используемые для настройки туннелирования IPsec на маршрутизаторе DMVPN Spoke дочернего офиса №5


RT-OFFICE-5
Параметры IKEАлгоритм шифрованияAES-256
Алгоритм хешированияSHA2-256
Группа Диффи-Хеллмана19
Время жизни IKE-сеcсии в секундах86400
Идентификатор IKE-сессииspoke5.company.loc
Интервал отправки DPD-сообщений40
Общий таймаут ожидания ответа на DPD-сообщение160
Действие при наступлении таймаута DPDЗакрытие сессии IKE
Параметры IPsecАлгоритм шифрованияAES-256
Алгоритм хешированияSHA2-256
Группа Диффи-Хеллмана для механизма PFS19
Время жизни IPsec-сесcии в секундах28800
Время жизни IPsec-сесcии в килобайтах4608000
Интервал ранней реаутентификации IKE-сессии/Интервал раннего рекеинга IPsec-сессии в секундах3600
Пороговое значение ранней реаутентификации IKE-сессии/Пороговое значение раннего рекеинга IPsec-сессии в килобайтах86400

Начало настройки IPsec заключается в настройке наборов криптографических алгоритмов для протокола IKE:

security ike proposal DMVPN_IKE_PROP_1
  description "DMVPN | IKE proposal #1"
  authentication algorithm sha2-256
  encryption algorithm aes256
  dh-group 19
exit


Создадим набор ключей аутентификации IKE. Поскольку в дальнейшей настройке планируется использовать в качестве идентификатора IPsec-соседа доменные имена, в наборе ключей тоже используются доменные имена:

security ike keyring DMVPN_IKE_KEYRING
  description "DMVPN | IKE keyring"
  identity dns *.company.loc pre-shared-key ascii-text password
exit


Перейдем к созданию политики IKE. Она включает в себя наборы алгоритмов шифрования, выбор метода аутентификации и время жизни IKE-сессии (Phase 1):

security ike policy DMVPN_IKE_POL
  description "DMVPN | IKE policy"
  lifetime seconds 86400
  keyring DMVPN_IKE_KEYRING
  authentication method keyring
  proposal DMVPN_IKE_PROP_1
exit


Создадим набор криптошлюзов IKE.

В связи с особенностями настройки IPsec в схеме DMVPN на сервисных маршрутизаторах ESR на маршрутизаторах в роли DMVPN Spoke необходимо создавать несколько IPsec VPN-политик: одну для подключения к другим DMVPN Spoke и по одной на каждый настроенный DMVPN Hub.
Объем возможных настроек в криптошлюзе IKE достаточно велик, в связи с этим обратим внимание на самые важные пункты настройки:
  • Для использования протокола IKE версии 2 обязательна команда «version v2-only», в противном случае туннель будет использовать протокол IKE версии 1.
  • Поддержку протокола MOBIKE необходимо отключать, в схеме DMVPN он может привести к ошибкам построения туннелей между DMVPN Hub и DMVPN Spoke.
  • В случае привязки криптошлюза к интерфейсу командой «local interface» привязать локальную сеть к адресу на этом интерфейсе можно командой «local network dynamic».
  • В схеме DMVPN в туннели IPsec помещается только GRE-трафик, поэтому корректным будет указывать ключ «protocol gre» в командах «local network» и «remote network».
security ike gateway DMVPN_IKE_GW_HUB_1
  description "DMVPN | RT-HUB-1 IKE gateway"
  version v2-only
  ike-policy DMVPN_IKE_POL
  local interface gigabitethernet 1/0/1
  local network dynamic protocol gre 
  local id dns "spoke5.company.loc"
  remote id dns "hub1.company.loc"
  remote address 203.0.113.4
  remote network 203.0.113.4/32 protocol gre 
  mode policy-based
  mobike disable
  dead-peer-detection action clear
  dead-peer-detection interval 40
  dead-peer-detection timeout 160
exit

security ike gateway DMVPN_IKE_GW_HUB_2
  description "DMVPN | RT-HUB-2 IKE gateway"
  version v2-only
  ike-policy DMVPN_IKE_POL
  local interface modem 1
  local network dynamic protocol gre 
  local id dns "spoke5.company.loc"
  remote id dns "hub2.company.loc"
  remote address 203.0.113.132
  remote network 203.0.113.132/32 protocol gre 
  mode policy-based
  mobike disable
  dead-peer-detection action clear
  dead-peer-detection interval 40
  dead-peer-detection timeout 160
exit

security ike gateway DMVPN_IKE_GW_SPOKES_1
  description "DMVPN | Spokes IKE gateway via ISP-CORE"
  version v2-only
  ike-policy DMVPN_IKE_POL
  local interface gigabitethernet 1/0/1
  local network dynamic protocol gre 
  local id dns "spoke5.company.loc"
  remote address any
  remote network any protocol gre 
  mode policy-based
  mobike disable
  dead-peer-detection action clear
  dead-peer-detection interval 40
  dead-peer-detection timeout 160
exit

security ike gateway DMVPN_IKE_GW_SPOKES_2
  description "DMVPN | Spokes IKE gateway via ISP-MODEM"
  version v2-only
  ike-policy DMVPN_IKE_POL
  local interface modem 1
  local network dynamic protocol gre 
  local id dns "spoke5.company.loc"
  remote address any
  remote network any protocol gre 
  mode policy-based
  mobike disable
  dead-peer-detection action clear
  dead-peer-detection interval 40
  dead-peer-detection timeout 160
exit
1. Указываем в качестве «local interface» интерфейс в сторону интернет-провайдера.
2. Использование «local id» и «remote id» — один из удобных способов идентификации IKE-соседей. Поскольку в «security ike keyring» использованы доменные имена, тот же тип ID используем и здесь.
3. Будет создано 4 криптошлюза — для подключения к RT-HUB-1, RT-HUB-2, а также для подключения DMVPN Spoke отдельно для каждого интернет-провайдера.

Настроим политику в отношении дубликатов IKE-сессий — при возникновении дубликатов будем замещать существующие IKE-сессии:

security ike session uniqueids replace


Создадим набор криптографических алгоритмов уже непосредственно для туннеля IPsec:

security ipsec proposal DMVPN_IPSEC_PROP_1
  description "DMVPN | IPsec proposal #1"
  authentication algorithm sha2-256
  encryption algorithm aes256
  pfs dh-group 19
exit


Создадим политику IPsec. Она включает в себя наборы алгоритмов шифрования и время жизни IPsec-сессии, непосредственно отвечающей за шифрование пользовательского трафика:

security ipsec policy DMVPN_IPSEC_POL
  description "DMVPN | IPsec policy"
  lifetime seconds 28800
  lifetime kilobytes 4608000
  proposal DMVPN_IPSEC_PROP_1
exit


Сконфигурированные настройки IKE и IPsec можно объединить в общие VPN-профили. Как и при получении криптошлюзов IKE получим четыре IPsec VPN-профиля. Для IPsec VPN-профилей, использующихся на туннелях GRE в схеме DMVPN, обязательно включение транспортного режима:

security ipsec vpn DMVPN_IPSEC_VPN_HUB_1
  description "DMVPN | RT-HUB-1 IPsec VPN profile"
  type transport
  ip vrf forwarding ISP-CORE
  ike establish-tunnel route
  ike gateway DMVPN_IKE_GW_HUB_1
  ike ipsec-policy DMVPN_IPSEC_POL
  enable
exit

security ipsec vpn DMVPN_IPSEC_VPN_HUB_2
  description "DMVPN | RT-HUB-2 IPsec VPN profile"
  type transport
  ip vrf forwarding ISP-MODEM
  ike establish-tunnel route
  ike gateway DMVPN_IKE_GW_HUB_2
  ike ipsec-policy DMVPN_IPSEC_POL
  enable
exit

security ipsec vpn DMVPN_IPSEC_VPN_SPOKES_1
  description "DMVPN | Spokes IPsec VPN profile via ISP-CORE"
  type transport
  ip vrf forwarding ISP-CORE
  ike establish-tunnel route
  ike gateway DMVPN_IKE_GW_SPOKES_1
  ike ipsec-policy DMVPN_IPSEC_POL
  enable
exit

security ipsec vpn DMVPN_IPSEC_VPN_SPOKES_2
  description "DMVPN | Spokes IPsec VPN profile via ISP-MODEM"
  type transport
  ip vrf forwarding ISP-MODEM
  ike establish-tunnel route
  ike gateway DMVPN_IKE_GW_SPOKES_2
  ike ipsec-policy DMVPN_IPSEC_POL
  enable
exit


Разрешим прохождение трафика, связанного с IPsec-туннелями. Для этого сначала опишем профили портов для протокола IKE и упакованного в UDP шифрованного трафика протоколов IKE и ESP:

object-group service IKE_AND_IPSEC
  description "IKE, IKE encrypted, ESP encap UDP"
  port-range 500
  port-range 4500
exit
1) UDP/500-порт используется протоколом IKEv2 в момент первичного пакетообмена с удаленным IKE-соседом.
2) UDP/4500-порт используется для отправки сообщений протокола IKEv2 при определении наличия NAT посередине между пирами.
3) Также UDP/4500-порт используется для отправки запакованных в UDP сообщений протокола ESP, сообщения которого представляют собой шифрованный пользовательский трафик в туннеле.

Разрешим входящий трафик IPsec-туннелей для каждого из интернет-провайдеров (Firewall):

# Для ISP-CORE
security zone-pair CORE self
  rule 20
    description "Permit | IKE/IPsec | From ISP | To ANY"
    action permit
    match protocol udp
    match destination-port object-group IKE_AND_IPSEC
    enable
  exit
  rule 30
    description "Permit | ESP | From ISP | To ANY"
    action permit
    match protocol esp
    enable
  exit
exit
# Для ISP-MODEM
security zone-pair MODEM self
  rule 20
    description "Permit | IKE/IPsec | From ISP | To ANY"
    action permit
    match protocol udp
    match destination-port object-group IKE_AND_IPSEC
    enable
  exit
  rule 30
    description "Permit | ESP | From ISP | To ANY"
    action permit
    match protocol esp
    enable
  exit
exit


Пользовательский трафик запаковывается в протокол ESP, и, при наличии NAT посередине между IPsec-соседями, сообщения протокола ESP, в свою очередь, запаковываются в протокол UDP, порт 4500. Поскольку туннели между DMVPN Spoke могут подняться и без наличия NAT между ними, отдельным правилом разрешим прохождение ESP-пакетов.

Настройка mGRE-туннелей на DMVPN Spoke

Настроим туннели GRE в многоточечном режиме с поддержкой протокола NHRP на DMVPN Spoke. Поскольку в центральном офисе развернуто два DMVPN Hub на адресации двух разных интернет-провайдеров, подключение к ним будем осуществлять двумя отдельными mGRE-туннелями. Отличия настройки DMVPN Spoke с подключением к одному интернет-провайдеру заключается в том, что NBMA-адрес для каждого GRE-туннеля будет отличаться в зависимости от IP-адреса интерфейса к данному интернет-провайдеру. Основные параметры туннелей GRE для подключения обоим DMVPN Hub представлены в таблице 28.

Таблица 28. Параметры туннелей GRE на маршрутизаторе DMVPN Spoke дочернего офиса №5

DMVPN HubDMVPN CloudНомер туннеля GREТуннельная адресация DMVPN SpokeТуннельный адрес DMVPN HubNBMA-адрес DMVPN HubКлюч туннеля GREВремя жизни NHRP-записей, секунды
RT-HUB-1ISP-CORE Cloud11172.16.1.15/24172.16.1.1203.0.113.41000600
RT-HUB-2ISP-MODEM Cloud12172.16.2.15/24172.16.2.1203.0.113.1322000600

Сначала изменим общие настройки туннеля GRE на каждом из DMVPN Hub. К таким настройкам относятся:

  • режим работы multipoint;
  • значение key;
  • значение TTL;
  • размер MTU;
  • значение TCP adjust-mss;
  • туннельный IP-адрес;
  • интерфейс, с которого будет строиться GRE-туннель;
  • имя транспортного VRF.
tunnel gre 11
  description "DMVPN | Cloud 1"
  key 1000
  ttl 64
  mtu 1400
  multipoint
  tunnel-source vrf ISP-CORE
  local interface gigabitethernet 1/0/1
  ip address 172.16.1.15/24
  ip tcp adjust-mss 1360
  enable
exit

tunnel gre 12
  description "DMVPN | Cloud 2"
  key 2000
  ttl 64
  mtu 1400
  multipoint
  tunnel-source vrf ISP-MODEM
  local interface modem 1
  ip address 172.16.2.15/24
  ip tcp adjust-mss 1360
  enable
exit


Маршрутизаторы DMVPN Spoke с точки зрения протокола NHRP выполняют роль NHRP-клиентов, которые после регистрации в облаке DMVPN на одном или нескольких DMVPN Hub могут запрашивать у них информацию о других членах облака DMVPN. В связи с этим для корректной работы DMVPN Spoke необходимо описать настройки протокола NHRP для подключения к обоим DMVPN Hub.

Для корректного построения Spoke-to-Spoke-туннелей, маршрутизация на которых направляет весь трафик на DMVPN Hub, включим опцию «ip nhrp shortcut». Опция активирует на DMVPN Spoke реагирование на специальные сообщения протокола NHRP «Traffic Indication», которые DMVPN Hub будет отправлять в ответ на пакеты, предназначенные другому DMVPN Spoke. Обработка такого сообщения приведет к построению Spoke-to-Spoke туннеля, и трафик между DMVPN Spoke будет проходить напрямую, минуя DMVPN Hub.

Такая схема организации маршрутизации и построения Spoke-to-Spoke туннелей в облаках DMVPN общепринято именуется третьей фазой DMVPN.

Следует учитывать, что пересоздание Spoke-to-Spoke туннелей инициируется только после истечения заданного параметра holding-time. Таким образом, при отказе интернет-провайдера и, соответственно, отсутствии связи с DMVPN Hub реконфигурация Spoke-to-Spoke туннеля резервному интернет-провайдеру произойдёт по завершении времени жизни (Expire time) соответствующего Spoke-to-Spoke туннеля.

tunnel gre 11
  ip nhrp authentication password
  ip nhrp holding-time 600
  ip nhrp shortcut
  ip nhrp ipsec DMVPN_IPSEC_VPN_HUB_1 static
  ip nhrp ipsec DMVPN_IPSEC_VPN_SPOKES_1 dynamic
  ip nhrp map 172.16.1.1 203.0.113.4
  ip nhrp nhs 172.16.1.1
  ip nhrp multicast nhs
  ip nhrp enable
exit

tunnel gre 12
  ip nhrp authentication password
  ip nhrp holding-time 600
  ip nhrp shortcut
  ip nhrp ipsec DMVPN_IPSEC_VPN_HUB_2 static
  ip nhrp ipsec DMVPN_IPSEC_VPN_SPOKES_2 dynamic
  ip nhrp map 172.16.2.1 203.0.113.132
  ip nhrp nhs 172.16.2.1
  ip nhrp multicast nhs
  ip nhrp enable
exit


Из-за особенностей декапсуляции трафика из IPsec-туннелей, работающих в транспортном режиме инкапсуляции, трафик после дешифровки попадает на тот же сетевой интерфейс, который терминирует IPsec-туннель. В связи с этим в правилах межсетевого экранирования на DMVPN Spoke необходимо разрешить прием не только шифрованных IPsec-пакетов, но и GRE-пакетов, которые попадают на интерфейс после дешифрования. 

security zone-pair CORE self
   rule 40
    description "Permit | ESP | From GRE | To ANY"
    action permit
    match protocol gre
    enable
  exit 
exit
security zone-pair MODEM self
   rule 40
    description "Permit | ESP | From GRE | To ANY"
    action permit
    match protocol gre
    enable
  exit 
exit

Для фильтрации трафика внутри облака DMVPN нужно создать отдельную зону безопасности и назначить её на GRE-туннели. Разрешите прохождение входящего ICMP-трафика в этой зоне:

security zone DMVPN_NET
  description "DMVPN | Cloud"
exit

tunnel gre 11
  security-zone DMVPN_NET
exit
tunnel gre 12
  security-zone DMVPN_NET
exit
 
security zone-pair DMVPN_NET self
   rule 10
    description "Permit | ICMP | From ANY | To ANY"
    action permit
    match protocol icmp
    enable
  exit
exit


Конфигурирование маршрутизации для функционирования облака DMVPN в центральном офисе

Настроим BGP-соседей в сторону DMVPN Hub:

router bgp log-neighbor-changes

router bgp 65000
  neighbor 172.16.1.1
    description "DMVPN | RT-HUB-1"
    remote-as 65001
    update-source gre 11
    address-family ipv4 unicast
      enable
    exit
    enable
  exit
  neighbor 172.16.2.1
    description "DMVPN | RT-HUB-2"
    remote-as 65002
    update-source gre 12
    address-family ipv4 unicast
      enable
    exit
    enable
  exit
  enable
exit


В связи с тем, что DMVPN Spoke и DMVPN Hub находятся в разных автономных системах, анонсирование маршрутной информации по умолчанию проводиться не будет. Создадим route-map, разрешающий отправку маршрута до нашей локальной сети на DMVPN Hub. При распространении маршрутов по умолчанию они анонсируются с различными метриками, что обеспечивает выбор приоритетного направления. В случае недоступности второго интернет-провайдера, а значит и второго DMVPN Hub, переключение маршрутизации осуществляется за счёт механизма протокола BFD.

Созданный route-map указываем для семейства IPv4-маршрутов в созданных BGP-соседях. Также добавим локальную сеть в анонсируемые маршруты:

route-map DMVPN_NET_OUT
  rule 10
    description "DMZ | LAN for DMVPN Hub"
    match ip address 192.168.15.0/24
  exit
exit

router bgp 65000
  neighbor 172.16.1.1
    description "DMVPN | RT-HUB-1"
    remote-as 65001
    update-source gre 11
    address-family ipv4 unicast
      route-map DMVPN_NET_OUT out
      enable
    exit
    enable
  exit
  neighbor 172.16.2.1
    description "DMVPN | RT-HUB-2"
    remote-as 65002
    update-source gre 12
    address-family ipv4 unicast
      route-map DMVPN_NET_OUT out
      enable
    exit
    enable
  exit
  address-family ipv4 unicast
    network 192.168.15.0/24
  exit
  enable
exit


Включим поддержку BFD для созданных BGP-соседств. Учтем скорость сходимости IPsec- и mGRE-туннелей и увеличим BFD-таймеры:

ip bfd log-adjacency-changes
ip bfd min-rx-interval 1000
ip bfd min-tx-interval 1000
ip bfd multiplier 8

router bgp 65000
  neighbor 172.16.1.1
    fall-over bfd
  exit
  neighbor 172.16.2.1
    fall-over bfd
  exit
exit


Разрешим прохождение входящего трафика протокола BGP и BFD в зоне безопасности, настроенной на туннелях GRE:

object-group service BGP
  description "BGP"
  port-range 179
exit
object-group service BFD
  description "BFD"
  port-range 3784
exit

security zone-pair DMVPN_NET self
  rule 20
    description "Permit | BGP | From ANY | To ANY"
    action permit
    match protocol tcp
    match destination-port object-group BGP
    enable
  exit
  rule 30
    description "Permit | BFD | From ANY | To ANY"
    action permit
    match protocol udp
    match destination-port object-group BFD
    enable
  exit
exit


Настройка Zone-Based Firewall для локальной сети

Поскольку теперь построенное облако DMVPN обеспечивает выход трафика локальных пользователей дочернего офиса через интернет-шлюз центрального офиса, необходимо произвести дополнительные настройки Firewall.

Разрешим прохождение транзитного трафика из локальной сети в сторону облака DMVPN:

security zone-pair DMVPN_NET CUSTOMER
  rule 10
    description "Permit | ANY | From DMVPN Cloud | To CUSTOMER"
    action permit
    enable
  exit
exit
security zone-pair CUSTOMER DMVPN_NET
  rule 10
    description "Permit | ANY | From CUSTOMER | To DMVPN Cloud"
    action permit
    enable
  exit
exit


На этом настройку DMVPN в дочернем офисе с резервированием канала можно считать завершенной.