ќбсудим вашу задачу в Telegram - чате?

ћерион Ќетворкс

7 минут чтени€

¬ сегодн€шней статье покажем пример настройки DMVPN Ц Dynamic Multipoint VPN, что €вл€етс€ VPN решением компании Cisco. ƒанное решение используетс€, когда требуетс€ высока€ масштабируемость и легкость настройки при подключении филиалов к головному офису.

DMPVN одно из самых масштабируемых и эффективных решений VPN поддерживаемых компанией Cisco. ¬ основном оно используетс€ при топологии Hub-and-Spoke, где вы хотели бы видеть пр€мые VPN туннели Spoke-to-Spoke в дополнение к обычным Spoke-to-Hub туннел€м. Ёто означает, что филиалы смогут общатьс€ с друг другом напр€мую, без необходимости прохождение трафика через HQ.  ак уже упоминали, эта технологи€ €вл€етс€ проприетарной технологией Cisco.

≈сли вам необходимо подключить более дес€ти сайтов к головному офису, то DMPVN будет идеальным выбором.  роме того, DMPVN поддерживает не только Hub-and-Spoke, но и Full-Mesh топологию, так как все сайты имеют между собой св€зность без необходимости настройки статических VPN туннелей между сайтами.


Ќекоторые характеристики DMVPN

ƒл€ начала перечислим важные характеристики данного способа организации Site-to-Site VPN дл€ лучшего понимани€:

  • ÷ентральный маршрутизатор (HUB) - данный роутер работает как DMVPN сервер, и Spoke маршрутизаторы работают как DMVPN клиенты;
  • ” данного маршрутизатора есть публичный статический IP-адрес на WAN интерфейсе;
  • ” Spoke маршрутизаторов на WAN интерфейсах может как статический, так и динамический публичный IP-адрес;
  • ” каждого филиала (Spoke) есть IPSEC туннель к головному офису (Hub);
  • Spoke-to-Spoke - туннели устанавливаютс€ при возникновении необходимости, когда есть движение трафика между филиалами. “аким образом, трафик может не ходить через головной офис, а использовать пр€мые туннели между филиалами;
  • ¬се туннели используют Multipoint GRE c IPSEC;
  • NHRP (Next Hop Resolution Protocol) - данный протокол используетс€ дл€ установлени€ соответствий между приватными IP туннельных интерфейсов с публичными WAN адресами
  • ќписанные выше NHRP соответстви€ будут хранитьс€ на NHRP сервере, чем в нашем случае €вл€етс€ HUB роутер.  аждый филиал устанавливает соединение с головным офисом и регистрирует свой публичный IP-адрес и его приватный IP-адрес тунел€;
  •  огда филиалу необходимо отправить пакеты в подсеть другого филиала, он запрашивает NHRP сервер дл€ получени€ информации о внешнем публичном адресе целевого филиала;
  • ƒл€ лучшей масштабируемости советуем использовать один из протоколов динамический маршрутизации между всеми роутерами Ц например, EIGRP;

≈ще раз кратко о технологи€х, которые использует DMVPN:

  • Multipoint GRE;
  • IPSEC;
  • NHRP Ц Next Hop Resolution Protocol;
  • —татическа€ или динамическа€ маршрутизаци€;

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

 онкретно в нашем примере у нас будет HUB маршрутизатор и два филиала. », как было описано ранее, HUB Ц это DMVPN cервер, а филиалы Ц DMPVN клиенты.

¬ нашем примере в качестве маршрутизатора используетс€ CISCO1921/K9
Ќастройка DMVPN на оборудовании Cisco

—начала настраиваем HUB маршрутизатор Ц ему необходимо присвоить статический IP Ц адрес на внешнем WAN-интерфейсе:

! Ќастраиваем интерфейсы
interface GigabitEthernet0/0
 description to Internet-WAN
 ip address 10.10.10.1 255.255.255.252
 !
interface GigabitEthernet0/1
 description to LAN
 ip address 192.168.160.1 255.255.255.0 
 duplex auto
! Ќастраиваем туннельный интерфейс, который €вл€етс€ улучшенным GRE (Multipoint GRE) 
interface Tunnel1
 description DMVPN Tunnel
 ip address 172.16.1.1 255.255.255.0 // выбираем приватную подсеть дл€ туннелей
 no ip redirects
 ip nhrp authentication nhrp1234 // аутентификаци€ между маршрутизаторами 
 ip nhrp network-id 1 // сетевой идентификатор, который должен быть одинаковым на всех маршрутизаторах
 load-interval 30
 keepalive 5 10
 tunnel source GigabitEthernet0/0 // назначаем источником туннел€ WAN интерфейс
 tunnel mode gre multipoint // определ€ем туннель как  mGRE 
 tunnel protection ipsec profile protect-gre // шифруем трафик в туннеле с помощью IPSEC
ip mtu 1440 // уменьшаем MTU дл€ того, чтобы разрешить оверхед на mGRE и IPSEC
ip nhrp map multicast dynamic // разрешаем форвардить мультикаст трафик между туннел€ми.
! Ќастраиваем IPSEC на главном роутере
crypto isakmp policy 1
 encr 3des
 hash md5
 authentication pre-share
 group 2
