By Salinna
【前言】
VPN所使用的技術可分為四類:穿隧傳輸技術(Tunneling)、加解密技術(Encryption & Decryption)、密鑰管理技術(Key Management)、使用者與設備身分認證技術。現在穿隧傳輸技術所使用的協定主要有:IPSec、PPTP、L2TP三種。
PPTP 與L2TP均為第二層的穿隧技術,適合具有IP/IPX/AppleTalk等多種協定的環境。 IPSec、PPTP、L2TP三者,最大的不同在於,運用IPSec的技術,使用者可以同時使用 Internet與VPN的多點傳輸功能(包括Internet/Intranet/Extranet/Remote Access 等)。但對於有些VPN伺服器在PTP及L2TP連線時只能執行點對點VPN的功能,無法同時執行Internet的應用,在使用時較不方便。而在安全上,IPSec會對整個傳輸資料做加密,PPTP及L2TP則是對封包的再包(Encapsulation),並未對資料做加密處理,故安全性較低。
當在沒有VPN伺服器的環境下,遠端使用者只能使用用戶端(client)選擇PPTP或L2TP/L2TP over IPSec方式來連線到VPN伺服器(VPN server/gateway),可參考連線架構圖如下:

【PPTP (Point to Point Tunnel Protocol)】
由3Com和微軟所發展出來的通訊協定,屬於OSI架構中第二層,用以封包任何第三層的協定 。此協定定義了一個主從式的架構,主要是由PNS (PPTP Network Server)和PAC (PPTP Access Concentrator)組成的機制,乃是透過這個機制來支援VPN的功能。
其將控制包與數據包分開,控制包採用TCP控制,用於嚴格的狀態查詢與信令信息;數據包部分先封裝在PPP協議中,然後再封裝到GRE V2協議中。將IP、IPX或NetBEUI通訊協定封裝在IP封包中,並使用TCP方式來交換加密通道的維護訊息。
【L2TP (Layer 2 Tunneling Protocol)】
將PPTP 和 Cisco所發展的Layer 2 Forwarding (L2F)合併的一種協定,提供multi-point tunneling 的功能。結合Layer-2 Forwarding(L2F)和PPTP的協定由IETF所提出的一個資料連結層的加密通訊協定。
它結合了PPTP協定和第二層轉發L2F協定的優點,能以隧道方式使PPP封包通過各種網路協定,包括PVCs 、X.25虛擬電路(VCs)、ATM、SONET…等。但是L2TP没有任何加密措施,但可和IPSec協定結合使用,提供隧道驗證。
【PPTP與L2TP的差異性】
| PPTP | L2TP |
環境需求 | 要求網路為IP網路 | 只要求隧道媒介提供面向數據包(Packet-oriented)的點對點連接 |
通訊協定 | 使用TCP協定,適合没有防火牆限制的網路 | 使用UDP協定,一般可以穿透防火牆,適合有防火牆限制環境,如公司、網咖、學校等 |
建立隧道方式 | 只能在兩端點間建立單一隧道 | 支援在兩端點間使用多隧道,用戶可針對不同的服務來建立不同的隧道 |
Overhead壓縮方式 | 佔用6個位元組(byte) | 佔用4個位元組(byte) |
隧道驗證 | 不支援隧道驗證,但當與IPSec共同使用時,可由IPSec提供隧道驗證,不需在第2層協定上驗證隧道 | 可以提供隧道驗證 |