diff --git a/README.md b/README.md index 44eb086..350ec8b 100755 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Udp2raw-tunnel ![image0](images/image0.PNG) -An Encrpyted,Anti-Replay,Multiplexed UDP Tunnel which can help you Bypass UDP Block or QoS by tunneling UDP traffic through Fake-TCP or ICMP by using raw socket.It aslo acts as a Connection Stablizer. +A UDP Tunnel which tunnels UDP via FakeTCP/UDP/ICMP Traffic by using Raw Socket,helps you Bypass UDP FireWalls(or Unstable UDP Environment).Its Encrpyted,Anti-Replay and Multiplexed.It aslo acts as a Connection Stablizer. [简体中文](/doc/README.zh-cn.md) # Features @@ -11,11 +11,11 @@ Fake-tcp/icmp headers help you bypass UDP blocking, UDP QOS or improper UDP NAT ### Simulate TCP Handshake Simulates the 3-way handshake, along with seq and ack_seq. TCP options MSS, sackOk, TS, TS_ack, wscale are also simulated. Real-time delivery guaranteed, no TCP over TCP problem when using OpenVPN. -### Encrpytion, Anti-Replay, Anti-MITM +### Encrpytion, Anti-Replay, No MITM * Encrypt your traffic with AES-128-CBC. * Protect data integrity by MD5 or CRC32. * Defense replay attack with an anti-replay window, smiliar to IPSec and OpenVPN. -* Authenticate mutually, no more MITM attacks. +* Authenticate mutually, no MITM attacks. ### Failure Dectection & Stablization (Connection Recovery) Conection failures are detected by heartbeats. If timed-out,client will automatically change port number and reconnect. If reconnection is successful, the previous connection will be recovered, and all existing UDP conversations will stay vaild. @@ -185,3 +185,12 @@ https://github.com/ccsexyz/kcpraw Transparently tunnel your IP traffic through ICMP echo and reply packets. https://github.com/DhavalKapil/icmptunnel + +### Tcp Minion +Tcp Minion is a project which modifid the code of tcp stack in kernel,and implemented real-time out-order udp packet delivery through this modified tcp stack.I failed to find the implementation,but there are some papers avaliable: + +https://arxiv.org/abs/1103.0463 + +http://korz.cs.yale.edu/2009/tng/papers/pfldnet10.pdf + +https://pdfs.semanticscholar.org/9e6f/e2306f4385b4eb5416d1fcab16e9361d6ba3.pdf diff --git a/doc/README.zh-cn.md b/doc/README.zh-cn.md index 052ba5b..a0b0bbd 100644 --- a/doc/README.zh-cn.md +++ b/doc/README.zh-cn.md @@ -1,6 +1,8 @@ Udp2raw-tunnel ![image2](/images/image2.PNG) -加密、防重放攻击的、信道复用的udp tunnel,利用raw socket中转udp流量.同时有心跳保活,且在断线重连后保持上层连接不掉线的功能。 +UDP tunnel,通过raw socket给UDP包加上TCP或ICMP header,进而绕过UDP屏蔽或QoS,或在UDP不稳定的环境下提升稳定性。支持心跳保活、自动重连,重连后会恢复上次连接,在底层掉线的情况下可以保持上层不掉线。同时有加密、防重放攻击、信道复用的功能。 + +**欢迎任何形式的转载** [English](/README.md) @@ -49,7 +51,7 @@ epoll纯异步,高并发,除了回收过期连接外,所有操作的时间 # 简明操作说明 ### 环境要求 -Linux主机,有root权限。主机上最好安装了iptables命令(apt/yum很容易安装)。在windows和mac上可以开虚拟机(桥接模式和NAT模式经测试都可用)。 +Linux主机,有root权限。主机上最好安装了iptables命令(apt/yum很容易安装)。在windows和mac上可以开虚拟机(udp2raw跑在linux里,其他应用照常跑在windows上,桥接模式测试可用)。 ### 安装 下载编译好的二进制文件,解压到任意目录。