浏览代码

Update README.md

wangyu- 5 年之前
父节点
当前提交
2836daefc4
共有 1 个文件被更改,包括 28 次插入5 次删除
  1. 28 5
      README.md

+ 28 - 5
README.md

@@ -17,17 +17,40 @@ or
 [简体中文](/doc/README.zh-cn.md)(内容更丰富)
 
 
-
 # Support Platforms
 Linux host (including desktop Linux,Android phone/tablet,OpenWRT router,or Raspberry PI) with root account or cap_net_raw capability.
 
 For Windows and MacOS users, use the udp2raw in [this repo](https://github.com/wangyu-/udp2raw-multiplatform).
 
 # Features
-* Send/Receive UDP Packets with ICMP/FakeTCP/UDP headers
-* Simulated TCP with Real-time/Out-of-Order Delivery
-* Encryption, Anti-Replay
-* Failure Dectection & Stablization (Connection Recovery)
+### Send/Receive UDP Packets with ICMP/FakeTCP/UDP headers
+ICMP/FakeTCP headers help you bypass UDP blocking, UDP QOS or improper UDP NAT behavior on some ISPs. In ICMP header mode,udp2raw works like an ICMP tunnel.
+
+UDP headers are also supported. In UDP header mode, it behaves just like a normal UDP tunnel, and you can just make use of the other features (such as encryption, anti-replay, or connection stalization).
+
+### Simulated TCP with Real-time/Out-of-Order Delivery
+In FakeTCP header mode,udp2raw simulates 3-way handshake while establishing a connection,simulates seq and ack_seq while data transferring. It also simulates a few TCP options such as: `MSS`, `sackOk`, `TS`, `TS_ack`, `wscale`. Firewalls will regard FakeTCP as a TCP connection, but its essentially UDP: it supports real-time/out-of-order delivery(just as normal UDP does), no congestion control or re-transmission. So there wont be any TCP over TCP problem when using OpenVPN.
+
+### Encryption, Anti-Replay
+* Encrypt your traffic with AES-128-CBC.
+* Protect data integrity by HMAC-SHA1 (or weaker MD5/CRC32).
+* Defense replay attack with an anti-replay window.
+
+### 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.
+
+For example, if you use udp2raw + OpenVPN, OpenVPN won't lose connection after any reconnect, **even if network cable is re-plugged or WiFi access point is changed**.
+
+### Other Features
+* **Multiplexing** One client can handle multiple UDP connections, all of which share the same raw connection.
+
+* **Multiple Clients** One server can have multiple clients.
+
+* **NAT Support** All of the 3 modes work in NAT environments.
+
+* **OpenVZ Support** Tested on BandwagonHost VPS.
+
+* **Easy to Build** No dependencies.To cross-compile udp2raw,all you need to do is just to download a toolchain,modify makefile to point at the toolchain,run `make cross` then everything is done.(Note:Pre-compiled binaries for Desktop,RaspberryPi,Android,some Openwrt Routers are already included in [Releases](https://github.com/wangyu-/udp2raw-tunnel/releases))
 
 ### Keywords
 `Bypass UDP QoS` `Bypass UDP Blocking` `Bypass OpenVPN TCP over TCP problem` `OpenVPN over ICMP` `UDP to ICMP tunnel` `UDP to TCP tunnel` `UDP over ICMP` `UDP over TCP`