Sijie.Sun
40b5fe9a54
support quic proxy ( #993 )
...
QUIC proxy works like kcp proxy, it can proxy TCP streams and transfer data with QUIC.
QUIC has better congestion algorithm (BBR) for network with both high loss rate and high bandwidth.
QUIC proxy can be enabled by passing `--enable-quic-proxy` to easytier in the client side. The proxy status can be viewed by `easytier-cli proxy`.
2025-06-15 19:43:45 +08:00
Sijie.Sun
25dcdc652a
support mapping subnet proxy ( #978 )
...
- **support mapping subproxy network cidr**
- **add command line option for proxy network mapping**
- **fix Instance leak in tests.
2025-06-14 11:42:45 +08:00
Sijie.Sun
f890812577
kcp connect retry ( #952 )
2025-06-07 12:24:11 +08:00
Sijie.Sun
28fe6257be
magic dns ( #813 )
...
This patch implements:
1. A dns server that handles .et.net. zone in local and forward all other queries to system dns server.
2. A dns server instance which is a singleton in one machine, using one specific tcp port to be exclusive with each other. this instance is responsible for config system dns and run the dns server to handle dns queries.
3. A dns client instance that all easytier instance will run one, this instance will try to connect to dns server instance, and update the dns record in the dns server instance.
this pr only implements the system config for windows. linux & mac will do later.
2025-05-16 09:24:24 +08:00
Sijie.Sun
72be46e8fa
allow tcp port forward use kcp ( #838 )
2025-05-11 00:48:34 +08:00
Sijie.Sun
c142db301a
port forward ( #736 )
...
* support tcp port forward
* support udp port forward
* command line option for port forward
2025-04-01 09:59:53 +08:00
sijie.sun
389ea709ce
fix smoltcp not wakeup closed socket
2025-03-15 00:16:12 +08:00
sijie.sun
2050ed78d0
remove some dep
2025-02-21 11:51:13 +08:00
sijie.sun
e48e62cac0
fix tcp proxy not close properly
2025-02-09 22:01:09 +08:00
sijie.sun
53c449b9fb
fix net2net kcp proxy
2025-02-08 23:11:10 +08:00
sijie.sun
51e0fac72c
improve user experience
...
1. add config generator to easytier-web
2. add command to show tcp/kcp proxy entries
2025-02-07 23:59:36 +08:00
sijie.sun
e833c2a28b
improve experience of subnet/kcp proxy
...
1. add self to windows firewall on windows
2. android always use smoltcp
2025-02-06 16:54:49 +08:00
Sijie.Sun
8b89a037e8
fix tcp incoming failure when kcp proxy is enabled ( #601 )
2025-02-06 09:08:34 +08:00
Sijie.Sun
08546925cc
fix tests ( #588 )
...
fix proxy_three_node_disconnect_test and hole_punching_symmetric_only_random
2025-01-27 15:17:47 +08:00
Sijie.Sun
2a5d5ea4df
make kcp proxy compitible with old version ( #585 )
...
* fix kcp not work with smoltcp
* check if dst kcp input is enabled
2025-01-26 16:22:10 +08:00
Sijie.Sun
55a39491cb
feat/kcp ( #580 )
...
* support proxy tcp stream with kcp to improve experience of tcp over udp
* update rust version
* make subnet proxy route metrics lower in windows.
2025-01-26 00:41:15 +08:00
Sijie.Sun
d2ec60e108
batch recv for udp proxy ( #552 )
2025-01-07 23:52:18 +08:00
fanyang
70708b34cc
Fix app not displayed when click on the dock icon under macOS ( #424 )
2024-10-14 21:33:48 +08:00
Sijie.Sun
7ab8cad1af
allow use ipv4 address in any cidr ( #404 )
2024-10-10 10:28:48 +08:00
sijie.sun
c7895963e4
rollback some parameters
2024-09-29 23:17:46 +08:00
sijie.sun
2496cf51c3
fix connection loss when traffic is huge
2024-09-26 23:49:01 +08:00
Sijie.Sun
096ed39d23
fix udp proxy disconn unexpectedly ( #321 )
2024-09-11 23:46:26 +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
ad4cbbea6d
fix socks5 access local virtual ip
2024-08-17 23:52:05 +08:00
sijie.sun
db660ee3b1
add test for socks5 server
2024-08-17 21:39:19 +08:00
sijie.sun
ae54a872ce
support socks5 proxy
...
usage: --socks5 12345
create an socks5 server on port 12345, can be used by socks5 client to access
virtual network.
2024-08-17 13:17:38 +08:00
sijie.sun
51165c54f5
smoltcp listener should bind multiple times
...
if smoltcp bind only once on tcp socket, it can only accept exactly
one syn packet in one round. other syn packets will be dropped and
client will receive a RST packet.
2024-08-13 23:01:34 +08:00
Sijie.Sun
7a2bc52ae0
fix network to network without masquerade ( #207 )
2024-08-01 01:27:23 +08:00
Sijie.Sun
537f6ecf78
fix smoltcp tcp proxy ( #157 )
...
1. allow smoltcp proxy with dhcp ip
2. fix smoltcp not work without no tun.
2024-07-07 22:08:50 +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
b43c078152
fix udp proxy not work when being exit node ( #133 )
2024-06-05 08:08:55 +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
7532a7c1b2
command line improvement ( #115 )
...
make -l easy to use:
-l wg wss
-l wg:12345
-l 12345
make -r use random port
2024-05-16 20:16:09 +08:00
Sijie.Sun
b1153378c9
fix icmp proxy on MacOS ( #101 )
...
1. MacOS doesn't fill length field in ip header when recving from raw
socket
2. Fix udp & icmp subnet proxy not work when no p2p connection.
2024-05-10 21:40:29 +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
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
Sijie.Sun
4eb7efe5fc
use workspace, prepare for config server and gui ( #48 )
2024-04-04 10:33:53 +08:00