黃宏杰
摘 要: 目前企業中心與分支的安全通信主要利用IPSec或SSL VPN在因特網上進行數據傳輸。介紹了DMVPN技術的發展過程,從傳統的IPSEC VPN技術演變為基于GRE技術的IPSEC VPN網絡,發展到基于mGRE技術的DMVPN網絡;深入探討了以NHRP為核心的DMVPN技術的基本原理和拓撲設計的實現;論述了DMVPN技術在企業網中的應用。采用基于單或雙中心的DMVPN技術進行了靜態和動態IP地址規劃,并提供動態路由協議支持。
關鍵詞: 互聯網安全協議; 動態多點虛擬專網; 多點通用路由封裝; 下一跳解析協議
中圖分類號:TP393 文獻標志碼:A 文章編號:1006-8228(2014)10-32-03
Application research of DMVPN technology in enterprise network
Huang Hongjie
(Fujian Vocational College of Agriculture Information Technology Department, Fuzhou, Fujian 350119, China)
Abstract: The current corporate security communication of headquarters and branch mainly use IPSec or SSL VPN for data transmission on the Internet. The development process of DMVPN technology is introduced, from traditional IPSEC VPN technology evolved into IPSEC VPN network of GRE-based technology, to the development DMVPN network of the mGRE-based technology. The basic principle and topology design which takes NHRP as the core of the DMVPN technology are discussed. The application of DMVPN technology in the enterprise network is elaborated, using DMVPN technology based on single or double center, static and dynamic IP address planning. It provides dynamic routing protocol support.
Key words: IPSEC; DMVPN; mGRE; NHRP
0 引言
企業希望通過公網安全地將各地的分支與中心聯系起來,構成星型拓撲結構網絡,并通過IPSec隧道來保證內部通訊的安全。但大多數企業的數據集中在中心,如果兩個分支通信,則要通過中心,這樣就造成了較大的網絡時延。尤其在視頻、語音通信中,這種時延影響了企業網絡的正常運行[1]。DMVPN技術的出現,為企業解決了這方面的難題,DMVPN是一種基于mGRE的集高速高擴展性的IPSec VPN技術。
1 DMVPN技術的發展過程
1.1 基于傳統的IPSEC VPN網絡
傳統的IPSec VPN網絡一般通過共享密鑰在通信兩端進行數據加密,其隧道是點到點的加密集合,該網絡的組織形式可以是星形結構或網狀結構[2]。星形拓撲的IPSec VPN是一種安全可靠的網絡,但不適合在有大量分支的網絡中部署;網狀結構的所有分支之間都要直接連接,但客戶端需要維護的IPSEC SA過多,IPSEC VPN配置過于復雜,需要每一個分支擁有固定IP地址。
1.2 基于GRE的IPSec VPN網絡
通用路由封裝(GRE)與IPSec綁定,使GRE隧道一旦建立,將立刻觸發IPSec加密。基于GRE的IPSec VPN隧道配置包括了對端的地址,即IPSec隧道的對端地址,則不用為IPSec定義匹配的訪問控制列表。這樣,可利用動態路由協議在加密隧道兩端的路由器上更新路由表,隧道任何一端的網絡發生變化,另外一端都會動態地學習到這個變化,并保持網絡的連通性而無需改變路由器的配置。
1.3 DMVPN技術網絡的誕生
為了解決IPSec VPN的高擴展性難題,思科提出了動態多點虛擬專網技術,即Dynamic Multipoint VPN(DMVPN)。DMVPN是一種基于mGRE的IPSEC VPN技術, IPSec是對mGRE流量進行加密,根據NHRP和動態路由協議建立起來的保護網絡間的臨時隧道。DMVPN技術的關鍵組件和特點包括:①多點GRE隧道接口,使得單一的GRE接口可以支持多個IPsec隧道且簡化配置;②NHRP允許分支采用動態IP地址,中心用于維護每個分支公網地址的NHRP數據庫。
2 DMVPN技術的基本原理
2.1 多點mGRE隧道
GRE技術是點對點的隧道技術。mGRE是DMVPN重要的組成部分,是點對多點的GRE隧道技術,只需要指定源,并不需要指定目的。mGRE隧道技術中的每個分支只需配置一個mGRE隧道接口,這樣,任何一個分支都能夠和其他分支建立隧道連接,如有新的分支需要加入,其他分支都不需要再增加新的配置。
2.2 下一跳解析協議NHRP
DMVPN的核心是NHRP,NHRP即下一跳解析協議,由IETF在RFC 2332中定義,提供了非廣播多路訪問網絡上的源分支獲取到達目標分支的“下一跳”的互聯網絡層地址和NBMA子網地址的方法。NHRP實現了網絡層隧道接口地址和公網IP地址之間的映射。NHRP基于客戶/服務器的結構,中心作為NHRP服務器,利用NHRP解決分支的動態地址問題,它維護著NHRP數據庫,為分支提供注冊和查詢服務。
2.3 分支到中心的動態隧道建立
DMVPN網絡中,在中心路由器上不必配置分支的GRE或IPSec的信息,可通過NHRP自動獲取有關信息,而在分支路由器上則必須依據中心路由器的外網公共IP地址和NHRP協議來配置GRE隧道,分支上需要靜態配置中心的隧道接口地址和公網IP之間的映射,當分支路由器加電啟動時,由運營商通過DHCP獲取IP地址,并自動建立IPSec加密的GRE隧道,通過NHRP向中心路由器注冊自己的外網端口IP地址,分支到中心的隧道一旦建立便持續存在。
2.4 分支到分支的動態隧道建立
中心路由器設置mGRE隧道端口的“下一跳”地址是目的分支隧道的端口地址。當源分支需要向目的分支傳遞數據包時,它利用NHRP來動態獲取目的分支IP地址。在這一過程中,中心路由器充當NHRP服務器的角色,響應分支路由器作為NHRP客戶端的請求,向源分支分配目標分支公網地址,可直接發起隧道連接訪問目標分支。這樣,兩個分支之間可以通過mGRE端口建立IPSec動態隧道,該隧道在預定義的時間內將自動拆除。
3 DMVPN技術的拓撲設計
3.1 DMVPN技術星形結構拓撲設計
DMVPN技術的原理可行,需要有相應的拓撲連接來支撐。DMVPN起初采用星形拓撲設計,除了中心為多點GRE 隧道外,所有分支均為普通點對點GRE隧道。分支間的流量都必須經過中心轉發,但該DMVPN技術的優勢就在于,增加分支不增加中心的配置,并且分支支持動態獲取IP地址。
3.2 DMVPN技術虛擬網狀拓撲設計
DMVPN 發展到第二階段,所有分支都采用mGRE 配置,功能大大提升,支持分支和分支間直接建立隧道,實現了虛擬網狀拓撲,真正實現了DMVPN的高擴展性。
3.3 DMVPN技術層次結構拓撲設計
本文主要討論單區域的DMVPN網絡拓撲結構設計。現在的DMVPN技術已實現層次化結構拓撲設計,主要運用于DMVPN技術的超大范圍部署,并且能夠實現不同區域的分支間直接建立隧道,使DMVPN技術實現了層次化部署,不同 DMVPN區域的分支必須經過本區域的中心才能建立連接。
4 DMVPN技術的應用研究
4.1 DMVPN構建企業網的主要優勢
基于DMVPN技術用于構建可擴展性的企業VPN網絡,支持分布式的應用程序,具備主要的優勢[3]有:①只允許創建一個多點GRE隧道接口,一個單獨的IPSEC PROFILE,不需要CRYPTO MAP來處理分支的路由器,增加一個分支路由器不需要變化中心配置;②IPSEC封裝的自動初始化;③mGRE對等體原地址和目的地址用NHRP來解析;④支持分支路由器動態地址;⑤動態創建分支與分支之間的隧道,當分支需要發送信息給另一個分支時,會用NHRP協議到中心的NHRP數據庫查詢分支的真實IP地址,而后建立IPSEC隧道。
4.2 基于單中心的DMVPN網絡拓撲
對于單中心的DMVPN網絡架構來說,所有的分支都在一個DMVPN網絡內,在分支上只需要建立一個永久隧道和一個臨時隧道接口,分支路由器可通過靜態設置與中心通信,配置相對簡單,如圖1所示。
圖1 基于單中心的DMVPN網絡拓撲結構
4.3 基于雙中心的DMVPN網絡拓撲
雙中心的DMVPN網絡架構內有兩個中心,其中以一個中心為主,另一個中心為輔,構成一個區域的DMVPN技術的網絡。在每個分支上建立兩個隧道接口,與一個中心建立永久的IPSec隧道,也同時和另一個中心建立臨時的IPSec隧道。當分支訪問中心內部網絡時,可以利用兩個中心實現網絡帶寬的負載均衡,分支通過動態路由協議選擇與中心進行通信。當其中一個中心出現問題的時候,另外一個中心能夠接管所有流量,實現 DMVPN 的高可用性,如圖2所示。
圖2 基于雙中心的DMVPN網絡拓撲結構
4.4 靜態和動態IP地址規劃
在DMVPN解決方案中,利用NHRP解決分支動態地址問題。DMVPN要求中心必須申請靜態的公共IP地址。對于中心和所有分支,需要設置支持mGRE隧道接口,所有隧道接口IP地址需要在同一網絡平面內。對于雙中心的DMVPN網絡,在中心上配置另外一臺中心的隧道接口地址和公網IP地址。在所有分支上需要配置中心的隧道接口地址和公網IP地址。中心之間、分支與中心之間建立起永久隧道連接,分支與分支之間可以根據需要建立起動態隧道連接。
4.5 動態路由協議的支持和實現
4.5.1 動態路由協議的支持
DMVPN是一個標準的mGRE OVER IPSEC VPN技術,支持在IPSec和mGRE隧道之上運行動態路由協議[4]。動態路由協議的主要目的是宣告隧道接口網絡和分支私有網絡。目前,DMVPN技術支持的路由協議有RIP、EIGRP、OSPF和BGP等。
4.5.2 動態路由協議的實現
DMVPN網絡上運行RIP或EIGRP協議,必須關閉水平分割(split horizon)功能,否則,分支將無法學習到通往其他分支子網的路由。OSPF是鏈路狀態型路由協議,其本身就不存在水平分割(split horizon)問題,但必須把DMVPN的中心配置為OSPF的指定路由器(DR),這可通過指定中心路由器有更高的OSPF優先權來實現。
4.6 DMVPN技術的適用場合
DMVPN可以和防火墻、IDS、IPS等技術結合使用。DMVPN技術適用于以下場合[5]:①中大型企業;②企業網的遠程備份;③VPN主要業務等。
5 結束語
DMVPN是一種以NHRP為核心的基于mGRE的IPSec VPN技術,具有高速高擴展性的特點,組網有簡易性、可靠性和低費用等優點,成為構建現代高速安全企業網優選的技術解決方案。DMVPN技術可進一步與MPLS VPN等技術融合,引領IP化趨勢的高效、高速、高可靠的新型“多網合一”[6]。相信DMVPN技術必將在未來的多網融合技術中得到更廣泛應用。
參考文獻:
[1] [美]Sean Convery.王迎春,謝琳,江魁譯.網絡安全體系結構[M].人民
郵電出版社,2005.
[2] 張恒軍.SSL VPN和IPSec VPN綜合分析[J].信息系統工程,
2009.11.
[3] Cisco. Dynamic Multipoint VPN (DMVPN) Design Guide
(Versionl.l) [R],2008.10.
[4] Russ White,CCIE#2635,Don Slice, CCIE#1929,Alvaro Retana,
CCIE#1609著.夏俊杰譯.路由設計的優化[M].人民郵電出版社,2013.
[5] 梁玉柱.基于DMVPN技術的廣域網設計和實現[J].信息系統工程,
2012.2.
[6] 鄭星宇.MPLS VPN與DMVPN技術的融合應用[J].中國有線電視,
2011.5.