...
- в качестве локального шлюза для туннеля используется IP-адрес 115.0.0.1;
- в качестве удаленного шлюза для туннеля используется IP-адрес 114.0.0.10;
- IP-адрес туннеля на локальной стороне 25.0.0.1/24.
Решение:
Предварительно на маршрутизаторах должны быть настроены интерфейсы для связи с сетью WAN разрешено получение пакетов протокола GRE из зоны безопасности, в которой работают интерфейсы, подключенные к сети WAN.
...
Шаг | Описание | Команда | Ключи |
|---|---|---|---|
1 | Проверить доступность «внешних» IP-адресов, находящихся на физических интерфейсах. |
| |
2 | Подготовить IPsec-туннели для работы совместно с динамическими GRE-туннелями. |
| См. раздел Настройка Управление туннелированием#Настройка Policy-based IPsec VPN. |
| 3 | Создать GRE-туннель и перейти в режим его конфигурирования. | esr(config)# tunnel gre <INDEX> | <INDEX> – идентификатор туннеля. |
4 | Перевести GRE-туннель в режим multipoint. | esr(config-gre )# multipoint | |
| 5 | Указать экземпляр VRF, в котором будет работать данный GRE-туннель (необязательно). | esr(config-gre )# ip vrf forwarding <VRF> | <VRF> – имя VRF, задается строкой до 31 символа. |
| 6 | Указать имя VRF от IP-интерфейса которого будет строиться данный GRE-туннель (необязательно). | esr(config-gre)# tunnel-source vrf <VRF> | <VRF> – имя экземпляра VRF, задается строкой до 31 символа. Без указания ключа "vrf" и имени экземпляра VRF, будет использоваться IP-интерфейс глобальной конфигурации. |
| 7 | Установить локальный IP-адрес для установки туннеля. | esr(config-gre)# local address <ADDR> | <ADDR> – IP-адрес локального шлюза, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. |
esr(config-gre)# local interface <IF> | <IF> – интерфейс, от IP-адреса которого устанавливается туннель. | ||
8 | Задать IP-адрес на туннеле. В качестве альтернативы можно настроить DHCP-клиент для получения IP-адреса от DHCP-сервера. | esr(config-gre)# ip address <ADDR/LEN> или esr(config-gre)# ip address <ADDR/LEN> secondary | <ADDR/LEN> – IP-адрес и длина маски подсети, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32]. Ключ secondary указывает, что настроенный адрес является дополнительным IP-адресом. Если это ключевое слово отсутствует, настроенный адрес является основным IP-адресом. Возможно указать до 7 дополнительных IP-адресов. |
esr(config-gre)# ip address dhcp | |||
9 | Установить открытый пароль для NHRP-пакетов (необязательно). | esr(config-gre)# ip nhrp authentication <WORD> | <WORD> – пароль в открытой форме, задается строкой [1..8] символов, может включать символы [0-9a-fA-F]. |
10 | Указать время, в течение которого на NHS будет существовать запись о данном клиенте (не обязательно). | esr(config-gre)# ip nhrp holding-time <TIME> | <TIME> – время в секундах, в течение которого на сервере будет существовать запись о данном клиенте, принимает значения [1..65535]. Значение по умолчанию: 7200. |
11 | Задать соответствие «внутреннего» туннельного адреса с «внешним» NBMA-адресом. | esr(config-gre)# ip nhrp map <ADDR> <ADDR> | <ADDR> – IP-адрес задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. |
12 | Задать «логический (туннельный)» адрес NHRP-сервера. | esr(config-gre)# ip nhrp nhs <ADDR> | <ADDR> – адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть AAA – DDD принимает значения [0..255]. |
13 | Определить адресата мультикастного трафика. | esr(config-gre)# ip nhrp multicast { dynamic | nhs | <ADDR> } |
<ADDR> – отправлять на специфически сконфигурированный адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. |
14 | Включить возможность отправки NHRP Traffic Indication пакетов. Выполняется на NHS (необязательно). | esr(config-gre)# ip nhrp redirect | |
15 | Включить возможность создания кратчайших маршрутов. Выполняется на NHC (необязательно). | esr(config-gre)# ip nhrp shortcut | |
16 | Привязать IPsec-VPN к mGRE-туннелю (необязательно). | esr(config-gre)# ip nhrp ipsec <WORD> { static | dynamic } | <WORD> – имя VPN, задаётся строкой до 31 символа;
|
| 17 | Включить передачу имени NHRP-группы NHRP-соседям в процессе обмена NHRP-сообщениями (необязательно). | esr(config-gre)# ip nhrp attribute group <WORD> | <WORD> – имя группы NHRP, задаётся строкой [1..40] символов, не принимает символы [^#]. |
| 18 | Задать соответствие группы NHRP, полученной от NHRP-соседа в процессе обмена NHRP-сообщениями, и политики QoS, которая будет применена к исходящему в сторону этого NHRP-соседа трафика (необязательно). | esr(config-gre)# ip nhrp map group <GROUP> service-policy output <POLICY> | <GROUP> – имя группы NHRP, задаётся строкой [1..40] символов, не принимает символы [^#]; <POLICY> – имя QoS-политики, задается строкой [1..31] символов. |
19 | Включить работу протокола NHRP. | esr(config-gre)# ip nhrp enable | |
20 | Организовать IP-связность посредством протокола динамической маршрутизации. | ||
| Остальные настройки аналогичны настройкам статичного GRE-туннеля (см. раздел Настройка Управление туннелированием#Настройка GRE-туннелей). | |||
Пример настройки 1
...
Организовать DMVPN между офисами компании, используя mGRE-туннели, NHRP (Next Hop Resolution Protocol), протокол динамической маршрутизации (BGP), IPsec. В данном примере будет HUB-маршрутизатор и два филиала. HUB – это DMVPN-cервер (NHS), а филиалы – DMPVN-клиенты (NHC).
Hub внешний IP-адрес — 150.115.0.5;
...
Организовать DMVPN между офисами компании с соответствующими подсетями LAN1 и LAN2, используя mGRE-туннели, NHRP (Next Hop Resolution Protocol), протокол динамической маршрутизации (OSPF), IPsec. В нашем примере у нас будет HUB-маршрутизатор и два филиала. HUB – это DMVPN-cервер (NHS), а филиалы – DMPVN-клиенты (NHC).
При использовании схемы DMVPN необходимо, чтобы HUB являлся DR-маршрутизатором. Таким образом, маршруты локальных подсетей spoke 1 и spoke 2 будут ретранслироваться через hub.
...
- в качестве инкапсулирующего протокола используется UDP, номер порта на локальной стороне и номер порта на стороне партнера 519;
- в качестве локального шлюза для туннеля используется IP-адрес 21.0.0.1;
- в качестве удаленного шлюза для туннеля используется IP-адрес 183.0.0.10;
- идентификатор туннеля на локальной стороне равен 2, на стороне партнера 3;
- идентификатор сессии внутри туннеля равен 100, на стороне партнера 200;
- в туннель направим трафик из bridge с идентификатором 333.
Решение:
| Примечание |
|---|
Предварительно необходимо в firewall разрешить входящий трафик по протоколу UDP с портом отправителя 519 и портом назначения 519. |
...
Пример настройки Route-based IPsec VPN
Задача:
Настроить IPsec-туннель между R1 и R2.
...
| Якорь | ||||
|---|---|---|---|---|
|
Задача:
Настроить IPsec-туннель между R1 и R2.
...
Пример настройки Policy-based IPsec VPN с аутентификацией сертификатам X.509, выписываемых PKI-клиентом
Задача:
Настроить IPsec-туннель между R1 и R2.
...
<MODE> – режим переподключения, принимает следующие значения:
- no – установленное подключение XAUTH будет удалено, если для нового подключения XAUTH инициатором соединения будет отправлено уведомление "INITIAL_CONTACT", будет назначен ранее использованный IP-адрес. В противном случае, установленное соединение XAUTH будет удержано. Для нового подключения XAUTH будет назначен новый IP-адрес.
- never – установленное подключение XAUTH будет удержано. Для нового подключения XAUTH будет назначен новый IP-адрес. Уведомление "INITIAL_CONTACT" будет в любом случае проигнорировано.
- replace – установленное подключение XAUTH будет удалено. Для нового подключения XAUTH будет использован ранее использованный IP-адрес.
- keep – установленное подключение XAUTH будет удержано. Новое подключение XAUTH будет отклонено.
Пример настройки Remote Access IPsec VPN
Задача:
Настроить Remote Access IPsec VPN между R1 и R2 с использованием второго фактора аутентификации IPsec - XAUTH. В качестве сервера IPsec VPN настроить маршрутизатор R1, а маршрутизатор R2 в качестве клиента IPsec VPN.
...
Пример настройки DPD (Dead Peer Detection)
Задача:
Настроить Dead Peed Detection на R1 для Policy-based Ipsec VPN между R1 и R2.
...













