1. 程式人生 > >淺談PPTP的工作原理以及作用

淺談PPTP的工作原理以及作用

華科雲商是一家專業的動態IP解決方案服務商,現有派克斯、PPTP、HTTP代理、撥號VPS等產品。主要為註冊、搶購、遊戲,、打碼、爬蟲、網賺等需求IP資源的業務提供一站式產品服務。聯絡扣扣:56731523

PPTP(Point to Point Tunneling Protocol),即點對點隧道協議。該協議是在PPP協議的基礎上開發的一種新的增強型安全協議,支援多協議虛擬專用網,可以通過密碼驗證協議(PAP)、可擴充套件認證協議(EAP)等方法增強安全性。可以使遠端使用者通過撥入ISP、通過直接連線Internet或其他網路安全地訪問企業網

解析

點對點隧道協議(PPTP)是一種支援多協議

虛擬專用網路的網路技術,它工作在第二層。通過該協議,遠端使用者能夠通過 Microsoft Windows NT工作站、Windows xp 、 Windows 2000 和windows2003、windows7作業系統以及其它裝有點對點協議的系統安全訪問公司網路,並能撥號連入本地ISP,通過 Internet 安全連結到公司網路。

PPTP協議假定在PPTP客戶機和PPTP伺服器之間有連通並且可用的IP網路。因此如果PPTP客戶機本身已經是IP網路的組成部分,那麼即可通過該IP網路與PPTP伺服器取得連線;而如果PPTP客戶機尚未連入網路,譬如在Internet撥號使用者的情形下,PPTP客戶機必須首先撥打NAS以建立IP連線。這裡所說的PPTP客戶機也就是使用PPTP協議的VPN客戶機,而PPTP

伺服器亦即使用PPTP協議的VPN伺服器。

PPTP 只能通過 PAC 和 PNS 來實施,其它系統沒有必要知道 PPTP。撥號網路可與 PAC 相連線而無需知道 PPTP。標準的 PPP 客戶機軟體可繼續在隧道 PPP 連結上操作。

PPTP 使用 GRE 的擴充套件版本來傳輸使用者 PPP 包。這些增強允許為在 PAC 和 PNS 之間傳輸使用者資料的隧道提供低層擁塞控制和流控制。這種機制允許高效使用隧道可用頻寬並且避免了不必要的重發和緩衝區溢位。PPTP 沒有規定特定的演算法用於底層控制,但它確實定義了一些通訊引數來支援這樣的演算法工作。

PPTP控制連線資料包包括一個IP報頭,一個TCP報頭和PPTP控制資訊。

在使用VPN的時候可以使用PPTP協議,也可以使用L2TP協議,具體設定方法如下:比如在Windows XP中,首先,在"網路連線"視窗中右鍵單擊某個VPN連線,選擇"屬性"。接著,在開啟的屬性視窗中選擇"網路"選項卡。然後在"VPN型別"中選擇"PPTPVPN",單擊"確定"按鈕即可。

協議結構

Length ― 該 PPTP 資訊的八位總長,包括整個 PPTP 頭。

PPTP Message Type ― 資訊型別。可能值有:1、控制資訊;2、管理資訊。

Magic Cookie ― Magic Cookie 以連續的 0x1A2B3C4D 進行傳送,其基本目的是確保接收端與 TCP資料流間的正確同步執行。

Control Message Type ― 可能值有:1、開始-控制-連結-請求(Start-Control-Connection-Request);2、開始-控制-連結-答覆(Start-Control-Connection-Reply);3、停止-控制-連結-請求(Stop-Control-Connection-Request);4、停止-控制-連結-答覆(Stop-Control-Connection-Reply);5、迴音-請求(Echo-Request);6、迴音-答覆(Echo-Reply);

Call Management――可能值有:1、匯出-呼叫-請求(Outgoing-Call-Request);2、匯出-呼叫-答覆(Outgoing-Call-Reply);3、匯入-呼叫-請求(Incoming-Call-Request);4、匯入-呼叫-答覆(Incoming-Call-Reply);5、匯入-呼叫-連結(Incoming-Call-Connected);6、呼叫-清除-請求(Call-Clear-Request);7、呼叫-斷開連結-通告(Call-Disconnect-Notify);8、廣域網-錯誤-通告(WAN-Error-Notify)。

PPP Session Control ― 設定-鏈路-資訊(Set-Link-Info)。Reserved 0 & 1 ― 必須設定為0。

Protocol Version ― PPTP版本號。

Framing Capabilities ― 指出幀型別,該資訊傳送方可以提供:1、非同步幀支援(Asynchronous Framing Supported);2、同步幀支援(Synchronous Framing Supported)。

Bearer Capabilities ― 指出承載效能,該資訊傳送方可以提供:1、模擬訪問支援(Analog Access Supported);2、數字訪問支援(Digital access supported)。

Maximum Channels ― 該 PAC 可以支援的個人 PPP 會話總數。

Firmware Revision ― 若由 PAC 出發,則包括髮出 PAC 時的韌體修訂本編號;若由 PNS 出發,則包括 PNS PPTP 驅動版本。

Host Name ― 包括髮行的 PAC 或 PNS 的 DNS 名稱。

Vendor Name ― 包括特定供應商字串,指當請求是由 PNS 提出時,使用的 PAC 型別或 PNS軟體型別。

區別

PPTP和L2TP都屬於第二層隧道協議,使用PPP協議對資料進行封裝,然後新增附加包頭用於資料在網際網路絡上的傳輸。儘管兩個協議非常相似,但是仍存在以下幾方面的不同:

1、PPTP要求網際網路絡為IP網路。L2TP只要求隧道媒介提供面向資料包的點對點的連線。L2TP可以在IP(使用UDP),幀中繼永久虛擬電路(PVCs)、X.25虛擬電路(VCs)或ATM網路上使用

2、PPTP只能在兩端點間建立單一隧道。L2TP支援在兩端點間使用多隧道。使用L2TP,使用者可以針對不同的服務質量建立不同的隧道

3、L2TP可以提供包頭壓縮。當壓縮包頭時,系統開銷(overhead)佔用4個位元組,而PPTP協議下要佔用6個位元組

4、L2TP自身不提供隧道驗證,從L2TP的包頭可以看出。隧道認證是由PPP(pap或chap)協議提供!而PPTP則支援隧道驗證,PPTP自身就是PPP的擴充套件!但是當L2TP或PPTP與IPsec共同使用時,可以由IPsec提供隧道驗證,不需要在第2層協議上驗證隧道.