当前位置: 首页 > 软件库 > 程序开发 > 网络工具包 >

pingtunnel

tcp/udp 转 icmp 的数据传输工具
授权协议 MIT
开发语言 Google Go
所属分类 程序开发、 网络工具包
软件类型 开源软件
地区 不详
投 递 者 凤昊东
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Pingtunnel

pingtunnel是把tcp/udp/sock5流量伪装成icmp流量进行转发的工具

注意:本工具只是用作学习研究,请勿用于非法用途!!!

使用

安装服务端

  • 首先准备好一个具有公网ip的服务器,假定域名或者公网ip是www.yourserver.com
  • releases下载对应的安装包,如pingtunnel_linux64.zip,然后解压,以root权限执行
sudo wget (最新release的下载链接)
sudo unzip pingtunnel_linux64.zip
sudo ./pingtunnel -type server
  • (可选)关闭系统默认的ping

安装GUI客户端(新手推荐)

  • pingtunnel-qt下载qt的gui版本
  • 双击exe运行,修改server(如www.yourserver.com)、listen port(如1080),勾上sock5,其他设置默认即可,然后点击GO
  • 一切正常,界面上会有ping值显示,然后可点击X隐藏到状态栏
  • 设置浏览器的sock5代理到127.0.0.1:1080,如果连不上网,出现socks version not supported错误日志,说明浏览器的代理不是socks5代理。如果提示非安全连接,说明dns有问题,勾上浏览器的【使用socks5代理DNS查询】

安装客户端(高玩推荐)

  • releases下载对应的安装包,如pingtunnel_windows64.zip,解压
  • 然后用管理员权限运行,不同的转发功能所对应的命令如下
  • 如果看到有ping pong的log,说明连接正常

转发sock5

pingtunnel.exe -type client -l :4455 -s www.yourserver.com -sock5 1

转发tcp

pingtunnel.exe -type client -l :4455 -s www.yourserver.com -t www.yourserver.com:4455 -tcp 1

转发udp

pingtunnel.exe -type client -l :4455 -s www.yourserver.com -t www.yourserver.com:4455

Docker

server:

docker run --name pingtunnel-server -d --privileged --network host --restart=always esrrhs/pingtunnel ./pingtunnel -type server -key 123456

client:

docker run --name pingtunnel-client -d --restart=always -p 1080:1080 esrrhs/pingtunnel ./pingtunnel -type client -l :1080 -s www.yourserver.com -sock5 1 -key 123456

效果

下载centos镜像 centos mirror,对比如下

  wget ss kcp pingtunnel
阿里云 26.6KB/s 31.8KB/s 606KB/s 5.64MB/s
  • PingTunnel是用于内网穿透的工具,近期用到它,发现了不少问题,做了一些改进,记录于此。 这个工具大概是2004年左右由Daniel创建,之后维护到2011年左右,支持通过ICMP或DNS(UDP)通道做隧道传输TCP报文,在其中实现了稳定链路传输(包括报文的序号与ACK响应、丢包重发、包乱序重组、滑动窗口发送等),TCP转发,多会话维护,核心代码集中在ptunnel.c一个1600行左右的

  • 1.环境搭建 windows10本机:192.168.126.1 kali攻击机:192.168.126.149 linux内网webserver服务器:192.168.126.157和192.168.33.129 内网windows7:192.168.33.33 2.安装Pingtunnel kali攻击机和webserver安装 apt-get install byacc apt-get in

 相关资料
  • 本文向大家介绍python实现udp数据报传输的方法,包括了python实现udp数据报传输的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python实现UDP数据报传输的方法,非常具有实用价值。分享给大家供大家参考。具体方法分析如下: 服务端代码: 客户端代码: 结果:先运行服务端,然后运行客户端, 服务端打印出: 补充: socket.sendto(string[, flags

  • 根据Stevens(图示为TCP/IP),traceroute程序用增量TTL(1、2、3等)向目的主机发送UDP数据包,以从ICMP TTL过期消息中获取中间跳信息。 “到达目的地”条件是ICMP端口无法到达的消息,因为traceroute寻址的随机端口数量很高(也就是说,不太可能有人在那里监听) 所以我的问题是:是否有技术原因(缺点、RFCs等)使用UDP数据包而不使用例如ICMP回送请求消息

  • 个人背景:对网络传输刚刚有一定概念 在浏览器访问网页的过程中,tcp 和 ip 传输协议下,我们需要进行三次握手。 了解到三次握手的本质也是发送了数据包到对方电脑 问题1:既然我三次握手也是发包,那我为什么不干脆一开始就直接发数据包呢?(省去三次握手,直接发不是更快吗?) 问题2:TCP 实际上干了什么才导致“三次握手以后的发包,和不进行握手直接发包”有了区别? (不需要解释底层原理,希望可以举个

  • 本文向大家介绍python网络编程之数据传输UDP实例分析,包括了python网络编程之数据传输UDP实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python网络编程之数据传输UDP实现方法。分享给大家供大家参考。具体分析如下: 一、问题: 你觉得网络上像msn,qq之类的工具在多台机器之间互相传输数据神秘吗?你也想玩一下在两台机器之间传数据吗?今天让python告诉我们基本原

  • 所以,这可能是一个愚蠢的问题,但据我所知,如果我通过TCP或UDP发送数据,如果组成该TCP/UDP数据包的任何一个IP数据包被丢弃,整个TCP/UDP数据包将被重传,但我的问题是为什么我们不能只发送丢失的部分数据吗?目前,我对此的唯一推理是,如果我们要为收到的每个IP数据包发送确认字符,这将增加网络拥塞。这是正确的,还是有其他原因,当只有一个或几个IP数据包被丢弃时,我们必须重新发送TCP/UD

  • 我正在构建一个通过udp在线传输实时音频的应用程序,我希望最小化延迟。音频以其生成的速度发送,这意味着生成一秒钟的音频需要一秒钟,发送速度不能超过音频速率。 我最初的想法是发送压缩音频的小数据包,以便客户端可以尽快开始播放。使用Opus编解码器,我应该能够发送5毫秒的音频数据包(最低2.5毫秒),这意味着用户可以很快开始播放,比如说在发送了2个这样的数据包之后。 然而,当使用如此小的分组大小时,会

  • 默认我们的数据传输都是不经过加密的,要加密传输的话得用上HTTPS协议。easyopen在1.4.0版本开始提供了数据加密传输,不需要HTTPS协议。 easyopen基于公私钥+AES加密传输,交互流程如下: 0. 事先把公钥放在客户端,私钥放在服务端 1. 客户端生成一个随机码randomKey 2. 将randomKey通过公钥RSA加密str = rsa_encode(randomKey,

  • 稳定性: 2 - 稳定的 dgram模块提供了 UDP 数据包 socket 的实现。 const dgram = require('dgram'); const server = dgram.createSocket('udp4'); server.on('error', (err) => { console.log(`服务器异常:\n${err.stack}`); server.cl