...
| Примечание |
|---|
Чтобы system prompt корректно работал, необходимо обновить пользовательскую сессию. |
| Scroll Pagebreak |
|---|
Настройка MultiWANНастройка MultiWAN
Технология MultiWAN позволяет организовать отказоустойчивое соединение с резервированием линков от нескольких провайдеров.
...
- обеспечить резервирование линков от нескольких провайдеров;
- обеспечить балансировку трафика в соотношении 70/30.
Схема реализации MultiWAN
...
| Блок кода |
|---|
cluster
cluster-interface bridge 1
unit 1
mac-address cc:9d:a2:71:83:78
exit
unit 2
mac-address cc:9d:a2:71:82:38
exit
enable
exit
hostname ESR-1 unit 1
hostname ESR-2 unit 2
security zone SYNC
exit
security zone WAN
exit
security zone LAN
exit
bridge 1
vlan 1
security-zone SYNC
ip address 198.51.100.254/24 unit 1
ip address 198.51.100.253/24 unit 2
vrrp id 1
vrrp ip 198.51.100.1/24
vrrp group 1
vrrp authentication key ascii-text encrypted 88B11079B51D
vrrp authentication algorithm md5
vrrp
enable
exit
interface gigabitethernet 1/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 1/0/2
security-zone WAN
ip address 128.66.0.2/30
vrrp id 3
vrrp ip 203.0.113.2/30
vrrp group 1
vrrp
exit
interface gigabitethernet 1/0/3
security-zone LAN
ip address 192.0.2.254/24
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 2/0/2
security-zone WAN
ip address 128.66.0.1/30
vrrp id 3
vrrp ip 203.0.113.2/30
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/3
security-zone LAN
ip address 192.0.2.253/24
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
security zone-pair SYNC self
rule 1
action permit
match protocol icmp
enable
exit
rule 2
action permit
match protocol vrrp
enable
exit
rule 3
action permit
match protocol ah
enable
exit
exit
security zone-pair WAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair LAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit |
| Scroll Pagebreak |
|---|
Решение:
Создадим профиль ISAKMP-портов, необходимых для работы протокола IPsec, включающий разрешение UDP-пакетов на порту 500 (а также на порту 4500 для поддержки NAT-T при необходимости):
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# security zone IPSEC ESR-1(config-security-zone)# exit ESR-1(config)# tunnel vti 1 ESR-1(config-vti)# security-zone IPSEC ESR-1(config-vti)# local address 203.0.113.2 ESR-1(config-vti)# remote address 203.0.113.6 ESR-1(config-vti)# ip address 128.66.0.6/30 ESR-1(config-vti)# enable ESR-1(config-vti)# exit |
| Scroll Pagebreak |
|---|
Добавим правило, разрешающее прохождение трафика между зонами LAN и IPSEC:
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show tunnels status
Tunnel Admin Link MTU Local IP Remote IP Last change
state state (d,h:m:s)
---------------- ----- ----- ------ ---------------- ---------------- -------------
vti 1 Up Up 1500 203.0.113.2 203.0.113.6 00,00:05:59 |
| Scroll Pagebreak |
|---|
Посмотреть состояние IPsec-туннеля можно с помощью команды:
...
Пример настройки Policy-based IPsec VPN
Алгоритм настройки Policy-based IPsec VPN описан в разделе VPN описан в разделе Алгоритм настройки Policy-based IPsec VPN.
Задача:
- Настроить IPsec туннель. Туннель необходимо поднять между адресами: кластер – 203.0.113.2 (VIP адрес), ответная сторона – 203.0.113.6. Туннель необходим для организации доступа между клиентскими подсетями 192.0.2.0/24 и 128.66.1.0/24;
IKE:
- группа Диффи-Хэллмана: 2;
- алгоритм шифрования: AES 128 bit;
- алгоритм аутентификации: MD5.
IP sec:
- алгоритм шифрования: AES 128 bit;
- алгоритм аутентификации: MD5.
...
| Блок кода |
|---|
cluster
cluster-interface bridge 1
unit 1
mac-address cc:9d:a2:71:83:78
exit
unit 2
mac-address cc:9d:a2:71:82:38
exit
enable
exit
hostname ESR-1 unit 1
hostname ESR-2 unit 2
security zone SYNC
exit
security zone WAN
exit
security zone LAN
exit
bridge 1
vlan 1
security-zone SYNC
ip address 198.51.100.254/24 unit 1
ip address 198.51.100.253/24 unit 2
vrrp id 1
vrrp ip 198.51.100.1/24
vrrp group 1
vrrp authentication key ascii-text encrypted 88B11079B51D
vrrp authentication algorithm md5
vrrp
enable
exit
interface gigabitethernet 1/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 1/0/2
security-zone WAN
ip address 128.66.0.2/30
vrrp id 3
vrrp ip 203.0.113.2/30
vrrp group 1
vrrp
exit
interface gigabitethernet 1/0/3
security-zone LAN
ip address 192.0.2.254/24
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 2/0/2
security-zone WAN
ip address 128.66.0.1/30
vrrp id 3
vrrp ip 203.0.113.2/30
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/3
security-zone LAN
ip address 192.0.2.253/24
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
security zone-pair SYNC self
rule 1
action permit
match protocol icmp
enable
exit
rule 2
action permit
match protocol vrrp
enable
exit
rule 3
action permit
match protocol ah
enable
exit
exit
security zone-pair WAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair LAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit |
| Scroll Pagebreak |
|---|
Решение:
Создадим профиль ISAKMP-портов, необходимых для работы протокола IPsec, включающий разрешение UDP-пакетов на порту 500 (а также на порту 4500 для поддержки NAT-T при необходимости):
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# security zone-pair WAN self ESR-1(config-security-zone-pair)# rule 2 ESR-1(config-security-zone-pair-rule)# action permit ESR-1(config-security-zone-pair-rule)# match protocol udp ESR-1(config-security-zone-pair-rule)# match destination-port object-group ISAKMP ESR-1(config-security-zone-pair-rule)# enable ESR-1(config-security-zone-pair-rule)# exit ESR-1(config-security-zone-pair)# rule 3 ESR-1(config-security-zone-pair-rule)# action permit ESR-1(config-security-zone-pair-rule)# match protocol esp ESR-1(config-security-zone-pair-rule)# enable ESR-1(config-security-zone-pair-rule)# exit ESR-1(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Добавим правило, разрешающее прохождение трафика между зонами LAN и WAN для клиентских подсетей:
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# security ike policy ike_pol ESR-1(config-ike-policy)# pre-shared-key ascii-text password ESR-1(config-ike-policy)# proposal ike_prop ESR-1(config-ike-policy)# exit |
| Scroll Pagebreak |
|---|
Создадим шлюз протокола IKE, определив применимую IKE-политику, локальные и удалённые параметры, а также режим перенаправления трафика в туннель. В качестве локального шлюза назначим VIP IP-адрес, настроенный на интерфейсах в сторону зоны WAN, с локальной подсетью 192.0.2.0/24, а удалённым – IP-адрес 203.0.113.1 с удаленной подсетью 128.66.1.0/24. Режим перенаправления трафика установлен как policy-based:
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# security ipsec vpn ipsec ESR-1(config-ipsec-vpn)# ike establish-tunnel route ESR-1(config-ipsec-vpn)# ike gateway ike_gw ESR-1(config-ipsec-vpn)# ike ipsec-policy ipsec_pol ESR-1(config-ipsec-vpn)# enable ESR-1(config-ipsec-vpn)# exit |
| Scroll Pagebreak |
|---|
Добавим статический маршрут до встречной клиентской подсети через IPsec-туннель:
...
| Примечание |
|---|
Аналогичную настройку требуется выполнить на устройстве, находящемся на другой стороне туннеля |
Посмотреть состояние IPsec-туннеля можно с помощью команды:
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show security ipsec vpn status Name Local host Remote host Initiator spi Responder spi State ------------------------------- --------------- --------------- ------------------ ------------------ ----------- ipsec 203.0.113.2 203.0.113.6 0x201602ebcafb809b 0x4556a21a7012d2c0 Established |
...
Firewall failover необходим для резервирования сессий firewall.
Алгоритм настройки firewall/NAT failover описан в разделе разделе Алгоритм настройки firewall failover.
Пример настройки firewall failover
Задача:
Настроить firewall failover в кластере маршрутизаторов ESR-1 и ESR-2 со следующими параметрами:
- режим резервирования сессий unicast;
- номер UDP-порта службы резервирования 9999;
- клиентская подсеть: 192.0.2.0/24.
...
| Блок кода | ||
|---|---|---|
| ||
cluster
cluster-interface bridge 1
unit 1
mac-address cc:9d:a2:71:83:78
exit
unit 2
mac-address cc:9d:a2:71:82:38
exit
enable
exit
hostname ESR-1 unit 1
hostname ESR-2 unit 2
security zone SYNC
exit
security zone WAN
exit
security zone LAN
exit
bridge 1
vlan 1
security-zone SYNC
ip address 198.51.100.254/24 unit 1
ip address 198.51.100.253/24 unit 2
vrrp id 1
vrrp ip 198.51.100.1/24
vrrp group 1
vrrp authentication key ascii-text encrypted 88B11079B51D
vrrp authentication algorithm md5
vrrp
enable
exit
interface gigabitethernet 1/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 1/0/2
security-zone WAN
ip address 128.66.0.6/30
vrrp id 3
vrrp ip 203.0.113.2/30
vrrp group 1
vrrp
exit
interface gigabitethernet 1/0/3
security-zone LAN
ip address 128.66.0.2/30
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 2/0/2
security-zone WAN
ip address 128.66.0.5/30
vrrp id 3
vrrp ip 203.0.113.2/30
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/3
security-zone LAN
ip address 128.66.0.1/30
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
security zone-pair SYNC self
rule 1
action permit
match protocol icmp
enable
exit
rule 2
action permit
match protocol vrrp
enable
exit
rule 3
action permit
match protocol ah
enable
exit
exit
security zone-pair LAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair WAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair LAN WAN
rule 1
action permit
enable
exit
exit
ip route 0.0.0.0/0 203.0.113.1 |
Решение:
Сконфигурируем object-group для Сконфигурируем object-group для настройки failover-сервисов:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# object-group network SYNC_SRC ESR-1(config-object-group-network)# ip address-range 198.51.100.254 unit 1 ESR-1(config-object-group-network)# ip address-range 198.51.100.253 unit 2 ESR-1(config-object-group-network)# exit ESR-1(config)# object-group network SYNC_DST ESR-1(config-object-group-network)# ip address-range 198.51.100.253 unit 1 ESR-1(config-object-group-network)# ip address-range 198.51.100.254 unit 2 ESR-1(config-object-group-network)# exit |
Перейдем к настройке общих параметров для failover-сервисов, а именно к выбору: IP-адреса с которого будут отправляться сообщения для синхронизации, IP-адреса получателя сообщений для
...
синхронизации и VRRP-группу, на основе которой определяется состояние (основной/резервный) маршрутизатора при работе failover-сервисов:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# ip failover ESR-1(config-failover)# local-address object-group SYNC_SRC ESR-1(config-failover)# remote-address object-group SYNC_DST ESR-1(config-failover)# vrrp-group 1 ESR-1(config-failover)# exit |
...
Для настройки правил зон безопасности создадим профиль для порта firewall firewall failover:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# object-group service FAILOVER ESR-1(config-object-group-service)# port-range 9999 ESR-1(config-object-group-service)# exit |
| Scroll Pagebreak |
|---|
Создадим разрешающие правило для зоны безопасности SYNC, разрешив прохождение необходимого трафика для работы firewall firewall failover:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# security zone-pair SYNC self ESR-1(config-security-zone-pair)# rule 4 ESR-1(config-security-zone-pair-rule)# action permit ESR-1(config-security-zone-pair-rule)# match protocol udp ESR-1(config-security-zone-pair-rule)# match destination-port object-group FAILOVER ESR-1(config-security-zone-pair-rule)# enable ESR-1(config-security-zone-pair-rule)# exit ESR-1(config-security-zone-pair)# exit |
Выполним настройку firewall firewall failover. Настроим режим резервирования сессий unicast, номер UDP-порта службы резервирования сессий firewall и включим firewall failover:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# ip firewall failover ESR-1(config-firewall-failover)# sync-type unicast ESR-1(config-firewall-failover)# port 9999 ESR-1(config-firewall-failover)# enable ESR-1(config-firewall-failover)# exit |
После успешного запуска firewall firewall failover можно посмотреть информацию о сервисе с помощью команды:
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show ip firewall failover
Communication interface: bridge 1
Status: Running
Bytes sent: 3420
Bytes received: 3320
Packets sent: 209
Packets received: 209
Send errors: 0
Receive errors: 0
Resend queue:
Active entries: 1
Errors:
No space left: 0
Hold queue:
Active entries: 0
Errors:
No space left: 0 |
| Scroll Pagebreak |
|---|
Также возможно узнать текущее состояние firewall firewall failover сервиса, выполнив команду:
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show ip firewall sessions failover external
Codes: E - expected, U - unreplied,
A - assured, C - confirmed
Prot Aging Inside source Inside destination Outside source Outside destination Pkts Bytes Status
----- ---------- --------------------- --------------------- --------------------- --------------------- ---------- ---------- ------
tcp 0 192.0.2.10:44812 128.66.1.1:22 128.66.1.1:22 192.0.2.10:44812 -- -- AC |
| Scroll Pagebreak |
|---|
Посмотреть счетчики для кэшей firewall failover можно командой:
...
Пример настройки нескольких экземпляров firewall failover, каждый – в своём VRF
Задача:
Настроить несколько экземпляров firewall failover в кластере маршрутизаторов ESR-1 и ESR-2, каждый в своем VRF, со следующими параметрами:
- режим резервирования сессий unicast;
- номер UDP-порта службы резервирования 9999;
- настроить приоритеты у разных firewall failover так, чтобы один из юнитов кластера был Master в одном VRF, а в другом был Backup;
- клиентская подсеть через первый VRF: 192.0.2.0/24;
- клиентская подсеть через второй VRF: 128.66.0.0/24.
...
| Блок кода |
|---|
cluster
cluster-interface bridge 1
unit 1
mac-address a2:00:00:10:c0:00
exit
unit 2
mac-address a2:00:00:10:d0:00
exit
enable
exit
hostname ESR-1 unit 1
hostname ESR-2 unit 2
ip vrf PAIR_ONE
exit
ip vrf PAIR_TWO
exit
security zone SYNC
exit
security zone LAN_ONE
ip vrf forwarding PAIR_ONE
exit
security zone LAN_TWO
ip vrf forwarding PAIR_TWO
exit
security zone WAN_ONE
ip vrf forwarding PAIR_ONE
exit
security zone WAN_TWO
ip vrf forwarding PAIR_TWO
exit
bridge 1
vlan 1
security-zone SYNC
ip address 198.51.100.254/24 unit 1
ip address 198.51.100.253/24 unit 2
vrrp id 1
vrrp ip 198.51.100.1/24
vrrp group 1
vrrp authentication key ascii-text encrypted 8CB5107EA7005AFF
vrrp authentication algorithm md5
vrrp
enable
exit
interface gigabitethernet 1/0/1
mode switchport
exit
interface gigabitethernet 1/0/2.2
ip vrf forwarding PAIR_ONE
security-zone LAN_ONE
ip address 203.0.113.18/30
vrrp id 4
vrrp ip 192.0.2.1/24
vrrp priority 120
vrrp group 2
vrrp
exit
interface gigabitethernet 1/0/2.3
ip vrf forwarding PAIR_TWO
security-zone LAN_TWO
ip address 203.0.113.22/30
vrrp id 5
vrrp ip 128.66.0.1/24
vrrp priority 110
vrrp group 3
vrrp
exit
interface gigabitethernet 1/0/3.2
ip vrf forwarding PAIR_ONE
security-zone WAN_ONE
ip address 203.0.113.10/30
vrrp id 2
vrrp ip 203.0.113.2/30
vrrp group 2
vrrp
exit
interface gigabitethernet 1/0/3.3
ip vrf forwarding PAIR_TWO
security-zone WAN_TWO
ip address 203.0.113.14/30
vrrp id 3
vrrp ip 203.0.113.6/30
vrrp group 3
vrrp
exit
interface gigabitethernet 2/0/1
mode switchport
exit
interface gigabitethernet 2/0/2.2
ip vrf forwarding PAIR_ONE
security-zone LAN_ONE
ip address 203.0.113.17/30
vrrp id 4
vrrp ip 192.0.2.1/24
vrrp priority 110
vrrp group 2
vrrp
exit
interface gigabitethernet 2/0/2.3
ip vrf forwarding PAIR_TWO
security-zone LAN_TWO
ip address 203.0.113.21/30
vrrp id 5
vrrp ip 128.66.0.1/24
vrrp priority 120
vrrp group 3
vrrp
exit
interface gigabitethernet 2/0/3.2
ip vrf forwarding PAIR_ONE
security-zone WAN_ONE
ip address 203.0.113.9/30
vrrp id 2
vrrp ip 203.0.113.2/30
vrrp group 2
vrrp
exit
interface gigabitethernet 2/0/3.3
ip vrf forwarding PAIR_TWO
security-zone WAN_TWO
ip address 203.0.113.13/30
vrrp id 3
vrrp ip 203.0.113.6/30
vrrp group 3
vrrp
exit
security zone-pair SYNC self
rule 1
action permit
match protocol icmp
enable
exit
rule 2
action permit
match protocol vrrp
enable
exit
rule 3
action permit
match protocol ah
enable
exit
exit
security zone-pair LAN_ONE self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair LAN_TWO self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair WAN_ONE self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair WAN_TWO self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair LAN_ONE WAN_ONE
rule 1
action permit
enable
exit
exit
security zone-pair LAN_TWO WAN_TWO
rule 1
action permit
enable
exit
exit |
Решение:
Сконфигурируем object-group для Сконфигурируем object-group для настройки failover-сервисов:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# object-group network DST_PAIR_ONE ESR-1(config-object-group-network)# ip address-range 203.0.113.17 unit 1 ESR-1(config-object-group-network)# ip address-range 203.0.113.18 unit 2 ESR-1(config-object-group-network)# exit ESR-1(config)# object-group network DST_PAIR_TWO ESR-1(config-object-group-network)# ip address-range 203.0.113.21 unit 1 ESR-1(config-object-group-network)# ip address-range 203.0.113.22 unit 2 ESR-1(config-object-group-network)# exit ESR-1(config)# object-group network SRC_PAIR_ONE ESR-1(config-object-group-network)# ip address-range 203.0.113.18 unit 1 ESR-1(config-object-group-network)# ip address-range 203.0.113.17 unit 2 ESR-1(config-object-group-network)# exit ESR-1(config)# object-group network SRC_PAIR_TWO ESR-1(config-object-group-network)# ip address-range 203.0.113.22 unit 1 ESR-1(config-object-group-network)# ip address-range 203.0.113.21 unit 2 ESR-1(config-object-group-network)# exit |
Перейдем к настойке ip failover для каждого VRF, настроим там local-address/remote-address и укажем привязки к соответствующим VRRP-group, на основе которых будет определяться, какой из маршрутизаторов будет синхронизировать сессии:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# ip failover vrf PAIR_ONE ESR-1(config-failover)# local-address object-group SRC_PAIR_ONE ESR-1(config-failover)# remote-address object-group DST_PAIR_ONE ESR-1(config-failover)# vrrp-group 2 ESR-1(config-failover)# exit ESR-1(config)# ip failover vrf PAIR_TWO ESR-1(config-failover)# local-address object-group SRC_PAIR_TWO ESR-1(config-failover)# remote-address object-group DST_PAIR_TWO ESR-1(config-failover)# vrrp-group 3 ESR-1(config-failover)# exit |
Перейдем к настройке
...
firewall failover, каждый в своем VRF. Для каждого экземпляра необходимо указать режим синхронизирования unicast, настроить port 9999, а также включить его:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# ip firewall failover vrf PAIR_ONE ESR-1(config-firewall-failover)# sync-type unicast ESR-1(config-firewall-failover)# port 9999 ESR-1(config-firewall-failover)# enable ESR-1(config-firewall-failover)# exit ESR-1(config)# ip firewall failover vrf PAIR_TWO ESR-1(config-firewall-failover)# sync-type unicast ESR-1(config-firewall-failover)# port 9999 ESR-1(config-firewall-failover)# enable ESR-1(config-firewall-failover)# exit |
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# object-group service FAILOVER ESR-1(config-object-group-service)# port-range 9999 ESR-1(config-object-group-service)# exit ESR-1(config)# security zone-pair LAN_ONE self ESR-1(config-security-zone-pair)# rule 3 ESR-1(config-security-zone-pair-rule)# action permit ESR-1(config-security-zone-pair-rule)# match protocol udp ESR-1(config-security-zone-pair-rule)# match destination-port object-group FAILOVER ESR-1(config-security-zone-pair-rule)# enable ESR-1(config-security-zone-pair-rule)# exit ESR-1(config-security-zone-pair)# exit ESR-1(config)# security zone-pair LAN_TWO self ESR-1(config-security-zone-pair)# rule 3 ESR-1(config-security-zone-pair-rule)# action permit ESR-1(config-security-zone-pair-rule)# match protocol udp ESR-1(config-security-zone-pair-rule)# match destination-port object-group FAILOVER ESR-1(config-security-zone-pair-rule)# enable ESR-1(config-security-zone-pair-rule)# exit ESR-1(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Просмотреть VRRP-статусы в разных VRF можно используя команду команду show vrrp. Убедимся что в одном VRF устройство находится в статусе Master, а в другом VRF – в статусе Backup:
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show vrrp vrf PAIR_ONE Unit 1* 'ESR-1' --------------- Virtual router Virtual IP Priority Preemption State Inherit Sync group ID -------------- --------------------------------- -------- ---------- ------ ------- ------------- 2 203.0.113.2/30 100 Enabled Master -- 2 4 192.0.2.1/24 120 Enabled Master -- 2 Unit 2 'ESR-2' -------------- Virtual router Virtual IP Priority Preemption State Inherit Sync group ID -------------- --------------------------------- -------- ---------- ------ ------- ------------- 2 203.0.113.2/30 100 Enabled Backup -- 2 4 192.0.2.1/24 110 Enabled Backup -- 2 ESR-1# show vrrp vrf PAIR_TWO Unit 1* 'ESR-1' --------------- Virtual router Virtual IP Priority Preemption State Inherit Sync group ID -------------- --------------------------------- -------- ---------- ------ ------- ------------- 3 203.0.113.6/30 100 Enabled Backup -- 3 5 128.66.0.1/24 110 Enabled Backup -- 3 Unit 2 'ESR-2' -------------- Virtual router Virtual IP Priority Preemption State Inherit Sync group ID -------------- --------------------------------- -------- ---------- ------ ------- ------------- 3 203.0.113.6/30 100 Enabled Master -- 3 5 128.66.0.1/24 120 Enabled Master -- 3 |
| Scroll Pagebreak |
|---|
Посмотреть информацию о сервисе firewall failover в каждом VRF можно с помощью следующей команды:
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show ip firewall failover vrf PAIR_ONE
Communication interface: gigabitethernet 1/0/2.2
Status: Running
Bytes sent: 7420
Bytes received: 7200
Packets sent: 465
Packets received: 460
Send errors: 0
Receive errors: 0
Resend queue:
Active entries: 1
Errors:
No space left: 0
Hold queue:
Active entries: 0
Errors:
No space left: 0
ESR-1# show ip firewall failover vrf PAIR_TWO
Communication interface: gigabitethernet 1/0/2.3
Status: Running
Bytes sent: 7320
Bytes received: 7380
Packets sent: 468
Packets received: 464
Send errors: 0
Receive errors: 0
Resend queue:
Active entries: 1
Errors:
No space left: 0
Hold queue:
Active entries: 0
Errors:
No space left: 0 |
| Scroll Pagebreak |
|---|
Также возможно узнать текущее состояние firewall firewall failover сервисов во всех VRF, выполнив команду:
...
| Блок кода | ||
|---|---|---|
| ||
ESR-2# show ip firewall sessions vrf PAIR_ONE protocol tcp
ESR-2# show ip firewall sessions vrf PAIR_TWO protocol tcp
Codes: E - expected, U - unreplied,
A - assured, C - confirmed
Prot Aging Inside source Inside destination Outside source Outside destination Pkts Bytes Status
----- ---------- --------------------- --------------------- --------------------- --------------------- ---------- ---------- ------
tcp 113 128.66.0.10:59108 203.0.113.5:22 128.66.0.10:59108 203.0.113.5:22 -- -- AC |
| Scroll Pagebreak |
|---|
Посмотреть вывод активный активных синхронизируемых сессий, используемых для работы firewal failover, на устройстве можно с помощью команды show ip firewall session failover external/internal. Убедимся что для одного из VRF сессия находится в internal cash, а для второго VRF сессия находится в external cash:
...
DHCP-failover позволяет обеспечить высокую доступность службы DHCP.
Алгоритм настройки DHCP failover описан в разделе Алгоритм настройки DHCP failover.
Пример настройки
Задача:
Настроить DHCP failover в кластере маршрутизаторов ESR-1 и ESR-2 со следующими параметрами:
- в качестве default-router используется IP-адрес VRRP;
- установить в качестве необходимого режима работы резервирования active-standby;
- клиентская подсеть: 192.0.2.0/24.
...
| Блок кода | ||
|---|---|---|
| ||
cluster
cluster-interface bridge 1
unit 1
mac-address a2:00:00:10:c0:00
exit
unit 2
mac-address a2:00:00:10:d0:00
exit
enable
exit
hostname ESR-1 unit 1
hostname ESR-2 unit 2
object-group service DHCP_SERVER
port-range 67
exit
object-group service DHCP_CLIENT
port-range 68
exit
security zone SYNC
exit
security zone LAN
exit
bridge 1
vlan 1
security-zone SYNC
ip address 198.51.100.254/24 unit 1
ip address 198.51.100.253/24 unit 2
vrrp id 1
vrrp ip 198.51.100.1/24
vrrp group 1
vrrp authentication key ascii-text encrypted 88B11079B51D
vrrp authentication algorithm md5
vrrp
enable
exit
interface gigabitethernet 1/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 1/0/3
security-zone LAN
ip address 128192.66.0.2.254/3024
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 2/0/3
security-zone LAN
ip address 128192.660.02.1253/3024
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
security zone-pair SYNC self
rule 1
action permit
match protocol icmp
enable
exit
rule 2
action permit
match protocol vrrp
enable
exit
rule 3
action permit
match protocol ah
enable
exit
exit
security zone-pair LAN self
rule 1
action permit
match protocol vrrp
enable
exit
rule 2
action permit
match protocol udp
match source-port object-group DHCP_CLIENT
match destination-port object-group DHCP_SERVER
enable
exit
exit
ip dhcp-server
ip dhcp-server pool TRUSTED
network 192.0.2.0/24
address-range 192.0.2.10-192.0.2.100
default-router 192.0.2.1
exit |
| Scroll Pagebreak |
|---|
Решение:
Сконфигурируем object-group для настройки failover-сервисов:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# object-group network SYNC_SRC ESR-1(config-object-group-network)# ip address-range 198.51.100.254 unit 1 ESR-1(config-object-group-network)# ip address-range 198.51.100.253 unit 2 ESR-1(config-object-group-network)# exit ESR-1(config)# object-group network SYNC_DST ESR-1(config-object-group-network)# ip address-range 198.51.100.253 unit 1 ESR-1(config-object-group-network)# ip address-range 198.51.100.254 unit 2 ESR-1(config-object-group-network)# exit |
Перейдем к настройке общих параметров для failover-сервисов, а именно к выбору: IP-адреса с которого будут отправляться сообщения для синхронизации, IP-адреса получателя сообщений для синхронизации и VRRP-группу, на основе которой определяется состояние (основной/резервный) маршрутизатора при работе failover-сервисов:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# ip failover ESR-1(config-failover)# local-address object-group SYNC_SRC ESR-1(config-failover)# remote-address object-group SYNC_DST ESR-1(config-failover)# vrrp-group 1 ESR-1(config-failover)# exit |
...
| Примечание |
|---|
Для работы в кластере необходимо использовать режим active-standby. |
| Scroll Pagebreak |
|---|
Создадим разрешающие правило для зоны безопасности SYNC, разрешив прохождение необходимого трафика для работы DHCP failoverfailover:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# object-group service SYNC ESR-1(config-object-group-service)# port-range 873 ESR-1(config-object-group-service)# exit ESR-1(config)# security zone-pair SYNC self ESR-1(config-security-zone-pair)# rule 4 ESR-1(config-security-zone-pair-rule)# action permit ESR-1(config-security-zone-pair-rule)# match protocol tcp ESR-1(config-security-zone-pair-rule)# match destination-port object-group SYNC ESR-1(config-security-zone-pair-rule)# enable ESR-1(config-security-zone-pair-rule)# exit ESR-1(config-security-zone-pair)# exit |
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show high-availability state
AP Tunnels:
State: Disabled
Last state change: --
DHCP option 82 table:
State: Disabled
Last state change: --
DHCP server:
VRF: --
Mode: Active-Standby
State: Successful synchronization
Last synchronization: 2025-02-12 07:56:36
crypto-sync:
State: Disabled
Firewall sessions and NAT translations:
State: Disabled |
| Scroll Pagebreak |
|---|
Выданные адреса DHCP можно просмотреть с помощью команды:
...
Пример настройки нескольких экземпляров DHCP failover, каждый в своем VRF
Задача:
Настроить два экземпляра DHCP failover, каждый в своём VRF, в кластере маршрутизаторов ESR-1 и ESR-2 со следующими параметрами:
- в качестве default-router используется IP-адрес VRRP;
- установить в качестве необходимого режима работы резервирования active-standby;
- настроить приоритеты у разных DHCP failover так, чтобы один из юнитов кластера был Master в одном VRF, а в другом был Backup;
- клиентская подсеть в первом VRF: 192.0.2.0/24;
- клиентская подсеть в втором VRF: 128.66.0.0/24.
...
| Блок кода | ||
|---|---|---|
| ||
cluster
cluster-interface bridge 1
unit 1
mac-address a2:00:00:10:c0:00
exit
unit 2
mac-address a2:00:00:10:d0:00
exit
enable
exit
hostname ESR-1 unit 1
hostname ESR-2 unit 2
object-group service DHCP_SERVER
port-range 67
exit
object-group service DHCP_CLIENT
port-range 68
exit
ip vrf LAN_ONE
exit
ip vrf LAN_TWO
exit
security zone SYNC
exit
security zone LAN_ONE
ip vrf forwarding LAN_ONE
exit
security zone LAN_TWO
ip vrf forwarding LAN_TWO
exit
bridge 1
vlan 1
security-zone SYNC
ip address 198.51.100.254/24 unit 1
ip address 198.51.100.253/24 unit 2
vrrp id 1
vrrp ip 198.51.100.1/24
vrrp group 1
vrrp authentication key ascii-text encrypted 8CB5107EA7005AFF
vrrp authentication algorithm md5
vrrp
enable
exit
interface gigabitethernet 1/0/1
mode switchport
exit
interface gigabitethernet 1/0/2.2
ip vrf forwarding LAN_ONE
security-zone LAN_ONE
ip address 192.0.2.254/24
vrrp id 4
vrrp ip 192.0.2.1/24
vrrp priority 120
vrrp group 2
vrrp
exit
interface gigabitethernet 1/0/2.3
ip vrf forwarding LAN_TWO
security-zone LAN_TWO
ip address 128.66.0.254/24
vrrp id 5
vrrp ip 128.66.0.1/24
vrrp priority 110
vrrp group 3
vrrp
exit
interface gigabitethernet 2/0/1
mode switchport
exit
interface gigabitethernet 2/0/2.2
ip vrf forwarding LAN_ONE
security-zone LAN_ONE
ip address 192.0.2.253/24
vrrp id 4
vrrp ip 192.0.2.1/24
vrrp priority 110
vrrp group 2
vrrp
exit
interface gigabitethernet 2/0/2.3
ip vrf forwarding LAN_TWO
security-zone LAN_TWO
ip address 128.66.0.253/24
vrrp id 5
vrrp ip 128.66.0.1/24
vrrp priority 120
vrrp group 3
vrrp
exit
security zone-pair SYNC self
rule 1
action permit
match protocol icmp
enable
exit
rule 2
action permit
match protocol vrrp
enable
exit
rule 3
action permit
match protocol ah
enable
exit
exit
security zone-pair LAN_ONE self
rule 1
action permit
match protocol vrrp
enable
exit
rule 2
action permit
match protocol udp
match source-port object-group DHCP_CLIENT
match destination-port object-group DHCP_SERVER
enable
exit
exit
security zone-pair LAN_TWO self
rule 1
action permit
match protocol vrrp
enable
exit
rule 2
action permit
match protocol udp
match source-port object-group DHCP_CLIENT
match destination-port object-group DHCP_SERVER
enable
exit
exit
ip dhcp-server vrf LAN_ONE
ip dhcp-server pool LAN_ONE vrf LAN_ONE
network 192.0.2.0/24
address-range 192.0.2.10-192.0.2.253
default-router 192.0.2.1
exit
ip dhcp-server vrf LAN_TWO
ip dhcp-server pool LAN_TWO vrf LAN_TWO
network 128.66.0.0/24
address-range 128.66.0.10-128.66.0.253
default-router 128.66.0.1
exit |
| Scroll Pagebreak |
|---|
Решение:
Сконфигурируем objectСконфигурируем object-group для настройки DHCP failover-сервисов:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# object-group network DST_LAN_ONE ESR-1(config-object-group-network)# ip address-range 192.0.2.253 unit 1 ESR-1(config-object-group-network)# ip address-range 192.0.2.254 unit 2 ESR-1(config-object-group-network)# exit ESR-1(config)# object-group network DST_LAN_TWO ESR-1(config-object-group-network)# ip address-range 128.66.0.253 unit 1 ESR-1(config-object-group-network)# ip address-range 128.66.0.254 unit 2 ESR-1(config-object-group-network)# exit ESR-1(config)# object-group network SRC_LAN_ONE ESR-1(config-object-group-network)# ip address-range 192.0.2.254 unit 1 ESR-1(config-object-group-network)# ip address-range 192.0.2.253 unit 2 ESR-1(config-object-group-network)# exit ESR-1(config)# object-group network SRC_LAN_TWO ESR-1(config-object-group-network)# ip address-range 128.66.0.254 unit 1 ESR-1(config-object-group-network)# ip address-range 128.66.0.253 unit 2 ESR-1(config-object-group-network)# exit |
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# ip dhcp-server failover vrf LAN_ONE ESR-1(config-dhcp-server-failover)# mode active-standby ESR-1(config-dhcp-server-failover)# enable ESR-1(config-dhcp-server-failover)# exit ESR-1(config)# ip dhcp-server failover vrf LAN_TWO ESR-1(config-dhcp-server-failover)# mode active-standby ESR-1(config-dhcp-server-failover)# enable ESR-1(config-dhcp-server-failover)# exit |
| Scroll Pagebreak |
|---|
Разрешим в настройках firewall работу dhcp-failover в соответствующих зонах:
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show ip dhcp server failover vrf LAN_ONE
VRF: LAN_ONE
Mode: Active-Standby
Role: Master
State: Synchronized
Last synchronization: 2025-02-18 09:34:44
ESR-1# show ip dhcp server failover vrf LAN_TWO
VRF: LAN_TWO
Mode: Active-Standby
Role: Backup
State: Synchronized
Last synchronization: 2025-02-18 09:34:46 |
| Scroll Pagebreak |
|---|
Также статусы работы DHCP-серверов можно посмотреть с помощью команды:
...
Протокол SNMP (Simple Network Management Protocol) реализует модель «менеджер–агент» для централизованного управления сетевыми устройствами: агенты, установленные на устройствах, собирают данные, структурированные в MIB, а менеджер запрашивает информацию, мониторит состояние сети, контролирует производительность и вносит изменения в конфигурацию оборудования.
Подробный алгоритм настройки SNMP описан в разделе Настройка SNMP-сервера и отправки SNMP TRAP.
Пример настройки
Схема реализации SNMP
Задача:
- обеспечить возможность мониторинга сети через management-интерфейс каждого устройства в кластере:
- обеспечить возможность мониторинга состояния сети и внесения изменений в конфигурацию устройства, выполняющего роль VRRP Master;
- устройство управления (MGMT) доступно по IP-адресу 192.0.2.10.
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# security zone-pair MGMT self ESR-1(config-security-zone-pair)# rule 2 ESR-1(config-security-zone-pair-rule)# action permit ESR-1(config-security-zone-pair-rule)# match protocol udp ESR-1(config-security-zone-pair-rule)# match destination-port object-group SNMP ESR-1(config-security-zone-pair-rule)# enable ESR-1(config-security-zone-pair-rule)# exit ESR-1(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Активируем SNMP-сервер, настроив параметр snmp-community для обеспечения аутентификации и корректного доступа к данным мониторинга:
...
Source NAT (SNAT) представляет собой механизм, осуществляющий замену исходного IP-адреса в заголовках IP-пакетов, проходящих через сетевой шлюз. При передаче трафика из внутренней (локальной) сети в внешнюю (публичную) сеть исходный адрес заменяется на один из назначенных публичных IP-адресов шлюза. В ряде случаев осуществляется дополнительное преобразование исходного порта (NATP – Network Address and Port Translation), что обеспечивает корректное направление обратного трафика. При поступлении пакетов из публичной сети в локальную происходит обратная процедура – восстановление оригинальных значений IP-адреса и порта для обеспечения корректной маршрутизации внутри внутренней сети.
Алгоритм Source NAT описан в разделе Алгоритм настройки Source NAT.
Пример настройки
Задача:
- предоставить доступ в Интернет хостам, находящимся в локальной сети;
- клиентская подсеть: 192.0.2.0/24;
публичный IP-адрес – VIP-адрес на интерфейсе.
...
Функция Destination NAT (DNAT) выполняет преобразование IP-адреса назначения в заголовках пакетов, проходящих через сетевой шлюз. DNAT применяется для перенаправления трафика, адресованного на IP-адрес в публичном сегменте сети, на «реальный» IP-адрес сервера, расположенного в локальной сети за шлюзом.
Алгоритм настройки Destination NAT описан в разделе Алгоритм настройки DNAT.
Пример настройки
...
- организовать публичный доступа к серверу, находящемуся в частной сети и не имеющему публичного сетевого адреса;
- сервер доступен по адресу: 192.0.2.10/24;
Схема реализации Destination NAT
...
| Блок кода |
|---|
cluster
cluster-interface bridge 1
unit 1
mac-address a2:00:00:10:c0:00
exit
unit 2
mac-address a2:00:00:10:d0:00
exit
enable
exit
hostname ESR-1 unit 1
hostname ESR-2 unit 2
security zone SYNC
exit
security zone LAN
exit
security zone WAN
exit
bridge 1
vlan 1
security-zone SYNC
ip address 198.51.100.254/24 unit 1
ip address 198.51.100.253/24 unit 2
vrrp id 1
vrrp ip 198.51.100.1/24
vrrp group 1
vrrp authentication key ascii-text encrypted 88B11079B51D
vrrp authentication algorithm md5
vrrp
enable
exit
interface gigabitethernet 1/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 1/0/2
security-zone WAN
ip address 128.66.0.6/30
vrrp id 3
vrrp ip 203.0.113.2/30
vrrp group 1
vrrp
exit
interface gigabitethernet 1/0/3
security-zone LAN
ip address 128.66.0.2/30
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 2/0/2
security-zone WAN
ip address 128.66.0.5/30
vrrp id 3
vrrp ip 203.0.113.2/30
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/3
security-zone LAN
ip address 128.66.0.1/30
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
security zone-pair SYNC self
rule 1
action permit
match protocol icmp
enable
exit
rule 2
action permit
match protocol vrrp
enable
exit
rule 3
action permit
match protocol ah
enable
exit
exit
security zone-pair LAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit
security zone-pair WAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit |
| Scroll Pagebreak |
|---|
Решение:
Создадим профиль адреса сервера из WAN сети, с которого будем принимать:
...
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config-dnat)# ruleset DNAT_SERVER_DMZ ESR-1(config-dnat-ruleset)# from zone WAN ESR-1(config-dnat-ruleset)# rule 1 ESR-1(config-dnat-rule)# match protocol tcp ESR-1(config-dnat-rule)# match destination-address object-group INTERNAL ESR-1(config-dnat-rule)# match destination-port object-group SERVER_DMZ ESR-1(config-dnat-rule)# action destination-nat pool DMZ ESR-1(config-dnat-rule)# enable ESR-1(config-dnat-rule)# exit ESR-1(config-dnat-ruleset)# exit ESR-1(config-dnat)# exit |
| Scroll Pagebreak |
|---|
Добавим правило, которое проверяет применение правил исключительно к пакетам, поступающим из зоны WAN. Набор правил включает требования соответствия по адресу назначения (match destination-address) и протоколу. Дополнительно в наборе определено действие (action destination-nat), которое применяется к данным, удовлетворяющим указанным критериям:
| Блок кода | ||
|---|---|---|
| ||
ESR-1(config)# security zone-pair WAN LAN ESR-1(config-security-zone-pair)# rule 1 ESR-1(config-security-zone-pair-rule)# action permit ESR-1(config-security-zone-pair-rule)# match protocol tcp ESR-1(config-security-zone-pair-rule)# match destination-port object-group SERVER_DMZ ESR-1(config-security-zone-pair-rule)# match destination-nat ESR-1(config-security-zone-pair-rule)# enable ESR-1(config-security-zone-pair-rule)# exit ESR-1(config-security-zone-pair)# exit |
Просмотр таблицы NAT-трансляций осуществляется посредством следующей команды:
| Блок кода | ||
|---|---|---|
| ||
ESR-1# show ip nat translations Prot Inside source Inside destination Outside source Outside destination Pkts Bytes ---- --------------------- --------------------- --------------------- --------------------- ---------- ---------- tcp 203.0.113.1:41296 192.0.2.10:22 203.0.113.1:41296 203.0.113.2:22 -- -- |
Настройка BGP
Протокол BGP предназначен для обмена информацией о достижимости подсетей между автономными системами (далее АС), то есть группами маршрутизаторов под единым техническим управлением, использующими протокол внутридоменной маршрутизации для определения маршрутов внутри себя и протокол междоменной маршрутизации для определения маршрутов доставки пакетов в другие АС. Передаваемая информация включает в себя список АС, к которым имеется доступ через данную систему. Выбор наилучших маршрутов осуществляется исходя из правил, принятых в сети.
...
- соседство устанавливается только с Active-устройством;
- клиентская подсеть: 192.0.2.0/24;
- анонсирование подсетей, подключенных напрямую;
- собственная AS 64500;
- соседство – подсеть 203.0.113.0/24, vrrp IP-адрес для подключения 203.0.113.1, IP-адрес соседа 203.0.113.2, 64501.
Схема реализации eBGP с общим IP-адресом
Исходная конфигурация кластера:
...
| Блок кода |
|---|
ESR-2# show bgp neighbors
BGP neighbor is 203.0.113.2
BGP state: Active
Type: Static neighbor
Neighbor address: 203.0.113.1
Neighbor AS: 64501
Connect delay: 2/5
Last error: Socket: Network is unreachable |
| Scroll Pagebreak |
|---|
Таблицу маршрутов протокола BGP можно просмотреть с помощью команды:
...
| Примечание |
|---|
В случае выхода из строя Active-устройства BGP будет полностью переустанавливаться со Standby-устройством. |
| Scroll Pagebreak |
|---|
Пример настройки eBGP Пример настройки eBGP с каждым участником кластера по индивидуальным IP-адресам
...
- соседство устанавливается с каждым маршрутизатором в кластере индивидуально;
- клиентская подсеть: 192.0.2.0/24;
- анонсирование подсетей, подключенных напрямую;
- собственная AS 64500;
- соседство для ESR-1 – подсеть 203.0.113.0/30, IP-адрес для подключения 203.0.113.1, IP-адрес соседа 203.0.113.2, 64501;
- соседство для ESR-2 – подсеть 203.0.113.4/30, IP-адрес для подключения 203.0.113.5, IP-адрес соседа 203.0.113.6, 64502.
Схема реализации eBGP с каждым участником кластера по индивидуальным IP-адресам
Исходные конфигурации маршрутизаторов в кластере:
| Блок кода | ||
|---|---|---|
| ||
cluster
cluster-interface bridge 1
unit 1
mac-address a2:00:00:10:c0:00
exit
unit 2
mac-address a2:00:00:10:d0:00
exit
enable
exit
hostname ESR-1 unit 1
hostname ESR-2 unit 2
security zone SYNC
exit
security zone LAN
exit
security zone WAN
exit
bridge 1
vlan 1
security-zone SYNC
ip address 198.51.100.254/24 unit 1
ip address 198.51.100.253/24 unit 2
vrrp id 1
vrrp ip 198.51.100.1/24
vrrp group 1
vrrp authentication key ascii-text encrypted 88B11079B51D
vrrp authentication algorithm md5
vrrp
enable
exit
interface gigabitethernet 1/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 1/0/2
security-zone LAN
ip address 192.0.2.254/24
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
interface gigabitethernet 1/0/3
security-zone WAN
ip address 203.0.113.1/30
exit
interface gigabitethernet 2/0/1
mode switchport
spanning-tree disable
exit
interface gigabitethernet 2/0/2
security-zone LAN
ip address 192.0.2.253/24
vrrp id 2
vrrp ip 192.0.2.1/24
vrrp group 1
vrrp
exit
interface gigabitethernet 2/0/3
security-zone WAN
ip address 203.0.113.5/30
exit
security zone-pair SYNC self
rule 1
action permit
match protocol icmp
enable
exit
rule 2
action permit
match protocol vrrp
enable
exit
rule 3
action permit
match protocol ah
enable
exit
exit
security zone-pair LAN self
rule 1
action permit
match protocol vrrp
enable
exit
rule 2
action permit
match protocol ah
enable
exit
exit
security zone-pair WAN self
rule 1
action permit
match protocol vrrp
enable
exit
exit |
| Scroll Pagebreak |
|---|
Решение:
Настроем firewall для приема маршрутизатором BGP-трафика из зоны безопасности WAN:
...
| Блок кода |
|---|
ESR-1(config-bgp)# address-family ipv4 unicast ESR-1(config-bgp-af)# redistribute connected ESR-1(config-bgp-af)# exit |
| Scroll Pagebreak |
|---|
Создадим eBGP с вышестоящим роутером:
...
| Блок кода |
|---|
ESR-2# show bgp neighbors
BGP neighbor is 203.0.113.6
BGP state: Established
Type: Static neighbor
Neighbor address: 203.0.113.6
Neighbor AS: 64502
Neighbor ID: 203.0.113.6
Neighbor caps: refresh enhanced-refresh restart-aware AS4
Session: external AS4
Source address: 203.0.113.5
Weight: 0
Hold timer: 144/180
Keepalive timer: 29/60
RR client: No
Address family ipv4 unicast:
Send-label: No
Default originate: No
Default information originate: No
Outgoing route-map: bgp-out
Preference: 170
Remove private AS: No
Next-hop self: No
Next-hop unchanged: No
Uptime (d,h:m:s): 00,00:00:20 |
| Scroll Pagebreak |
|---|
Таблицу маршрутов протокола BGP можно просмотреть с помощью команды:
...
Пример настройки в кластере DMVPN Single Hub Dual Cloud схемы
Задача:
Организовать DMVPN между офисами компании, используя mGRE-туннели, NHRP (Next Hop Resolution Protocol), протокол динамической маршрутизации (BGP), IPsec. В данном примере будет HUB-маршрутизатор, который находится в кластере, и два филиала. HUB – это DMVPN-cервер (NHS), а филиалы – DMPVN-клиенты (NHC).
...
- группа Диффи-Хэллмана: 19;
- алгоритм шифрования: AES256;
- алгоритм аутентификации: SHA2-256.
Схема реализации DMVPN Single Hub Dual Cloud в кластере
Исходная конфигурация CLUSTER-HUB:
...
| Блок кода | ||
|---|---|---|
| ||
hostname SPOKE-2 security zone LAN exit security zone WAN exit interface gigabitethernet 1/0/1 security-zone WAN ip address 198.51.100.14/30 exit interface gigabitethernet 1/0/2 security-zone LAN ip address 128.66.2.1/24 exit ip route 198.51.100.0/30 198.51.100.13 ip route 198.51.100.4/30 198.51.100.13 ip route 198.51.100.8/30 198.51.100.13 |
| Scroll Pagebreak |
|---|
Решение:
- Конфигурирование HUB
Создадим туннели mGRE, каждый через свой CLOUD, определим принадлежность к зоне безопасности, настроим NHRP и включим туннель и NHRP командой enable:
| Блок кода |
|---|
HUB-1(config)# security zone DMVPN_C_ONE HUB-1(config-security-zone)# exit HUB-1(config)# security zone DMVPN_C_TWO HUB-1(config-security-zone)# exit HUB-1(config)# tunnel gre 1 HUB-1(config-gre)# key 1000 HUB-1(config-gre)# ttl 64 HUB-1(config-gre)# mtu 1400 HUB-1(config-gre)# multipoint HUB-1(config-gre)# security-zone DMVPN_C_ONE HUB-1(config-gre)# local address 198.51.100.2 HUB-1(config-gre)# ip address 203.0.113.1/25 HUB-1(config-gre)# ip tcp adjust-mss 1360 HUB-1(config-gre)# ip nhrp redirect HUB-1(config-gre)# ip nhrp multicast dynamic HUB-1(config-gre)# ip nhrp enable HUB-1(config-gre)# enable HUB-1(config-gre)# exit HUB-1(config)# tunnel gre 2 HUB-1(config-gre)# key 2000 HUB-1(config-gre)# ttl 64 HUB-1(config-gre)# mtu 1400 HUB-1(config-gre)# multipoint HUB-1(config-gre)# security-zone DMVPN_C_TWO HUB-1(config-gre)# local address 198.51.100.6 HUB-1(config-gre)# ip address 203.0.113.129/25 HUB-1(config-gre)# ip tcp adjust-mss 1360 HUB-1(config-gre)# ip nhrp redirect HUB-1(config-gre)# ip nhrp multicast dynamic HUB-1(config-gre)# ip nhrp enable HUB-1(config-gre)# enable HUB-1(config-gre)# exit |
| Scroll Pagebreak |
|---|
Произведём настройку протокола динамической маршрутизации для Hub. В примере это будет eBGP, для которого необходимо явно разрешить анонсирование подсетей.
...
| Блок кода |
|---|
HUB-1(config)# route-map DMVPN_BGP_OUT_CLOUD_ONE HUB-1(config-route-map)# rule 1 HUB-1(config-route-map-rule)# match ip address 0.0.0.0/0 HUB-1(config-route-map-rule)# action set metric bgp 1000 HUB-1(config-route-map-rule)# exit HUB-1(config-route-map)# exit HUB-1(config)# route-map DMVPN_BGP_OUT_CLOUD_TWO HUB-1(config-route-map)# rule 1 HUB-1(config-route-map-rule)# match ip address 0.0.0.0/0 HUB-1(config-route-map-rule)# action set metric bgp 2000 HUB-1(config-route-map-rule)# exit HUB-1(config-route-map)# exit HUB-1(config)# router bgp 64500 HUB-1(config-bgp)# default-information-originate HUB-1(config-bgp)# timers error-wait 5 10 HUB-1(config-bgp)# peer-group DMVPN_CLOUD_ONE HUB-1(config-bgp-group)# remote-as 64501 HUB-1(config-bgp-group)# update-source 203.0.113.1 HUB-1(config-bgp-group)# fall-over bfd HUB-1(config-bgp-group)# address-family ipv4 unicast HUB-1(config-bgp-group-af)# route-map DMVPN_BGP_OUT_CLOUD_ONE out HUB-1(config-bgp-group-af)# next-hop-self HUB-1(config-bgp-group-af)# enable HUB-1(config-bgp-group-af)# exit HUB-1(config-bgp-group)# exit HUB-1(config-bgp)# peer-group DMVPN_CLOUD_TWO HUB-1(config-bgp-group)# remote-as 64501 HUB-1(config-bgp-group)# update-source 203.0.113.129 HUB-1(config-bgp-group)# fall-over bfd HUB-1(config-bgp-group)# address-family ipv4 unicast HUB-1(config-bgp-group-af)# route-map DMVPN_BGP_OUT_CLOUD_TWO out HUB-1(config-bgp-group-af)# next-hop-self HUB-1(config-bgp-group-af)# enable HUB-1(config-bgp-group-af)# exit HUB-1(config-bgp-group)# exit HUB-1(config-bgp)# listen-range 203.0.113.0/25 HUB-1(config-bgp-listen)# peer-group DMVPN_CLOUD_ONE HUB-1(config-bgp-listen)# enable HUB-1(config-bgp-listen)# exit HUB-1(config-bgp)# listen-range 203.0.113.128/25 HUB-1(config-bgp-listen)# peer-group DMVPN_CLOUD_TWO HUB-1(config-bgp-listen)# enable HUB-1(config-bgp-listen)# exit HUB-1(config-bgp)# address-family ipv4 unicast HUB-1(config-bgp-af)# redistribute static HUB-1(config-bgp-af)# exit HUB-1(config-bgp)# enable HUB-1(config-bgp)# exit |
| Scroll Pagebreak |
|---|
Произведём настройку IPsec для Hub, для начала настроим ike proposal, ike policy и ike gateway. В ike gateway дополнительно настроим dpd, для ускорения перестроения туннелей в случае если выйдет из строя Active-устройство:
| Блок кода |
|---|
HUB-1(config)# security ike proposal ike_proposal HUB-1(config-ike-proposal)# authentication algorithm sha2-256 HUB-1(config-ike-proposal)# encryption algorithm aes256 HUB-1(config-ike-proposal)# dh-group 19 HUB-1(config-ike-proposal)# exit HUB-1(config)# HUB-1(config)# security ike policy ike_policy HUB-1(config-ike-policy)# pre-shared-key ascii-text encrypted 8CB5107EA7005AFF HUB-1(config-ike-policy)# proposal ike_proposal HUB-1(config-ike-policy)# exit HUB-1(config)# security ike gateway ike_gateway_cloud_one HUB-1(config-ike-gw)# version v2-only HUB-1(config-ike-gw)# ike-policy ike_policy HUB-1(config-ike-gw)# local address 198.51.100.2 HUB-1(config-ike-gw)# local network 198.51.100.2/32 protocol gre HUB-1(config-ike-gw)# remote address any HUB-1(config-ike-gw)# remote network any protocol gre HUB-1(config-ike-gw)# mode policy-based HUB-1(config-ike-gw)# mobike disable HUB-1(config-ike-gw)# dead-peer-detection action clear HUB-1(config-ike-gw)# dead-peer-detection interval 310 HUB-1(config-ike-gw)# dead-peer-detection retransmit timeout 15 HUB-1(config-ike-gw)# dead-peer-detection retransmit tries 2 HUB-1(config-ike-gw)# exit HUB-1(config)# security ike gateway ike_gateway_cloud_two HUB-1(config-ike-gw)# version v2-only HUB-1(config-ike-gw)# ike-policy ike_policy HUB-1(config-ike-gw)# local address 198.51.100.6 HUB-1(config-ike-gw)# local network 198.51.100.6/32 protocol gre HUB-1(config-ike-gw)# remote address any HUB-1(config-ike-gw)# remote network any protocol gre HUB-1(config-ike-gw)# mode policy-based HUB-1(config-ike-gw)# mobike disable HUB-1(config-ike-gw)# dead-peer-detection action clear HUB-1(config-ike-gw)# dead-peer-detection interval 310 HUB-1(config-ike-gw)# dead-peer-detection retransmit timeout 15 HUB-1(config-ike-gw)# dead-peer-detection retransmit tries 2 HUB-1(config-ike-gw)# exit HUB-1(config)# HUB-1(config)# security ike session uniqueids replace |
Scroll Pagebreak
Затем настроим IPsec proposal, IPsec policy и IPsec vpn туннели через каждый CLOUD:
| Блок кода |
|---|
HUB-1(config)# security ipsec proposal ipsec_proposal HUB-1(config-ipsec-proposal)# authentication algorithm sha2-256 HUB-1(config-ipsec-proposal)# encryption algorithm aes256 HUB-1(config-ipsec-proposal)# pfs dh-group 19 HUB-1(config-ipsec-proposal)# exit HUB-1(config)# security ipsec policy ipsec_policy HUB-1(config-ipsec-policy)# proposal ipsec_proposal HUB-1(config-ipsec-policy)# exit HUB-1(config)# security ipsec vpn ipsec_dynamic_cloud_one HUB-1(config-ipsec-vpn)# type transport HUB-1(config-ipsec-vpn)# ike establish-tunnel route HUB-1(config-ipsec-vpn)# ike gateway ike_gateway_cloud_one HUB-1(config-ipsec-vpn)# ike ipsec-policy ipsec_policy HUB-1(config-ipsec-vpn)# enable HUB-1(config-ipsec-vpn)# exit HUB-1(config)# security ipsec vpn ipsec_dynamic_cloud_two HUB-1(config-ipsec-vpn)# type transport HUB-1(config-ipsec-vpn)# ike establish-tunnel route HUB-1(config-ipsec-vpn)# ike gateway ike_gateway_cloud_two HUB-1(config-ipsec-vpn)# ike ipsec-policy ipsec_policy HUB-1(config-ipsec-vpn)# enable HUB-1(config-ipsec-vpn)# exit |
| Scroll Pagebreak |
|---|
Скорректируем правила зоны безопасности WAN,разрешим разрешим протоколы для GRE over IPSec-туннеля:
| Блок кода |
|---|
HUB-1(config)# object-group service ISAKMP_PORT HUB-1(config-object-group-service)# port-range 500 HUB-1(config-object-group-service)# port-range 4500 HUB-1(config-object-group-service)# exit HUB-1(config)# security zone-pair WAN self HUB-1(config-security-zone-pair)# rule 3 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol udp HUB-1(config-security-zone-pair-rule)# match destination-port object-group ISAKMP_PORT HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# rule 4 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol esp HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# rule 5 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol gre HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Настроим правила зон безопасности DMVPN_C_ONE и DMVPN_C_TWO, разрешим прохождение трафика для протоколов BGP, BFD, ICMP:
| Блок кода |
|---|
HUB-1(config)# object-group service BGP HUB-1(config-object-group-service)# port-range 179 HUB-1(config-object-group-service)# exit HUB-1(config)# object-group service BFD HUB-1(config-object-group-service)# port-range 3784 HUB-1(config-object-group-service)# exit HUB-1(config)# security zone-pair DMVPN_C_ONE self HUB-1(config-security-zone-pair)# rule 1 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol icmp HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# rule 2 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol tcp HUB-1(config-security-zone-pair-rule)# match destination-port object-group BGP HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# rule 3 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol udp HUB-1(config-security-zone-pair-rule)# match destination-port object-group BFD HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# exit HUB-1(config)# security zone-pair DMVPN_C_TWO self HUB-1(config-security-zone-pair)# rule 1 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol icmp HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# rule 2 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol tcp HUB-1(config-security-zone-pair-rule)# match destination-port object-group BGP HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# rule 3 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# match protocol udp HUB-1(config-security-zone-pair-rule)# match destination-port object-group BFD HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Скорректируем правила зоны безопасности LAN, разрешим прохождение трафика между зонами LAN и DMVPN_C_ONE/DMVPN_C_TWO:
| Блок кода |
|---|
HUB-1(config)# security zone-pair LAN DMVPN_C_ONE HUB-1(config-security-zone-pair)# rule 1 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# exit HUB-1(config)# security zone-pair LAN DMVPN_C_TWO HUB-1(config-security-zone-pair)# rule 1 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# exit HUB-1(config)# security zone-pair DMVPN_C_ONE LAN HUB-1(config-security-zone-pair)# rule 1 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# exit HUB-1(config)# security zone-pair DMVPN_C_TWO LAN HUB-1(config-security-zone-pair)# rule 1 HUB-1(config-security-zone-pair-rule)# action permit HUB-1(config-security-zone-pair-rule)# enable HUB-1(config-security-zone-pair-rule)# exit HUB-1(config-security-zone-pair)# exit |
Scroll Pagebreak
- Конфигурирование SPOKE-1
Создадим туннели mGRE, каждый через свой CLOUD, определим принадлежность к зоне безопасности, настроим NHRP и включим туннель и NHRP командой enable:
| Блок кода |
|---|
SPOKE-1(config)# security zone DMVPN_C_TWO SPOKE-1(config-security-zone)# exit SPOKE-1(config)# security zone DMVPN_C_ONE SPOKE-1(config-security-zone)# exit SPOKE-1(config)# tunnel gre 1 SPOKE-1(config-gre)# key 1000 SPOKE-1(config-gre)# ttl 64 SPOKE-1(config-gre)# mtu 1400 SPOKE-1(config-gre)# multipoint SPOKE-1(config-gre)# security-zone DMVPN_C_ONE SPOKE-1(config-gre)# local address 198.51.100.10 SPOKE-1(config-gre)# ip address 203.0.113.2/25 SPOKE-1(config-gre)# ip tcp adjust-mss 1360 SPOKE-1(config-gre)# ip nhrp holding-time 60 SPOKE-1(config-gre)# ip nhrp shortcut SPOKE-1(config-gre)# ip nhrp map 203.0.113.1 198.51.100.2 SPOKE-1(config-gre)# ip nhrp nhs 203.0.113.1 SPOKE-1(config-gre)# ip nhrp multicast nhs SPOKE-1(config-gre)# ip nhrp enable SPOKE-1(config-gre)# enable SPOKE-1(config-gre)# exit SPOKE-1(config)# tunnel gre 2 SPOKE-1(config-gre)# key 2000 SPOKE-1(config-gre)# ttl 64 SPOKE-1(config-gre)# mtu 1400 SPOKE-1(config-gre)# multipoint SPOKE-1(config-gre)# security-zone DMVPN_C_TWO SPOKE-1(config-gre)# local address 198.51.100.10 SPOKE-1(config-gre)# ip address 203.0.113.130/25 SPOKE-1(config-gre)# ip tcp adjust-mss 1360 SPOKE-1(config-gre)# ip nhrp holding-time 60 SPOKE-1(config-gre)# ip nhrp shortcut SPOKE-1(config-gre)# ip nhrp map 203.0.113.129 198.51.100.6 SPOKE-1(config-gre)# ip nhrp nhs 203.0.113.129 SPOKE-1(config-gre)# ip nhrp multicast nhs SPOKE-1(config-gre)# ip nhrp enable SPOKE-1(config-gre)# enable SPOKE-1(config-gre)# exit |
| Scroll Pagebreak |
|---|
Произведём настройку протокола динамической маршрутизации для SPOKE-1. В примере это будет eBGP, для которого необходимо явно разрешить анонсирование подсетей. Анонсируем LAN подсети в сторону HUB используя network в address-family.
...
| Блок кода |
|---|
SPOKE-1(config)# route-map DMVPN_BGP_OUT SPOKE-1(config-route-map)# rule 1 SPOKE-1(config-route-map-rule)# exit SPOKE-1(config-route-map)# exit SPOKE-1(config)# router bgp 64501 SPOKE-1(config-bgp)# timers error-wait 5 10 SPOKE-1(config-bgp)# neighbor 203.0.113.1 SPOKE-1(config-bgp-neighbor)# remote-as 64500 SPOKE-1(config-bgp-neighbor)# allow-local-as 10 SPOKE-1(config-bgp-neighbor)# update-source 203.0.113.2 SPOKE-1(config-bgp-neighbor)# fall-over bfd SPOKE-1(config-bgp-neighbor)# address-family ipv4 unicast SPOKE-1(config-bgp-neighbor-af)# route-map DMVPN_BGP_OUT out SPOKE-1(config-bgp-neighbor-af)# enable SPOKE-1(config-bgp-neighbor-af)# exit SPOKE-1(config-bgp-neighbor)# enable SPOKE-1(config-bgp-neighbor)# exit SPOKE-1(config-bgp)# neighbor 203.0.113.129 SPOKE-1(config-bgp-neighbor)# remote-as 64500 SPOKE-1(config-bgp-neighbor)# allow-local-as 10 SPOKE-1(config-bgp-neighbor)# update-source 203.0.113.130 SPOKE-1(config-bgp-neighbor)# fall-over bfd SPOKE-1(config-bgp-neighbor)# address-family ipv4 unicast SPOKE-1(config-bgp-neighbor-af)# route-map DMVPN_BGP_OUT out SPOKE-1(config-bgp-neighbor-af)# enable SPOKE-1(config-bgp-neighbor-af)# exit SPOKE-1(config-bgp-neighbor)# enable SPOKE-1(config-bgp-neighbor)# exit SPOKE-1(config-bgp)# address-family ipv4 unicast SPOKE-1(config-bgp-af)# network 128.66.1.0/24 SPOKE-1(config-bgp-af)# exit SPOKE-1(config-bgp)# enable SPOKE-1(config-bgp)# exit |
| Scroll Pagebreak |
|---|
Произведём настройку IPsec для SPOKE-1, настроим ike proposal, ike policy и ike gateway. В ike gateway дополнительно настроим dpd для ускорения перестроения туннелей, в случае если выйдет из строя Active-устройство:
| Блок кода |
|---|
SPOKE-1(config)# security ike proposal ike_proposal SPOKE-1(config-ike-proposal)# authentication algorithm sha2-256 SPOKE-1(config-ike-proposal)# encryption algorithm aes256 SPOKE-1(config-ike-proposal)# dh-group 19 SPOKE-1(config-ike-proposal)# exit SPOKE-1(config)# security ike policy ike_policy SPOKE-1(config-ike-policy)# pre-shared-key ascii-text encrypted 8CB5107EA7005AFF SPOKE-1(config-ike-policy)# proposal ike_proposal SPOKE-1(config-ike-policy)# exit SPOKE-1(config)# security ike gateway ike_gateway_cloud_one SPOKE-1(config-ike-gw)# version v2-only SPOKE-1(config-ike-gw)# ike-policy ike_policy SPOKE-1(config-ike-gw)# local address 198.51.100.10 SPOKE-1(config-ike-gw)# local network 198.51.100.10/32 protocol gre SPOKE-1(config-ike-gw)# remote address 198.51.100.2 SPOKE-1(config-ike-gw)# remote network 198.51.100.2/32 protocol gre SPOKE-1(config-ike-gw)# mode policy-based SPOKE-1(config-ike-gw)# mobike disable SPOKE-1(config-ike-gw)# dead-peer-detection action clear SPOKE-1(config-ike-gw)# dead-peer-detection interval 310 SPOKE-1(config-ike-gw)# dead-peer-detection retransmit timeout 15 SPOKE-1(config-ike-gw)# dead-peer-detection retransmit tries 2 SPOKE-1(config-ike-gw)# exit SPOKE-1(config)# security ike gateway ike_gateway_cloud_two SPOKE-1(config-ike-gw)# version v2-only SPOKE-1(config-ike-gw)# ike-policy ike_policy SPOKE-1(config-ike-gw)# local address 198.51.100.10 SPOKE-1(config-ike-gw)# local network 198.51.100.10/32 protocol gre SPOKE-1(config-ike-gw)# remote address 198.51.100.6 SPOKE-1(config-ike-gw)# remote network 198.51.100.6/32 protocol gre SPOKE-1(config-ike-gw)# mode policy-based SPOKE-1(config-ike-gw)# mobike disable SPOKE-1(config-ike-gw)# dead-peer-detection action clear SPOKE-1(config-ike-gw)# dead-peer-detection interval 310 SPOKE-1(config-ike-gw)# dead-peer-detection retransmit timeout 15 SPOKE-1(config-ike-gw)# dead-peer-detection retransmit tries 2 SPOKE-1(config-ike-gw)# exit SPOKE-1(config)# security ike gateway ike_gateway_to_spokes SPOKE-1(config-ike-gw)# version v2-only SPOKE-1(config-ike-gw)# ike-policy ike_policy SPOKE-1(config-ike-gw)# local address 198.51.100.10 SPOKE-1(config-ike-gw)# local network 198.51.100.10/32 protocol gre SPOKE-1(config-ike-gw)# remote id any SPOKE-1(config-ike-gw)# remote address any SPOKE-1(config-ike-gw)# remote network any protocol gre SPOKE-1(config-ike-gw)# mode policy-based SPOKE-1(config-ike-gw)# mobike disable SPOKE-1(config-ike-gw)# dead-peer-detection action clear SPOKE-1(config-ike-gw)# dead-peer-detection interval 310 SPOKE-1(config-ike-gw)# dead-peer-detection retransmit timeout 15 SPOKE-1(config-ike-gw)# dead-peer-detection retransmit tries 2 SPOKE-1(config-ike-gw)# exit |
Scroll Pagebreak
Затем настроим IPsec proposal, IPsec policy и IPsec vpn туннели через каждый CLOUD:
...
Скорректируем правила зоны безопасности WAN, разрешим протоколы для GRE over IPSec-туннеля:
| Блок кода |
|---|
SPOKE-1(config)# object-group service ISAKMP_PORT SPOKE-1(config-object-group-service)# port-range 500 SPOKE-1(config-object-group-service)# port-range 4500 SPOKE-1(config-object-group-service)# exit SPOKE-1(config)# security zone-pair WAN self SPOKE-1(config-security-zone-pair)# rule 1 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol udp SPOKE-1(config-security-zone-pair-rule)# match destination-port object-group ISAKMP_PORT SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# rule 2 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol esp SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# rule 3 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol gre SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Настроим правила зон безопасности DMVPN_C_ONE и DMVPN_C_TWO, разрешим прохождение трафика для протоколов BGP, BFD, ICMP:
| Блок кода |
|---|
SPOKE-1(config)# object-group service BGP SPOKE-1(config-object-group-service)# port-range 179 SPOKE-1(config-object-group-service)# exit SPOKE-1(config)# object-group service BFD SPOKE-1(config-object-group-service)# port-range 3784 SPOKE-1(config-object-group-service)# exit SPOKE-1(config)# security zone-pair DMVPN_C_ONE self SPOKE-1(config-security-zone-pair)# rule 1 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol icmp SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# rule 2 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol tcp SPOKE-1(config-security-zone-pair-rule)# match destination-port object-group BGP SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# rule 3 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol udp SPOKE-1(config-security-zone-pair-rule)# match destination-port object-group BFD SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# exit SPOKE-1(config)# security zone-pair DMVPN_C_TWO self SPOKE-1(config-security-zone-pair)# rule 1 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol icmp SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# rule 2 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol tcp SPOKE-1(config-security-zone-pair-rule)# match destination-port object-group BGP SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# rule 3 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol udp SPOKE-1(config-security-zone-pair-rule)# match destination-port object-group BFD SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Скорректируем правила зоны безопасности LAN, разрешим прохождение трафика между зонами LAN и DMVPN_C_ONE/DMVPN_C_TWO:
| Блок кода |
|---|
SPOKE-1(config)# security zone-pair LAN DMVPN_C_ONE SPOKE-1(config-security-zone-pair)# rule 1 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# exit SPOKE-1(config)# security zone-pair LAN DMVPN_C_TWO SPOKE-1(config-security-zone-pair)# rule 1 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# exit SPOKE-1(config)# security zone-pair DMVPN_C_ONE LAN SPOKE-1(config-security-zone-pair)# rule 1 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol icmp SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# exit SPOKE-1(config)# security zone-pair DMVPN_C_TWO LAN SPOKE-1(config-security-zone-pair)# rule 1 SPOKE-1(config-security-zone-pair-rule)# action permit SPOKE-1(config-security-zone-pair-rule)# match protocol icmp SPOKE-1(config-security-zone-pair-rule)# enable SPOKE-1(config-security-zone-pair-rule)# exit SPOKE-1(config-security-zone-pair)# exit |
Scroll Pagebreak
- Конфигурирование SPOKE-2
Создадим туннели mGRE, каждый через свой CLOUD, определим принадлежность к зоне безопасности, настроим NHRP и включим туннель и NHRP командой enable:
| Блок кода |
|---|
SPOKE-2(config)# security zone DMVPN_C_TWO SPOKE-2(config-security-zone)# exit SPOKE-2(config)# security zone DMVPN_C_ONE SPOKE-2(config-security-zone)# exit SPOKE-2(config)# tunnel gre 1 SPOKE-2(config-gre)# key 1000 SPOKE-2(config-gre)# ttl 64 SPOKE-2(config-gre)# mtu 1400 SPOKE-2(config-gre)# multipoint SPOKE-2(config-gre)# security-zone DMVPN_C_ONE SPOKE-2(config-gre)# local address 198.51.100.14 SPOKE-2(config-gre)# ip address 203.0.113.3/25 SPOKE-2(config-gre)# ip tcp adjust-mss 1360 SPOKE-2(config-gre)# ip nhrp holding-time 60 SPOKE-2(config-gre)# ip nhrp shortcut SPOKE-2(config-gre)# ip nhrp map 203.0.113.1 198.51.100.2 SPOKE-2(config-gre)# ip nhrp nhs 203.0.113.1 SPOKE-2(config-gre)# ip nhrp multicast nhs SPOKE-2(config-gre)# ip nhrp enable SPOKE-2(config-gre)# enable SPOKE-2(config-gre)# exit SPOKE-2(config)# tunnel gre 2 SPOKE-2(config-gre)# key 2000 SPOKE-2(config-gre)# ttl 64 SPOKE-2(config-gre)# mtu 1400 SPOKE-2(config-gre)# multipoint SPOKE-2(config-gre)# security-zone DMVPN_C_TWO SPOKE-2(config-gre)# local address 198.51.100.14 SPOKE-2(config-gre)# ip address 203.0.113.131/25 SPOKE-2(config-gre)# ip tcp adjust-mss 1360 SPOKE-2(config-gre)# ip nhrp holding-time 60 SPOKE-2(config-gre)# ip nhrp shortcut SPOKE-2(config-gre)# ip nhrp map 203.0.113.129 198.51.100.6 SPOKE-2(config-gre)# ip nhrp nhs 203.0.113.129 SPOKE-2(config-gre)# ip nhrp multicast nhs SPOKE-2(config-gre)# ip nhrp enable SPOKE-2(config-gre)# enable SPOKE-2(config-gre)# exit |
| Scroll Pagebreak |
|---|
Произведём настройку протокола динамической маршрутизации для SPOKE-1. В примере это будет eBGP, для которого необходимо явно разрешить анонсирование подсетей. Анонсируем LAN подсети в сторону HUB используя network в address-family.
...
| Блок кода |
|---|
SPOKE-2(config)# route-map DMVPN_BGP_OUT SPOKE-2(config-route-map)# rule 1 SPOKE-2(config-route-map-rule)# exit SPOKE-2(config-route-map)# exit SPOKE-2(config)# router bgp 64501 SPOKE-2(config-bgp)# timers error-wait 5 10 SPOKE-2(config-bgp)# neighbor 203.0.113.1 SPOKE-2(config-bgp-neighbor)# remote-as 64500 SPOKE-2(config-bgp-neighbor)# allow-local-as 10 SPOKE-2(config-bgp-neighbor)# update-source 203.0.113.3 SPOKE-2(config-bgp-neighbor)# fall-over bfd SPOKE-2(config-bgp-neighbor)# address-family ipv4 unicast SPOKE-2(config-bgp-neighbor-af)# route-map DMVPN_BGP_OUT out SPOKE-2(config-bgp-neighbor-af)# enable SPOKE-2(config-bgp-neighbor-af)# exit SPOKE-2(config-bgp-neighbor)# enable SPOKE-2(config-bgp-neighbor)# exit SPOKE-2(config-bgp)# neighbor 203.0.113.129 SPOKE-2(config-bgp-neighbor)# remote-as 64500 SPOKE-2(config-bgp-neighbor)# allow-local-as 10 SPOKE-2(config-bgp-neighbor)# update-source 203.0.113.131 SPOKE-2(config-bgp-neighbor)# fall-over bfd SPOKE-2(config-bgp-neighbor)# address-family ipv4 unicast SPOKE-2(config-bgp-neighbor-af)# route-map DMVPN_BGP_OUT out SPOKE-2(config-bgp-neighbor-af)# enable SPOKE-2(config-bgp-neighbor-af)# exit SPOKE-2(config-bgp-neighbor)# enable SPOKE-2(config-bgp-neighbor)# exit SPOKE-2(config-bgp)# address-family ipv4 unicast SPOKE-2(config-bgp-af)# network 128.66.2.0/24 SPOKE-2(config-bgp-af)# exit SPOKE-2(config-bgp)# enable SPOKE-2(config-bgp)# exit |
| Scroll Pagebreak |
|---|
Произведём настройку IPsec для SPOKE-1, настроим ike proposal, ike policy и ike gateway. В ike gateway дополнительно настроим dpd, для ускорения перестроения туннелей в случае если выйдет из строя Active-устройство:
| Блок кода |
|---|
SPOKE-2(config)# security ike proposal ike_proposal SPOKE-2(config-ike-proposal)# authentication algorithm sha2-256 SPOKE-2(config-ike-proposal)# encryption algorithm aes256 SPOKE-2(config-ike-proposal)# dh-group 19 SPOKE-2(config-ike-proposal)# exit SPOKE-2(config)# security ike policy ike_policy SPOKE-2(config-ike-policy)# pre-shared-key ascii-text encrypted 8CB5107EA7005AFF SPOKE-2(config-ike-policy)# proposal ike_proposal SPOKE-2(config-ike-policy)# exit SPOKE-2(config)# security ike gateway ike_gateway_cloud_one SPOKE-2(config-ike-gw)# version v2-only SPOKE-2(config-ike-gw)# ike-policy ike_policy SPOKE-2(config-ike-gw)# local address 198.51.100.14 SPOKE-2(config-ike-gw)# local network 198.51.100.14/32 protocol gre SPOKE-2(config-ike-gw)# remote address 198.51.100.2 SPOKE-2(config-ike-gw)# remote network 198.51.100.2/32 protocol gre SPOKE-2(config-ike-gw)# mode policy-based SPOKE-2(config-ike-gw)# mobike disable SPOKE-2(config-ike-gw)# dead-peer-detection action clear SPOKE-2(config-ike-gw)# dead-peer-detection interval 310 SPOKE-2(config-ike-gw)# dead-peer-detection retransmit timeout 15 SPOKE-2(config-ike-gw)# dead-peer-detection retransmit tries 2 SPOKE-2(config-ike-gw)# exit SPOKE-2(config)# security ike gateway ike_gateway_cloud_two SPOKE-2(config-ike-gw)# version v2-only SPOKE-2(config-ike-gw)# ike-policy ike_policy SPOKE-2(config-ike-gw)# local address 198.51.100.14 SPOKE-2(config-ike-gw)# local network 198.51.100.14/32 protocol gre SPOKE-2(config-ike-gw)# remote address 198.51.100.6 SPOKE-2(config-ike-gw)# remote network 198.51.100.6/32 protocol gre SPOKE-2(config-ike-gw)# mode policy-based SPOKE-2(config-ike-gw)# mobike disable SPOKE-2(config-ike-gw)# dead-peer-detection action clear SPOKE-2(config-ike-gw)# dead-peer-detection interval 310 SPOKE-2(config-ike-gw)# dead-peer-detection retransmit timeout 15 SPOKE-2(config-ike-gw)# dead-peer-detection retransmit tries 2 SPOKE-2(config-ike-gw)# exit SPOKE-2(config)# security ike gateway ike_gateway_to_spokes SPOKE-2(config-ike-gw)# version v2-only SPOKE-2(config-ike-gw)# ike-policy ike_policy SPOKE-2(config-ike-gw)# local address 198.51.100.14 SPOKE-2(config-ike-gw)# local network 198.51.100.14/32 protocol gre SPOKE-2(config-ike-gw)# remote id any SPOKE-2(config-ike-gw)# remote address any SPOKE-2(config-ike-gw)# remote network any protocol gre SPOKE-2(config-ike-gw)# mode policy-based SPOKE-2(config-ike-gw)# mobike disable SPOKE-2(config-ike-gw)# dead-peer-detection action clear SPOKE-2(config-ike-gw)# dead-peer-detection interval 310 SPOKE-2(config-ike-gw)# dead-peer-detection retransmit timeout 15 SPOKE-2(config-ike-gw)# dead-peer-detection retransmit tries 2 SPOKE-2(config-ike-gw)# exit |
Scroll Pagebreak
Затем настроим IPsec proposal, IPsec policy и IPsec vpn туннели через каждый CLOUD:
...
Скорректируем правила зоны безопасности WAN, разрешим протоколы для GRE over IPSec-туннеля:
| Блок кода |
|---|
SPOKE-2(config)# object-group service ISAKMP_PORT SPOKE-2(config-object-group-service)# port-range 500 SPOKE-2(config-object-group-service)# port-range 4500 SPOKE-2(config-object-group-service)# exit SPOKE-2(config)# security zone-pair WAN self SPOKE-2(config-security-zone-pair)# rule 1 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol udp SPOKE-2(config-security-zone-pair-rule)# match destination-port object-group ISAKMP_PORT SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# rule 2 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol esp SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# rule 3 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol gre SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Настроим правила зон безопасности DMVPN_C_ONE и DMVPN_C_TWO, разрешим прохождение трафика для протоколов BGP, BFD, ICMP:
| Блок кода |
|---|
SPOKE-2(config)# object-group service BGP SPOKE-2(config-object-group-service)# port-range 179 SPOKE-2(config-object-group-service)# exit SPOKE-2(config)# object-group service BFD SPOKE-2(config-object-group-service)# port-range 3784 SPOKE-2(config-object-group-service)# exit SPOKE-2(config)# security zone-pair DMVPN_C_ONE self SPOKE-2(config-security-zone-pair)# rule 1 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol icmp SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# rule 2 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol tcp SPOKE-2(config-security-zone-pair-rule)# match destination-port object-group BGP SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# rule 3 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol udp SPOKE-2(config-security-zone-pair-rule)# match destination-port object-group BFD SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# exit SPOKE-2(config)# security zone-pair DMVPN_C_TWO self SPOKE-2(config-security-zone-pair)# rule 1 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol icmp SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# rule 2 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol tcp SPOKE-2(config-security-zone-pair-rule)# match destination-port object-group BGP SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# rule 3 SPOKE-2(config-security-zone-pair-rule)# action permit SPOKE-2(config-security-zone-pair-rule)# match protocol udp SPOKE-2(config-security-zone-pair-rule)# match destination-port object-group BFD SPOKE-2(config-security-zone-pair-rule)# enable SPOKE-2(config-security-zone-pair-rule)# exit SPOKE-2(config-security-zone-pair)# exit |
| Scroll Pagebreak |
|---|
Скорректируем правила зоны безопасности LAN, разрешим прохождение трафика между зонами LAN и DMVPN_C_ONE/DMVPN_C_TWO:
...





