PPTP协议

  PPTP(Point-to-Point Tunneling Protocol)点对点隧道协议是PPP协议的一种扩展,它将PPP帧封装进IP包中,通过IP网络进行传输。它通过PPTP控制连接来创建、维护、终止一条隧道,同时使用通用路由封装GRE(Generic Routing Encapsulation)对PPP帧进行封装用来传输数据。
  PPTP协议假定在PPTP客户机和服务器之间有连通且可用的IP网络,因此如果PPTP客户机还没有接入网络,则首先需要建立从客户机到服务器的IP网络(可以通过拨号连接或者dhcp)。

PPTP控制连接过程和隧道维护

  PPTP控制连接建立在PPTP客户机IP地址和PPTP服务器IP地址之间,PPTP客户机使用动态分配的TCP端口号,PPTP服务器使用固定端口号1723,。在连接建立之后,客户机和服务器之间会周期性的发送回送请求和应答消息,以期检测出客户机与服务器之间可能出现的连接中断。PPTP控制连接的数据包格式如下所示:

Data-link Header IP Header Tcp Header PPTP Control Message Data link Trailer
 

PPTP的控制连接过程可以分为如下几步:
(1)建立TCP连接

三次握手建立TCP连接

(2)PPTP控制连接和GRE隧道建立

建立控制连接,同时分配CallID,该ID可以唯一标识一条隧道

(3)PPP协议的LCP协商

配置链路层参数,以及认证方法(比如MS-CHAP, MS-CHAP v2)

(4)PPP协议的身份认证

认证身份,可以通过LCP协商好的认证方法

(5)PPP协议的NCP协商

配置网络层参数,如分配IP地址,miniport信息

(6)PPP协议的CCP协商

双方协商加密协议(确定是否使用加密),MPPE加密的加密位数

如果LCP过程中确定了认证方法(比如MS-CHAP, MS-CHAP v2),同时CCP协商好要加密,则双方需要协商MPPE的 RC4 算法的密钥。

PPTP数据隧道传输

  PPTP客户端和服务器之间通过连接过程建立隧道之后,就可以通过隧道传输数据。
(1)用户的IP包经过PPP协议封装成为PPP包;
(2)PPTP对PPP帧的有效载荷进行加密(MPPE)、压缩(MPPC),加密和压缩都是可选的;
(3)PPTP使用通用路由封装协议GRE协议对PPP帧进行封装;
(4)将GRE帧放入IP报文中,通过IP网络发送给PPTP服务器
PPTP数据报文格式如下:


MPPE将通过由MS-CHAP、MS-CHAP v2或EAP-TLS身份验证过程所生成的加密密钥对PPP帧进行加密。PPTP将利用底层PPP加密功能并直接对原先经过加密的PPP帧进行封装。

MPPE (Microsoft Point-to-Point Encryption) 是一种将点到点协议(PPP)包用加密形式表示的方法,通常用来实现PPTP 中的加密。 MPPE 的加密算法是固定的,只能使用RC4 算法。

PPTP数据包的封装过程
(1)应用层数据封装成IP包
(2)将IP包发送到VPN的虚拟接口
(3)VPN的虚拟接口将IP数据包压缩和加密(压缩和加密可选),并增加PPP头。对于加密了的PPP包,其PPP类型是0x00FD
(4)VPN的虚拟接口将PPP帧发送给PPTP协议驱动程序
(5)PPTP协议驱动程序在PPP帧外加GRE报头
(6)PPTP协议驱动程序将GRE报头提交给TCP/IP协议驱动程序
(7)TCP/IP协议驱动程序为GRE添加IP头
(8)为IP数据包进行数据链路层封装后通过物理网卡发出

