PPTP协议简述

2023-11-15

http://jiaoyu.3158.cn/20121128/n4230270592726.html

PPTP(Point to Point Tunnel Protocol),点对点隧道协议,是建立在PPP(Point to Point)点对点协议上的VPN隧道技术。PPP使用广泛的链路层协议,国内基本所有的服务商都提供PPP拨号上网服务,因为PPP有提供验证并且容易实现按流量计费的功能而PPTP在此基础上,通过PAP或者CHAP等密码身份认证协议,甚至与IPsec结合,提高PPP网络通信的安全性,可以使得远程用户通过拨入ISP、或者直接连入Internet安全地访问企业网。

PPTP在封包的过程中会两次封装IP包:当上层协议发包到传输层,再由传输层发送到网络层,添加IP报文头部完成第一次IP封包后发给PPP模块,PPP模块将数据包发往PPTP初始化时注册的虚拟设备;在虚拟设备里,PPTP模块通过添加GRE报文头部后再次发到IP层,完成第二次IP封包,最后将数据包发往以太网卡,完成一次完整PPTP封装。

PPTP通过在PAC和PNS之间建立连接来进行通信。PPTP通信过程需要建立两种连接,一种是控制连接,另一种是数据连接。控制连接用来管理协商通信过程中的参数和进行数据连接的维护,而真正的数据通信部分则交由PPTP数据连接完成。PPTP隧道提供低层拥塞控制和流控制,这样就使得带宽利用率大大的提高,避免多余的重发,缓冲区的压力也大大减小。

PPTP连接建立:

(1)、客户端先向服务器1723端口发送TCP连接请求,这里的TCP连接不是标准的三次握手,第三次回应的ACK会随着载荷一起发送,这样做的好处是可以节省一些网络流量,减少不必要的开销。

(2)、在TCP连接完成以后,PPTP进入控制连接的建立,首先PAC会发Start Control Connection Request报文给PNS要求建立连接,PNS接到后发送应答报文,PAC再次发送Outgoing Call Request,等到PNS响应后控制连接建立。

(3)、接着是标准的PPP协商,上面说过,PPTP是建立在PPP的基础上的隧道协议。这样先进行LCP层的协商,PAC跟PNS双方都要把自己的链路层配置发送给对方,PAC的配置一般比较简单,PNS收到后就会接受 ,而PNS发给PAC的配置报文,PAC会对Unknow选项和不接受选项向PNS反馈,PNS收到后删除这些选项再次发送配置,PAC接受,LCP协商完成。此时在PPTP的控制层会互发Set Link Info报文来对刚刚协商好的选项进行配置。

(4)、LCP协商完成后,PNS开始对PAC进行身份验证,可以选的验证方式很多,有PAP、CHAP、MS-CHAP等方式。

(5)、身份验证后就进行NCP层协商。主要是来确定双方网络层接口参数,配置虚拟端口,分配IP、DNS等信息。

(6)、之后PPTP连接过程就算是完成,PPTP开始发送GRE封装的数据包,但每隔60秒,连接双方会发送Echo Request来询问链路是否可用,如果对方在此后60秒内没有响应,连接就会被终止。正常的连接终止时通过发送Stop Control Connection Request来通知对方结束连接。

