鄭國寧 馬力
91872部隊 北京 102442
近年,計算機網絡的新應用層出不窮,不斷增加的應用需求和不斷增加的用戶數量都給網絡尤其是更新升級比較慢的廣域網絡帶來了很大的負擔,與網絡應用的快速更新相比較,廣域網的建設顯得力不從心,要在現有的網絡設施上運行更多、流量更大、實時性更高的應用,要求我們以現有條件為基礎,在網絡優化上做細致的工作。
目前,很多大的企業建立了覆蓋全國的虛擬專用網,其中的應用內容廣泛,包括文件共享、音頻視頻交互、即時消息、審計認證、voip等內容。這些應用對網絡性能的要求不盡相同,同時,對于企業廣域網來說,網絡的有效分級管理和如何設計便于管理的網絡結構也很重要。
VPN(Virtual Private Network)就是虛擬專用網絡,相當于虛擬的專線,它通過特殊的加密通訊協議為連接在公網上的位于不同地方的兩個或多個節點之間建立一條專用的通訊線路。VPN技術利用了低成本的公共網絡做為企業骨干網,同時又克服了公共網絡缺乏保密性的弱點,在VPN網絡中,位于公共網絡兩端的網絡在公共網絡上傳輸信息時,其信息都是經過安全處理的,可以保證數據的完整性、真實性和私有性。
實現VPN通信的方式有多種,常見的有IPSec VPN、PPTP VPN、SSL VPN等。以下主要介紹IPSec VPN。
IPSec協議包括應用于IP層上網絡數據安全的一整套體系結構,包括網絡認證協議AH(Authentication Header,認證頭)、ESP(Encapsulating Security Payload,封裝安全載荷)、IKE(Internet Key Exchange,因特網密鑰交換)和用于網絡認證及加密的一些算法等,其中,AH協議和ESP協議用于提供安全服務,IKE協議用于密鑰交換。
IPsec提供了兩種安全機制:認證和加密,認證機制使IP通信的數據接收方能夠確認數據發送方的真實身份以及數據在傳輸過程中是否遭篡改;加密機制通過對數據進行加密運算來保證數據的機密性,以防數據在傳輸過程中被竊聽。IPsec協議中的AH協議定義了認證的應用方法,提供數據源認證和完整性保證;ESP協議定義了加密和可選認證的應用方法,提供數據可靠性保證。
AH協議的工作原理是在每一個數據包上添加一個身份驗證報文頭,此報文頭插在標準IP包頭后面,對數據提供完整性保護。可選擇的認證算法有 MD5(Message Digest)、SHA-1(Secure Hash Algorithm)等。MD5算法的計算速度比SHA-1算法快,而SHA-1算法的安全強度比MD5算法高。
ESP協議的工作原理是在每一個數據包的標準 IP包頭后面添加一個 ESP報文頭,并在數據包后面追加一個 ESP尾。與AH協議不同的是,ESP將需要保護的用戶數據進行加密后再封裝到IP包中,以保證數據的機密性。常見的加密算法有 DES、3DES、AES等。同時,作為可選項,用戶可以選擇MD5、SHA-1算法保證報文的完整性和真實性。
IPsec有如下兩種工作模式(如圖1):
隧道(tunnel)模式:用戶的整個IP數據包被用來計算AH或ESP頭,AH或ESP頭以及ESP加密的用戶數據被封裝在一個新的IP數據包中。通常,隧道模式應用在兩個安全網關之間的通訊。
傳輸(transport)模式:只是傳輸層數據被用來計算AH或ESP頭,AH或ESP頭以及ESP加密的用戶數據被放置在原IP包頭后面。通常,傳輸模式應用在兩臺主機之間的通訊,或一臺主機和一個安全網關之間的通訊。

圖1 tunnel和transport模式下的數據封裝形式
本文使用的vpn是手動建立的認證、密鑰導入和加密通道等配置,因此維護工作量更大,對網絡管理員的要求更高。數據加密采用 esp協議,隧道模式,工作原理如圖 2,封裝原始數據,并產生一個新的ip包頭,以新的ip包頭在公網上路由。

圖2 本文使用的vpn封裝模式
在本文設計的網絡拓撲結構中,通過 VPN設備建立覆蓋全國的廣域網,每一個地區作為一個區域,區域內包括若干節點,其中每個節點使用一臺vpn設備。
網絡拓撲結構如圖3。