PPTP协议的更多相关文章

  1. [网络技术][转]PPTP协议解析

    PPTP协议大体上可以分为两部分:控制层连接和隧道,下面简要介绍两部分的功能.如果要详细了解PPTP协议请阅读RFC文档. 一. Control Connection Protol 控制层连接是基于T ...

  2. VPN column: PPTP(2)--PPTP协议解析

    zhu_hit原创,如需转载请注明出处.Thanks. PPTP协议大体上可以分为两部分:控制层连接和隧道,下面简要介绍两部分的功能.如果要详细了解PPTP协议请阅读RFC文档. 一. Control ...

  3. PPTP协议握手流程分析

    一  PPTP概述 PPTP(Point to Point Tunneling Protocol),即点对点隧道协议.该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网,可 ...

  4. mac下进行连接pptp协议

    环境:mac系统 软件:shimo 协议:pptp协议 说明: mac 自带vpn已经不支持 pptp协议的vpn,可以下载shimo连接. mac下进行vpn连接pptp协议操作方法: 下载: 链接 ...

  5. PPTP协议握手流程分析--转载

    一  PPTP概述   PPTP(Point to Point Tunneling Protocol),即点对点隧道协议.该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网 ...

  6. pptp协议的工作原理

    我的工作机是A,通信网卡是Aeth0, Appp0: 然后我的云主机是B, 通信的网卡是Beth0, Bppp0: 在网卡Bppp0上会不断地很清晰的数据包: 16:40:39.522917 IP 6 ...

  7. MacOS开启PPTP协议

    ​ 开启PPTP协议: Mac OS X 系统默认开启了完整性保护(System Intregrity Protection,SIP),所以即使是root帐户也无法修改系统目录中的文件.如果需要修改受 ...

  8. 「Shimo使用指南」mac支持pptp协议的小软件

    Mac的好多小伙伴在访问网络设备时觉得远程连接不方便,例如ssh,***登陆都不是很方便,后来又安装了open*** forMac.ISSH等客户端,使用后发现不是很稳定,断线后很久都无法连接等缺点, ...

  9. PPTP(Point to Point Tunneling Protocol),即点对点隧道协议。

    PPTP PPTP(Point to Point Tunneling Protocol),即点对点隧道协议.该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网(VPN),可 ...

随机推荐

  1. Java程序猿学习的建议(转)

    第一部分:对于尚未做过Java工作的同学,包括一些在校生以及刚准备转行Java的同学. 一.Java基础 首先去找一个Java的基础教程学一下,这里可以推荐一个地址,或者你也可以参照这个地址上去找相应 ...

  2. 802.1X基础

    这是一个认证规范.使用EAPOL协议在客户端与认证端交互. EAPOL协议:Extensible Authentication Protocol over LAN. 假设三个实体: 客户端:PC 认证 ...

  3. Cef 架构

    cef支持各种语言和多种操作系统.在设计的时候充分考虑了性能和易用性.cef核心功能提供了c和c++的接口.cef提供了和主程序之间的通信能力(利用 custom plugins, protocols ...

  4. [Struts2] Action Implements SessionAware

    struts2 的Action中若希望访问Session对象,可采用两种方式: 1.从ActionContext中获取: 2.实现SessionAware接口. 1.从ActionContext中获取 ...

  5. Jquery插件Ztree使用所遇问题

    问题1.$.fn.zTree为空或为Undefined 我在MVC中引用Jquery插件Ztree的JS并不存任何问题,而当我将Ztree的js引入项目中,就出现$.fn.zTree为空或为Undef ...

  6. VS 与JIRA Bamboo的连接

    atlassian-vs-connector 可以百度下地址 一些配置     效果:        

  7. u-boot移植 III

    延续上一篇, 烧录完成后, 串口屁毛都没有了, 运行了代码比较工具, 看看问题在哪. board/100ask24x0/   没有问题, 除了lowlevel_init.S, 不过我没在uboot中用 ...

  8. socket网络编程

    一.客户端/服务器架构 C/S架构,包括 1.硬件C/S架构(打印机) 2.软件C/S架构(Web服务) 最常用的软件服务器就是Web服务器,一台机器里放了一些网页或Web应用程序,然后启动服务,这样 ...

  9. List 用法和实例(转载)

    写在粘贴复制前:英文的感觉也可以,也能看的懂,多看看英文资料没坏处的 Problem. You have questions about the List collection in the .NET ...

  10. maven的使用--初级篇

    一.前言         早就知道maven 在java 项目的管理方面名声显赫,于是就想着学习掌握之,于是查阅了大量文档.发现这些文档的作者都是java 的大腕,大多都是站在掌握了一定maven 基 ...