PPTP主要应用在分公司或者个人用户要连接总部服务器时,通过建立PPTP隧道,让用户跟服务器看起来像处于同个局域网内,实现安全通信。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PPTP协议简述 的相关文章

  • rsync问题处理

    使用rsync同步时出现 in rsync opt failed Permission denied 13 检查了服务器的同步的目录权限都没有问题 网上找了说是开启了SELinux 的enforce模式 于事 root test01 etc
  • 技术解读倚天 ECS 实例 — Arm 芯片的 Python-AI 算力优化

    深度学习技术在图像识别 搜索推荐等领域得到了广泛应用 近年来各大 CPU 厂商也逐渐把 AI 算力纳入了重点发展方向 通过 Arm 芯片 Python AI 算力优化 我们将看到龙蜥社区 Arm 架构 SIG Special Interes
  • 三菱modbusRTU通讯实例_编程实例

    点击箭头处 工业之家 选择 关注公众号 台达PLC控制伺服项目接线及程序 今天主要分享的是关于台达 ASDA 伺服的相关控制案例 台达 ASDA 伺服定位演示系统 控制要求 1 由台达 PLC 和台达伺服组成一个简单的定位控制演示系统 通过
  • 2019年“华为杯”研究生数学建模比赛总结

    前言 参加数学建模比赛是学习生涯甚至是人生的一次难忘的经历 不管是比赛过程还是最终的结果 无论最终结果如何 自我学习生涯至今 在研究生期间参加一次数学建模更重要的是我对数学建模比赛的一种情怀 回想本科期间参加数学建模竞赛 从校赛到省赛 再到
  • qwt之左键控制局部放大,右键逐步还原功能

    一 完成新建工程 并配置完qwt的图形 这个后期会做一个专栏进行说明 二 拖上开始的按钮 布局如图所示 三 加上头文件 include
  • V4L2 摄像头应用编程

    目录 V4L2 简介 V4L2 摄像头应用程序 打开摄像头 查询设备的属性 能力 功能 设置帧格式 帧率 申请帧缓冲 内存映射 入队 开启视频采集 读取数据 对数据进行处理 结束视频采集 V4L2 摄像头应用编程实战 实战小项目之视频监控
  • PAT C语言入门题目-7-62 切分表达式——写个tokenizer吧 (20 分)

    7 62 切分表达式 写个tokenizer吧 20 分 先说点出题背景 这个题是为低年级同学 学C语言的同学准备的 因为 对这部分同学 这个题目编写起来略有一点复杂 如果是高年级 学过了正则表达式 Regular Expression 的
  • 银行转账项目

    package Day14 class Account String id 用户名称 double balance 用户余额 public void save double money 存钱方法 if money gt 0 balance
  • Postman设置中文

    1 下载资源 postman官网下载地址 postman汉化包 2 配置 Mac 访达 应用程序 Postman app 右键查看包内容 替换Postman app Contents Resources app windows 复制到Pos
  • vue新增删除内容排序问题解决处理

    本次答题选项的删除添加是个人最初比较头疼的地方 比如ABCD四个选项 删除c选项后 点击 新增答题类型 选项按钮 则默认创建是E选项 再或者就是ABCD四个选项位置删除任意一个后 顺序被打乱等 最后解决了 就是多写好几行代码 有点繁琐 1
  • vue 使用 scss 的坑

    vue 使用 scss 的坑 日常记录开发中遇到的坑 1 使用 npm install sass loader node sass save dev 进行安装 2 在页面中直接使用 有时候可以 有时候不行 原因 我个人觉得安装的两个插件本版
  • vscode 终端 npm 命令运行时 自动弹出如何打开这个文件?

    解决
  • wireshark数据包分析实战 读书笔记

    由头 永久链接 之前读了很多书籍 但是现在回顾的时候 很多内容仅仅是熟悉 而不是真正掌握 所以尝试一种新的方式 将读书时觉得比较重要的 或者是自己还不理解的东西记录下来 达到这本书我已经不需要再去翻 只要看笔记即可的效果 第一章 数据包分析

