修改过的GRE报头中的字段如下:
Checksum Present 一个1位标志,当设置为1时,表示提供了一个Checksum字段。对于PPTP,该标志总被设为0。
Routing Present 一个1位标志,当设置为1时,表示提供了一个Routing字段。对于PPTP,该标志总被设为0。
Key Present 一个1位标志,当设置为1时,表示提供了一个Key字段。对于PPTP,该标志总被设为1。Key字段是Protocol Type、Payload Length和Call ID字段的组合。
Sequence Number Present 一个1位标志,当设置为1时,表示提供了Sequence Number字段。
Strict Source Route Present 一个1位标志,当设置为1时,表示提供了一个“严格源路由”。对于PPTP,该标志总被设置为0。
Recursion Control 一个用于递归的3位标志。对于PPTP,该字段总被设为0。
Acknowledgement Number Present 一个1位标志,当设置为1时,表示提供了Acknowledgement Number字段。
Flags 一个用于GRE标志的4位字段。对于PPTP,该字段总被设为0。
Version 一个用于表示GRE报头版本的3位字段。对于PPTP,该字段总被设为1。
Protocol Type 一个用于存储GRE有效负载(payload)的EtherType值的16位字段。对于PPTP,该字段总被设为0x880B,即PPP帧的EtherType值。
Payload Length 一个用于表示GRE有效负载长度的16位字段。
Call ID 一个用于表示这个包的PPTP隧道的16位字段。对于PPTP连接,Call ID字段有两个不同的值。 一个值用于PPTP客户端发送的数据,另一个值用于PPTP服务器发送的数据。
Sequence Number 一个用于表示这个数据包的序列号的32位字段。该字段仅在Sequence Number Present标志被设置为1时才提供。
Acknowledgement Number 一个32位字段,用于表示这个隧道接收的某个GRE封装的数据包的最高序列号。 这个字段仅在Acknowledgement Number Present标志被设置为1时才提供。
为了终止 PPTP 连接,PPP 连接、PPTP 协议连接和 TCP 连接必须全部终止。 当 PPTP 客户端终止 PPTP 连接时,将会交换如下数据包:
PPTP 客户端发送一条 PPTP Set-Link-Info 消息来指定链路的 PPP 参数。
PPTP 客户端发送一条 Link Control Protocol (LCP) Terminate-Request 消息来终止 PPP 连接。 LCP 是 PPP 协议族中的一种协议,它管理逻辑 PPP 连接的配置和维护。
PPTP 服务器发送一条 PPTP Set-Link-Info 消息来指定链路的 PPP 参数。
PPTP 服务器发送 LCP Terminate-Ack 消息来响应 LCP Terminate-Request 消息,从而终止 PPP 连接。
PPTP 客户端发送一条 PPTP Clear-Call-Request 消息,向 PPTP 服务器表示 PPTP 控制连接即将终止。
PPTP 服务器使用一条 PPTP Call-Disconnected-Notify 消息进行响应。
PPTP 客户端发送一条 PPTP Stop-Control-Connection-Request 消息来终止 PPTP 控制连接。
PPTP 服务器使用一条 PPTP Stop-Control-Connection-Reply 消息进行响应。
TCP 连接终止。
如果PPTP服务器要终止连接,所交换的消息是相同的,只要将上述过程中的 PPTP 客户端替换成了 PPTP 服务器即可(反之亦然)。
PPTP流量概述欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) | Powered by Discuz! X3.2 |