crypto isakmp key isakmp1234 address 0.0.0.0 0.0.0.0 // принимать соединени€ от любого источника при наличии динамических филиалов
!
crypto ipsec transform-set TS esp-3des esp-md5-hmac 
mode tunnel
!
!
crypto ipsec profile protect-gre // профиль добавленный к mGRE туннелю дл€ шифровани€
set security-association lifetime seconds 86400
set transform-set TS
! Ќастраиваем статическую маршрутизацию на HUB маршрутизаторе 
ip route 192.168.164.0 255.255.255.0 172.16.1.2 // удаленные подсети доступны через IP удаленного туннел€ 
ip route 192.168.161.0 255.255.255.0 172.16.1.3 // удаленные подсети доступны через IP удаленного туннел€

«атем настраиваем маршрутизаторы в филиалах (Spoke роутеры) - у одного маршрутизатора статический айпишник на WAN интерфейсе, и у другого динамический, получаемый по DHCP. ѕервый маршрутизатор в филиале, с динамическим IP:

 
interface GigabitEthernet0/0
description WAN to Internet 
ip address dhcp
 duplex auto
 speed auto
interface GigabitEthernet0/1
 description To LAN 
ip address 192.168.164.1 255.255.255.0 
 duplex auto
 speed auto
interface Tunnel1
ip address 172.16.1.2 255.255.255.0 // помещаем в ту же подсеть что и другие туннели
 no ip redirects
ip nhrp map multicast dynamic // разрешаем форвардить мультикаст трафик между туннел€ми
tunnel source GigabitEthernet0/0 // УsourceФ- WAN интерфейс
 tunnel mode gre multipoint
 tunnel protection ipsec profile protect-gre
 ip nhrp authentication nhrp1234
 ip nhrp map 172.16.1.1  10.10.10.1 // соответствие HUB адреса туннел€ с HUB адресом WAN
 ip nhrp network-id 1
 ip nhrp nhs 172.16.1.1 // настройка NHRP
 ip nhrp registration no-unique // если NHRP процесс завершилс€ (поиск соответстви€) дл€ определенного IP, то больше данный процесс не запуститс€ 
ip nhrp map multicast 10.10.10.1 // ќтправка milticast трафика только в Hub. √оловной маршрутизатор будет получать весь мультикаст трафик (например, обновлени€ протокола маршрутизации) и отправл€ть его всем Spoke маршрутизаторам
 ip mtu 1440
 load-interval 30
 keepalive 5 10
crypto isakmp policy 1
 encr 3des
 hash md5
 authentication pre-share
 group 2
crypto isakmp key isakmp1234 address 0.0.0.0 0.0.0.0 // ‘илиалы должны разрешать подклюени€ с любого адреса дл€ формировани€ IPSEC VPN туннелей с другими филиалами
!
!
crypto ipsec transform-set TS esp-3des esp-md5-hmac 
 mode tunnel
!
crypto ipsec profile protect-gre
 set security-association lifetime seconds 86400
 set transform-set TS
ip route 192.168.160.0 255.255.255.0 172.16.1.1 // ћаршрут дл€ HUB
ip route 192.168.161.0 255.255.255.0 172.16.1.3 // ћаршрут дл€ другого филиала Spoke site

¬торой филиальный маршрутизатор, со статическим IP:

  
interface GigabitEthernet0/0
description TO Internet 
ip address 10.10.10.9 255.255.255.252
 duplex auto
 speed auto
interface GigabitEthernet0/1
 description To: LAN 
ip address 192.168.161.1 255.255.255.0 
 duplex auto
 speed auto
interface Tunnel1
ip address 172.16.1.3  255.255.255.0 // должен быть в той же подсети что и другие туннели
 no ip redirects
ip nhrp map multicast dynamic // разрешаем форвард мульткастов между туннел€ми.
tunnel source GigabitEthernet0/0
 tunnel mode gre multipoint
 tunnel protection ipsec profile protect-gre
ip nhrp authentication nhrp1234
ip nhrp map 172.16.1.1  10.10.10.1 // мапируем адрес HUB тунел€ к WAN адресу 
 ip nhrp network-id 1
 ip nhrp nhs 172.16.1.1 // настраиваем NHRP клиент с указанием адреса сервера 
 ip nhrp registration no-unique  
ip nhrp map multicast 10.10.10.1 
ip mtu 1440
 load-interval 30
 keepalive 5 10
crypto isakmp policy 1
 encr 3des
 hash md5
 authentication pre-share
 group 2
crypto isakmp key isakmp1234 address 0.0.0.0 0.0.0.0
!
crypto ipsec transform-set TS esp-3des esp-md5-hmac 
 mode tunnel
!
!crypto ipsec profile protect-gre
 set security-association lifetime seconds 86400
 set transform-set TS
ip route 192.168.160.0 255.255.255.0 172.16.1.1 // маршрут до головного маршрутизатор
ip route 192.168.164.0 255.255.255.0 172.16.1.2 // маршрут до другого филиала

ѕереходим к тестированию:

show dmvpn // провер€ем статус DMVPN и NHRP
show crypto isakmp sa // провер€ем IPSEC cв€зность между маршрутизаторами
ping 192.168.164.1 // пингуем дл€ проверки
ping 192.168.1.1 
¬ нашем примере использовалась статическа€ маршрутизаци€, но при большом количестве филиалов необходимо использовать протоколы динамический маршрутизации дл€ уменьшени€ ручного труда и риска ошибки.

ѕолезна ли ¬ам эта стать€?


Ёти статьи могут быть вам полезны: