ConnectAdd返回-13可能的情况:
1)对端客户端的隧道数量达到上限(隧道数量上限请看配置文件的 MaxTunnel参数的值)
2)本端客户端的隧道数量达到上限(隧道数量上限请看配置文件的 MaxTunnel参数的值)
3)本端的入口端口占用(被已经添加的隧道占用或者被其他程序占用)
4)对端和本端的客户端不在同一个用户域里面。
PPTUN 隧道不能连接的可能原因和解决办法
请查看《Peergine P2P 隧道 v1.5.pdf》理解隧道出口端和入口端的概念。
1、 隧道没有生效。重启所有客户端。
2、 客户端不在线。在网页上看设备是否在线。
3、 重启客户端并且在线,在入口端设备上查看配置的入口端IP地址和端口是否打开。
4、 验证在出口端设备上(创建隧道的设备)上是否可以正常访问配置的出口端IP地址和端口(一般是私网的TCP服务器地址和端口)。
5、 问题:部分隧道不可用。
解决办法:请配置更大的MaxSess和MaxTunnel 后重启客户端。
问题原因:
同一个账号或者ID关联了大量隧道,超过了客户端配置文件中支持的最大隧道数,超过部分隧道将不能生效。
6、 部分入口端设备的隧道不可用,请检查是否有入口端设备上是否有端口冲突。
PPTUN隧道传输HTTP请求时延时很大的解决方案
问题描述:
有客户创建了一条隧道用来请求HTTP数据,测试发现:局域网请求数据很快获得返回结果。但是在隧道中请求确需要10秒左右的时间。每次都是大约10才能请求完成。
解决方案:
通过抓包获取HTTP数据分析,发现他们的HTTP Response Header没有Content-Length
在HTTP
Response Header中加入Content-Length后再请求同样的就可以很快获得回复了。
pgTunnelConnectDelete: 删除一条隧道连接返回 -18 可能的原因
返回值PG_TUNNEL_ERROR_NOEXIST = -18, //资源不存在
1)这个隧道确实不存在了
2)调用API传错了某个参数导致没法匹配到隧道。
设置识别码后设备不能上线的问题
在某些*Unix系统下,运行P2P隧道客户端后设置识别码切换域后,重启客户端在服务端发现设备没有上线。在客户端日志中出现类似_DEV_{ID}@pptun.com的日志打印。
这种情况下,可能是没有设置沙盒,或者设置的沙盒目录程序没有权限写入。
具体可以查阅手册文档《P2P隧道模块SDK编程手册 v1.22.doc》