- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PPTP协议工作原理概要
PPTP隧道技术 2
一、控制连接和隧道维护 2
1.Start-control-connection-request报文 4
2.Start-Control-Connection-Reply报文 5
3.Outgoing-call-request报文 6
4.Outgoing-Call-Reply报文 8
5.Set-Link-Info报文 9
6.Echo request报文 10
7.Echo-reply报文 10
8.Call-Clear-Request报文 10
9.Call-Disconnect-Notify报文 11
10.Stop-Control-Connection-Request报文 11
11.Stop-Control-Connection-Reply报文 11
二、PPP协商过程 12
1.LCP协商 12
2.PPP协议的身份验证 13
3.PPP协议的NCP协商 14
4.CCP报文 14
三、数据传输 15
PPTP隧道技术
PPTP是对端对端协议(PPP)的一种扩展,它采用了PPP所提供的身份验证、压缩与加密机制。PPTP能够随TCP/IP协议一道自动进行安装。PPTP与Microsoft端对端加密(MPPE)技术提供了用以对保密数据进行封装与加密的VPN服务。 MPPE将通过由MS-CHAP、MS-CHAP v2身份验证过程所生成的加密密钥对PPP帧进行加密。为对PPP帧中所包含的有效数据进行加密,虚拟专用网络客户端必须使用MS-CHAP、MS-CHAP v2身份验证协议。
PPP协议:点到点协议(Point to Point Protocol,PPP)是IETF(Internet Engineering Task Force,因特网工程任务组)推出的点到点类型线路的数据链路层协议。
GRE协议:GRE(generic routing encapsulation,通用路由封装)协议是对某些网络层协议的数据报进行封装,使这些被封装的数据报能够在另一个网络层协议中传输。
一、控制连接和隧道维护
在PPTP建立连接过程中,客户端先向服务器1723端口发送TCP连接请求,这里的TCP连接不是标准的三次握手,第三次回应的ACK会随着载荷一起发送,这样做的好处是可以节省一些网络流量,减少不必要的开销。在TCP连接完成以后,PPTP进入控制连接的建立,首先客户端会发Start Control Connection Request报文给服务端要求建立连接,服务器端接到后发送应答报文,客户端再次发送Outgoing Call Request,等到服务器端响应后控制连接建立。
接着是标准的PPP协商,上面说过,PPTP是建立在PPP的基础上的隧道协议。这样先进行LCP层的协商,客户端跟服务器端双方都要把自己的链路层配置发送给对方,客户端的配置一般比较简单,服务器端收到后就会接受?,而服务器端发给客户端的配置报文,客户端会对Unknow选项和不接受选项向服务器反馈,服务器收到后删除这些选项再次发送配置,客户端接受,LCP协商完成。此时在PPTP的控制层会互发Set Link Info报文来对刚刚协商好的选项进行配置。
LCP协商完成后,服务器开始对客户端进行身份验证,可以选的验证方式很多,有PAP、CHAP、MS-CHAP等方式,身份验证后就进行NCP层协商。主要是来确定双方网络层接口参数,配置虚拟虚拟端口,分配IP、DNS等信息。
之后PPTP连接过程就算是完成,PPTP开始发送GRE封装的数据包,但每隔60秒,连接双方会发送Echo Request来询问链路是否可用,如果对方在此后60秒内没有响应,连接就会被终止。正常的连接终止时通过发送Stop Control Connection Request来通知对方结束连接。
实际抓取PPTP拨号交互报文:
1.Start-control-connection-request报文
由PPTP客户端发出,请求建立控制连接;
Length :该 PPTP 信息的八位总长,包括整个 PPTP 头。
Message Type : 信息类型。可能值有:1、控制信息;2、管理信息。
Magic Cookie : Magic Cookie 以连续的 0x1A2B3C4D 进行发送,其基本目的是确保接收端与 TCP数据流间的正确同步运行。
Control Message Type :值为1;
Reserved 0 1 : 保留字段,必须设置为0。
Protocol Version : PPTP版本号。
Framing Capabilities?: 指出帧类
文档评论(0)