圖3 傳統的網絡拓撲結構
傳統的廣域網vpn通道建立方法是兩兩節點之間建立,對于較小規模的系統,如十幾個節點,這樣的建立方法完全可行,但是對于超過100臺的vpn設備,要建立覆蓋全國的虛擬專網,就顯得力不從心,建立過程復雜,而且管理困難,每增加一個節點或改變一個節點的配置,都需要100多個節點的網絡管理員參與更改本級vpn配置。工作量大而且容易出現錯誤。另一方面,數據流量過大,對vpn設備會產生過大的負擔。
如圖的傳統網絡拓撲結構中,vpn設備vpn1至vpn3屬于區域1,以vpn1為例,需要為每一個節點建立加密通道,設備內的通道數量巨大,并且,區域1中增加一個節點,需要一區域的網絡管理員通知全國各個節點的管理員為本地的vpn設備增加一條通道信息,并為每個節點的聯通做網絡測試,對于一個多達幾百個節點的系統來說,工作量之大可想而知。
改進后的網絡拓撲結構采用在區域內的核心節點設置兩臺 VPN設備,分別用于對區域外通道加密和對區域內通道加密,圖4中的VPN1用于對區域1外的數據加密,VPN6用于對區域內的數據加密,下面設定一些具體參數,詳細分析實現過程。

圖4 改進的網絡拓撲結構

VPN設備地址規劃

續表

根據以上的規劃和配置,以下分三種情況描述數據流轉過程:
(1) pc2訪問pc1
Pc2訪問pc1的ip包包括源地址192.168.2.2,目的地址192.168.1.2,首先ip包被發送給網關,也就是vpn設備1。
Vpn設備根據加密通道的配置,將數據加密后發送到vpn6,此時ip包被重新封裝,源地址更換為20.1.2.1,目的地址更換為20.1.1.17。
Ip包到達vpn6并解密后,解除封裝,源地址與目的地址恢復,由交換機1將ip包送到pc1。
(2) pc2訪問pc5
Pc2訪問pc5的ip包包括源地址192.168.2.2,目的地址192.168.5.2,首先ip包被發送給網關,也就是vpn設備1。
Vpn設備根據加密通道的配置,將數據加密后發送到vpn6,此時ip包被重新封裝,源地址更換為20.1.2.1,目的地址更換為20.1.1.17。
Ip包到達vpn6并解密后,解除封裝,源地址與目的地址恢復,根據目的地址192.168.5.2,ip包被發送給路由器。
路由器根據路由表,將目的地址區域1以外的ip包發送給下一跳vpn1。
Vpn1根據加密通道的配置,將ip包發送給vpn5。Ip包被重新封裝,源地址是20.1.1.1,目的地址是20.1.5.1。
Ip包到達vpn5并解密后,地址恢復為初始的源地址與目的地址。
交換機5將ip包發送給pc5。
(3) pc5訪問pc2
Pc5訪問pc2的ip包包括源地址192.168.5.2,目的地址192.168.2.2,首先ip包被發送給網關,也就是vpn設備5。
Vpn設備5根據加密通道的配置,將數據加密后發送到vpn1,此時ip包被重新封裝,源地址更換為20.1.5.1,目的地址更換為20.1.1.1。
Ip包到達vpn1并解密后,解除封裝,源地址與目的地址恢復,根據目的地址192.168.2.2,ip包被發送給路由器。
路由器根據路由表,將目的地址為192.168.2.2的ip包發送給下一跳vpn6。
Vpn6根據加密通道的配置,將ip包發送給vpn2。Ip包被重新封裝,源地址是20.1.1.17,目的地址是20.1.2.1。
Ip包到達vpn2并解密后,地址恢復為初始的源地址與目的地址。
交換機2將ip包發送給pc2。
改進后的vpn拓撲結構具有以下的明顯優點:
(1) vpn2、vpn3、vpn4等分布在區域1內的設備管理簡單,對網管要求很低,區域外增加或減少節點不需要對區域1內的這些vpn設備作任何改動。
(2) 區域外增加或減少節點對vpn1也沒有影響,區域1外增加或減少一個區域時才需要vpn1的網管對vpn1內的通道作改動,因此,工作量很小。
(3) 區域1內的數據包流量分為兩大部分:區域內流量和區域外流量。區域內流量不經過 vpn1,只有區域外流量經過vpn1,因此,有效的分流了數據,減少了單個vpn設備的負擔。
改進后的vpn拓撲在優化網絡流量,提高網絡性能和減少管理工作量,減少人為故障率方面都有一定的效果。
[1]Cisco Systems,Cisco Networking Academy Program.Fundamentals of Network Security.cisco Press.2004.
[2]Brian Morgan,Neil lovering.CCNP ISCW Official Exam Certification Guide.Cisco Press.2008.