Хочу описать схему с DMVPN, построенную у нас в организации, позволяющую использовать неограниченное число каналов связи на удалённой точке через Public Internet наряду с каналом IPVPN от одного из нескольких провайдеров.
Что есть: построенная схема DMVPN с (в основном) двумя каналами связи. Основной — IPVPN (с гарантированной скоростью) от одного из провайдеров, резервный — Public Internet (любой, возможно даже 3G\LTE роутер) от другого провайдера.
Схема того, что было:
Задача: подключить ещё один резервный канал через стороннего провайдера Интернет.
Начнём с конфига центральных хабов. Есть туннельный интерфейс:
Создаём ещё один туннельный интерфейс с другой адресацией, чтобы не пересекались:
На удалённой точке два разных канала Public Internet разведены по двум разным VRF и прописаны Static Route в каждом VRF:
Выбор того или иного канала для передачи данных регулируется параметрами Bandwidth и Delay в interface Tunnel Х.
Что стало:
Таким образом мы можем подключить неограниченное число каналов для резервирования точки.
Это крайне удобно для организации резервирования пропадания связи по любому из числа каналов и очень удобно\быстро для подключения нового канала, например, через мобильный роутер 3G\LTE.
Что есть: построенная схема DMVPN с (в основном) двумя каналами связи. Основной — IPVPN (с гарантированной скоростью) от одного из провайдеров, резервный — Public Internet (любой, возможно даже 3G\LTE роутер) от другого провайдера.
Схема того, что было:
Задача: подключить ещё один резервный канал через стороннего провайдера Интернет.
Начнём с конфига центральных хабов. Есть туннельный интерфейс:
interface Tunnel0
description ==== HUB for DMVPN (INET) ====
ip address XXX.XXX.11.XXX 255.255.255.0
no ip redirects
ip mtu 1400
ip pim nbma-mode
ip nhrp authentication XYZXYZ
ip nhrp map multicast dynamic
// должны быть разные
ip nhrp network-id <b>11111</b>
ip nhrp holdtime 600
ip nhrp shortcut
ip nhrp redirect
ip summary-address eigrp 77 10.0.0.0 255.0.0.0
ip summary-address eigrp 77 172.16.0.0 255.240.0.0
ip summary-address eigrp 77 192.168.0.0 255.255.0.0
ip tcp adjust-mss 1320
load-interval 30
<b>delay 10000</b>
tunnel source <Internet Interface>
tunnel mode gre multipoint
tunnel key 999999
tunnel vrf INET
// параметр shared обязателен
tunnel protection ipsec profile DMVPN_INET <b>shared</b>
Создаём ещё один туннельный интерфейс с другой адресацией, чтобы не пересекались:
interface Tunnel3
description ==== HUB for DMVPN (INET2) ====
ip address ХХХ.ХХХ.12.ХХХ 255.255.255.0
no ip redirects
ip mtu 1400
ip pim nbma-mode
ip nhrp authentication XYZXYZ
ip nhrp map multicast dynamic
// должны быть разные
ip nhrp network-id <b>22222</b>
ip nhrp holdtime 600
ip nhrp shortcut
ip nhrp redirect
ip summary-address eigrp 77 10.0.0.0 255.0.0.0
ip summary-address eigrp 77 172.16.0.0 255.240.0.0
ip summary-address eigrp 77 192.168.0.0 255.255.0.0
ip tcp adjust-mss 1320
load-interval 30
<b> delay 1000</b>
tunnel source Port-channel1.501
tunnel mode gre multipoint
tunnel key 888888
tunnel vrf INET
// параметр shared обязателен
tunnel protection ipsec profile DMVPN_INET <b>shared</b>
На удалённой точке два разных канала Public Internet разведены по двум разным VRF и прописаны Static Route в каждом VRF:
ip vrf INET1
rd 10:10
!
ip vrf INET2
rd 100:100
crypto ipsec profile DMVPN
set transform-set AES256-SHA
set pfs group2
!
crypto ipsec profile DMVPN2
set transform-set AES256-SHA
set pfs group2
interface Tunnel0
ip address XXX.XXX.11.XXX 255.255.255.0
no ip redirects
ip mtu 1400
ip hello-interval eigrp 77 4
ip flow ingress
ip flow egress
ip nhrp network-id 11111
ip nhrp holdtime 300
ip nhrp shortcut
ip nhrp redirect
ip tcp adjust-mss 1360
load-interval 30
<b>delay 10 </b>
if-state nhrp
tunnel source <Internet Interface1>
tunnel mode gre multipoint
tunnel key 999999
tunnel vrf INET1
tunnel protection ipsec profile DMVPN
!
interface Tunnel1
ip address XXX.XXX.12.XXX 255.255.255.0
no ip redirects
ip mtu 1400
ip hello-interval eigrp 77 4
ip nhrp authentication XYZXYZ
ip nhrp network-id 22222
ip nhrp holdtime 300
ip nhrp shortcut
ip nhrp redirect
ip tcp adjust-mss 1320
load-interval 30
<b> delay 5000</b>
if-state nhrp
tunnel source <Internet Interface2>
tunnel mode gre multipoint
tunnel key 888888
tunnel vrf INET2
tunnel protection ipsec profile DMVPN2
router eigrp 77
network XXX.XXX.11.XXX
network XXX.XXX.12.XXX
exit
ip route vrf INET1 0.0.0.0 0.0.0.0 <Internet Interface1> <GW Address1> name INET1
ip route vrf INET2 0.0.0.0 0.0.0.0 <Internet Interface2> <GW Address2> name INET2
Выбор того или иного канала для передачи данных регулируется параметрами Bandwidth и Delay в interface Tunnel Х.
Что стало:
Таким образом мы можем подключить неограниченное число каналов для резервирования точки.
Это крайне удобно для организации резервирования пропадания связи по любому из числа каналов и очень удобно\быстро для подключения нового канала, например, через мобильный роутер 3G\LTE.
ksg222
Хотел бы отметить, что подобную конфигурацию, когда у нас используется один и тот же интерфейс на хабе для разных туннелей DMVPN, можно реализовать без VRF-lite. Это можно сделать с помощью настройки local PBR на споке. Хотя, VRF-lite более элегантное решение, особенно, если нам необходимо заворачивать абсолютно весь трафик в туннель (например, передавая на спок маршрут по умолчанию в рамках IGP).
JDima
Front door VRF вообще с недавних пор официально рекомендованный в CVD дизайн.