Sijie.Sun
6cdea38284
support compress for rpc and tun data ( #473 )
...
* support compress for rpc and tun data
* add compression layer to easytier-web
2024-11-16 11:23:18 +08:00
Sijie.Sun
e948dbfcc1
Feat/web (Patchset 4) ( #460 )
...
support basic functions in frontend
1. create/del network
2. inspect network running status
2024-11-08 23:33:17 +08:00
Sijie.Sun
8aca5851f2
feat/web: Patchset 3 ( #455 )
...
https://apifox.com/apidoc/shared-ceda7a60-e817-4ea8-827b-de4e874dc45e
implement all backend API
2024-11-02 15:13:19 +08:00
Sijie.Sun
d87a440c04
fix 202 bugs ( #418 )
...
* fix peer rpc stop working because of mpsc tunnel close unexpectedly
* fix gui:
1. allow set network prefix for virtual ipv4
2. fix android crash
3. fix subnet proxy cannot be set on android
2024-10-13 11:59:16 +08:00
Sijie.Sun
d2291628e0
mpsc tunnel may be stuck by slow tcp stream, should not panic for this ( #406 )
...
* mpsc tunnel may be stuck by slow tcp stream, should not panic for this
* disallow node connect to self
2024-10-11 00:12:14 +08:00
Sijie.Sun
63821e56bc
fix udp buffer size, avoid packet loss ( #399 )
...
also bump version to 2.0.2
2024-10-08 22:01:15 +08:00
Sijie.Sun
37ceb77bf6
nat4-nat4 punch ( #388 )
...
this patch optimize the udp hole punch logic:
1. allow start punch hole before stun test complete.
2. add lock to symmetric punch, avoid conflict between concurrent hole punching task.
3. support punching hole for predictable nat4-nat4.
4. make backoff of retry reasonable
2024-10-06 22:49:18 +08:00
sijie.sun
c7895963e4
rollback some parameters
2024-09-29 23:17:46 +08:00
sijie.sun
d0a3a40a0f
fix bugs
...
add timeout for wss try_accept
public server should show stats
use default values for flags
bump version to 2.0.0
2024-09-29 17:49:14 +08:00
sijie.sun
ff5ee8a05e
support forward foreign network packet between peers
2024-09-29 10:31:29 +08:00
sijie.sun
2496cf51c3
fix connection loss when traffic is huge
2024-09-26 23:49:01 +08:00
sijie.sun
7b4a01e7fb
fix ring buffer stuck when using multi thread runtime
2024-09-26 14:34:33 +08:00
sijie.sun
06afd221d5
make ping more smart
2024-09-21 18:00:52 +08:00
sijie.sun
6d7edcd486
fix connect failed after setup one of sockets fails
2024-09-18 23:15:08 +08:00
Sijie.Sun
1b03223537
use customized rpc implementation, remove Tarpc & Tonic ( #348 )
...
This patch removes Tarpc & Tonic GRPC and implements a customized rpc framework, which can be used by peer rpc and cli interface.
web config server can also use this rpc framework.
moreover, rewrite the public server logic, use ospf route to implement public server based networking. this make public server mesh possible.
2024-09-18 21:55:28 +08:00
Sijie.Sun
1609c97574
fix panic when wireguard tunnel encounter udp recv error ( #299 )
2024-09-02 09:37:34 +08:00
Sijie.Sun
2058dbc470
fix wg client hang after some time ( #297 )
...
wg portal doesn't know client disconnect causing msg overstocked in queue, make
entire peer packet process pipeline hang.
2024-08-31 12:44:12 +08:00
sijie.sun
b4fbcd8d80
use random ip from dns record instead of only first one
2024-08-04 23:42:33 +08:00
Sijie.Sun
7a2bc52ae0
fix network to network without masquerade ( #207 )
2024-08-01 01:27:23 +08:00
Sijie.Sun
34f832bbad
make tun dependency optional ( #142 )
...
* remove log crates
* remove udp/raw of smoltcp
* make tun as optional dependancy, compile for freebsd works
2024-06-11 09:09:32 +08:00
Sijie.Sun
8aa57ebc22
support no tun mode ( #141 )
2024-06-10 10:27:24 +08:00
Sijie.Sun
fede35cca4
correctly handle ip fragment for udp/icmp proxy ( #137 )
...
icmp/udp proxy do not rely on kernel net stack, but currently not handle ip fragmentation correctly.
this patch add ip resembler to merge fragmented ip packet for udp/icmp proxy
2024-06-09 22:59:50 +08:00
Sijie.Sun
f9e6264f31
fix upx and udp conn counter ( #131 )
...
* fix upx in workflow
* fix udp conn counter
2024-06-04 18:50:30 +08:00
Sijie.Sun
c1b725e64e
websocket support bind addr ( #129 )
2024-06-02 21:48:16 +08:00
Sijie.Sun
abf9d23d52
improve hole punching and stun test ( #124 )
...
* implement new stun test algorithm, do test faster and provide more info
* support punching for symmetric
2024-06-02 07:20:57 +08:00
Sijie.Sun
f64f58e2ae
support exit node ( #121 )
...
support exit node, proxy all traffic via one of node
NOTE: this patch has not implemented automatically route management.
2024-05-18 20:32:42 +08:00
Sijie.Sun
6efbb5cb3d
minor fixed ( #120 )
...
1. fix mtu, always set by ourselves and use smaller value
2. wireguard connector should return tunnel after receive packet
2024-05-18 18:04:06 +08:00
Sijie.Sun
bad6a5946a
fix run with config, update readme ( #118 )
2024-05-17 22:00:11 +08:00
Sijie.Sun
f665de9b18
allow peer rpc split packet, so tunnel mtu can be small ( #116 )
2024-05-16 08:18:35 +08:00
Sijie.Sun
d5bf041834
some minor fix ( #113 )
...
1. fix ospf route panic if no ipv4 assigned.
2. should refetch global peer latency map every 60s
3. remove regex dep because it's too large and unnecessary.
2024-05-15 09:21:20 +08:00
sijie.sun
29365c39ed
use latency from peer center for route
2024-05-13 21:18:34 +08:00
sijie.sun
51aa23b635
add ttl for packet
2024-05-13 20:30:25 +08:00
sijie.sun
1b1d76de99
introduce websocket tunnel
2024-05-11 23:29:55 +08:00
m1m1sha
0af32526f7
🐞 fix: 修复nightly错误 ( https://github.com/KKRainbow/EasyTier/issues/74 ) ( #75 )
...
* 🐞 fix: 修复 1.80 nightly 编译错误错误
TODO: need fork boringtun and publish to crates.io before publishing easytier
issues: https://github.com/KKRainbow/EasyTier/issues/74
2024-05-05 11:46:10 +08:00
sijie.sun
873851e6d0
mips
2024-05-03 17:09:46 +08:00
sijie.sun
577cef131b
fix wireguard deadlock
2024-04-28 22:24:24 +08:00
sijie.sun
b3717d974b
ipv6 set v6 only when bind
2024-04-28 22:24:24 +08:00
sijie.sun
d8033a77b9
support use ipv6
2024-04-28 22:24:24 +08:00
sijie.sun
3a965efab2
allow tunnel listener alloc port after listen
2024-04-28 22:24:24 +08:00
sijie.sun
a3e85a1270
tunnel support ipv6
2024-04-28 22:24:24 +08:00
Sijie.Sun
66b3241be7
fix handshake dead lock, clean old code ( #61 )
...
* fix handshake dead lock
* remove old code
2024-04-27 16:27:42 +08:00
Sijie.Sun
fcc73159b3
support encryption ( #60 )
2024-04-27 13:44:59 +08:00
Sijie.Sun
69651ae3fd
Perf improve ( #59 )
...
* improve perf
* fix forward
2024-04-26 23:02:07 +08:00
Sijie.Sun
096af6aa45
fix tun device on mac ( #58 )
2024-04-26 21:19:47 +08:00
Sijie.Sun
57c9f11371
adapt tun device to zerocopy ( #57 )
2024-04-25 23:25:37 +08:00
Sijie.Sun
3467890270
zero copy tunnel ( #55 )
...
make tunnel zero copy, for better performance. remove most of the locks in io path.
introduce quic tunnel
prepare for encryption
2024-04-24 23:12:46 +08:00