随机推荐

  • sql语句查询A表有而B表没有的数据

    SELECT A 户名FROM TABLE A A TABLE B BWHERE A 户名 B 户名 WHERE B 户名 IS NULL 还可以有其他方法 1 select distinct A ID from A where A ID
  • ps多种去水印方法与技巧-适合各种水印

    ps作为一款功能强大的图片处理软件 有着丰富的功能 ps去水印也是我们常用的一种功能 但是在我们日常使用中遇到的水印千奇百怪 不同的水印就需要使用不同的去水印方法 方法一 ps内容识别去水印 1 套索工具圈出水印 2 选择 编辑 填充 内容
  • 深度学习中的优化算法之Adam

    之前在https blog csdn net fengbingchun article details 124909910 介绍过深度学习中的优化算法Adadelta 这里介绍下深度学习的另一种优化算法Adam 论文名字为 ADAM A M
  • 在linux中怎么查看错误日志

    在linux中怎么查看错误日志 cat或者tail f命令日 志 文 件 说 明 var log message 系统启动后的信息和错误日志 是Red Hat Linux中最常用的日志之一 var log secure 与安全相关的日志信息
  • Arthur and Table 【CodeForces - 557C】【Splay】

    题目链接 有一张桌子 有n个腿 第i根腿的长度是li 现在要拿掉一些腿 使得桌子稳定 拿掉第i根腿需要di的能量 稳定的条件是 假如拿掉若干条腿之后 桌子还有k个腿 那么长度最长的腿的数目要超过一半 比如桌子有5根腿 那么至少要有三根腿是最
  • 2016年终总结与来年计划

    光阴似箭 日月如梭 眨眼间已到年底 今年感慨颇丰 获益良多 因为我认为努力了就肯定会有收获 哪怕是收获那一滴滴辛勤的汗水 我在公司任务轻松时 加了些前端群 重点推荐豪情群 在群里分享技术以及生活的点滴 同时认识了一些志同道合的朋友 有大牛建
  • C/C++: 生成不重复的一组随机数

    在程序编写过程中 很多情况下回用到随机数 然而单纯的随机数不能保证每一次的数据都不同 下面方法返回一组不重复的数据 1 方法 随机一组数据 std vector
  • 432. 全 O(1) 的数据结构

    题目 请你设计一个用于存储字符串计数的数据结构 并能够返回计数最小和最大的字符串 实现 AllOne 类 AllOne 初始化数据结构的对象 inc String key 字符串 key 的计数增加 1 如果数据结构中尚不存在 key 那么
  • kubernetes最佳实践(二) - dashboard ui和heapster监控部署

    前言 本章节主要包行两个部分 官方dashboard部署 版本是1 6 3 1 5 0我也试过成功的 给dashboard加上仪表盘监控 我们安装heapster为dashboard安装统计功能和仪表盘 如下图 1 安装dashboard
  • kubeadm搭建k8s高可用集群(keepalived+nginx+3master)

    目录 前言 服务器准备 架构讲解 环境初始化 安装keepalived软件 安装nginx软件 初始化k8s节点 安装docker 初始化master01节点的控制面板 master02 master03节点加入集群 node01 node
  • Java中进行H264数据的I帧判断

    要判断从编码器中获取到的一帧Byte数组是I帧还是P帧 首先需要了解H264数据的基本格式 I帧 帧内编码 P帧 前向预测编码 与前一个I帧比较差异 B帧 双向预测编码 与前后帧比较差异 H264流 首帧数据为SPS和PPS 后面为IPPP
  • 旅行售货员问题-回溯法

    排列树问题 问题描述 某售货员要到若干城市去推销商品 已知各城市之间的路程 旅费 他要选定一条从驻地出发 经过每个城市一遍 最后回到驻地的路线 使总的路程 总旅费 最小 输出结果
  • Android傻瓜式脚本录制

    网易游戏的AirtestIDE是目前比较优秀的脚本录制工具 它不需要手机ROOT 也不需要其他的任何操作 直接普通的手机就可以在线调试 执行脚本 而且支持跨平台 也就是说PC WEB IOS它一样行 如上图 Airtest 是图像匹配的方式
  • 解决goland代码全部莫名报错 找不到依赖的问题

    我遇到的问题是 代码在一台电脑上完全能够运行 切到另一台电脑 git pull之后 代码依旧能运行 但goland识别到依赖全部报错 找不到各种依赖 go mod download未能解决问题 因为代码能跑 说明第三方包都安装了 解决方案
  • matlab实现RCNN(二)

    本文在MatlabR2016b上使用自带的深度学习工具实现RCNN来进行车辆检测 实验环境 训练图片数量 825 网上收集 部分公共数据集 图片车辆数量 2300 对每张图片手工标注label得到 实验环境 MatlabR2016b 自带深
  • Matlab实现自适应动态规划多层神经网络的算例汇总

    使用MATLAB实现自适应动态规划 ADP 多层神经网络的算例 包括扭摆系统 仿射非线性算例以及 质量 弹簧 阻尼 系统 扭摆系统 torsional pendulum system 文献出处 1 Liu D Wei Q Policy It
  • 大数据模型部署思路

    提出问题 以神经网络为例 MATLAB可以用训练集来训练数据 随后用测试集来检测模型准确度 最后用该模型来决策新数据 在大数据平台下如何训练数据呢 又如何用训练好的模型对新数据进行决策呢 方法1 spark自带机器学习库mlib 用原生机器
  • bootstrap-table按住Shift多选设计思路-优化

    在网上找到bootstra table按住shift实现多选的思路后 进行改进 实现批量选中 批量取消选中 批量选中后取消部分选中并保留剩下选中项 向上 向下批量操作 参考地址 https blog csdn net qq 36360308
  • 计算机二级Java(第一份)

    1 1 第三范式是在第二范式的基础上消除了 非主属性对键的传递函数依赖 第三范式是为了消除数据库中关键字之间的依赖关系 2 冯诺依曼 输入 存储 运算 控制 输出 3 一般情况下 划分计算机四个发展阶段的主要依据是 计算机所采用的基本元器件
  • PPTP协议简述

    http jiaoyu 3158 cn 20121128 n4230270592726 html PPTP Point to Point Tunnel Protocol 点对点隧道协议 是建立在PPP Point to Point 点对点协