Commit graph

489 commits

Author SHA1 Message Date
gVisor bot
c2af8cebf7 fix: smux should show its support udp and uot 2023-04-23 21:50:42 +08:00
gVisor bot
45b3f49942 feat: add statistic and only-tcp options for smux 2023-04-23 20:55:42 +08:00
gVisor bot
bbfdbae3a6 feat: add proxy and sing-based listener support sing-mux 2023-04-23 19:57:54 +08:00
gVisor bot
190014aa1d chore: using sync/atomic replace uber/atomic 2023-04-22 15:37:57 +08:00
gVisor bot
d8ee1245f7 fix: vless udp not working 2023-04-20 09:38:08 +08:00
gVisor bot
7867b7ea2d chore: using new chan based deadline reader 2023-04-17 19:29:07 +08:00
gVisor bot
3267da1292 fix: wireguard reconnect failed 2023-04-13 17:01:01 +08:00
gVisor bot
316522de53 fix: vless tcp not working 2023-04-13 11:10:35 +08:00
gVisor bot
321ad945ba chore: udp always direct pass ip to remote without domain 2023-04-12 21:49:22 +08:00
gVisor bot
443583a116 chore: close all connections after proxySet initial 2023-04-12 18:50:51 +08:00
gVisor bot
4733356a76 fix: direct outbound not ensure ip was resolved 2023-04-12 12:57:59 +08:00
gVisor bot
d4b6acb212 fix: proxyDialer panic when domain name was not resolved 2023-04-12 12:49:53 +08:00
gVisor bot
e5158977b1 feat: proxy-provider can set dialer-proxy too
it will apply `dialer-proxy` to all proxy in this provider
2023-04-12 10:39:24 +08:00
gVisor bot
964a13ee55 chore: proxyDialer can add inner conn to statistic 2023-04-11 21:42:16 +08:00
gVisor bot
e604ec6bf8 chore: wireguard dns can work with domain-based server 2023-04-11 14:10:57 +08:00
gVisor bot
1151fc4e2f chore: proxyDialer can limited support old dial function 2023-04-11 12:51:24 +08:00
gVisor bot
72447a529d feat: wireguard add remote-dns-resolve and dns settings 2023-04-11 10:29:55 +08:00
gVisor bot
303690fd82 feat: support dialer-proxy config for all outbound 2023-04-10 11:20:28 +08:00
gVisor bot
d2c909dc57 chore: clarify the wireguard logging 2023-04-10 10:13:36 +08:00
gVisor bot
7536f23c1d feat: wireguard add dialer-proxy config to support chain forwarding 2023-04-10 08:54:10 +08:00
gVisor bot
c305ea2b7a chore: Add read deadline implementation 2023-04-09 22:58:05 +08:00
gVisor bot
74d96c67c2 chore: fix build 2023-04-09 19:17:44 +08:00
gVisor bot
f821549558 feat: urltest can be select by user 2023-04-08 02:04:16 +08:00
gVisor bot
2c83e7297c feat: Add multi-peer support for wireguard outbound 2023-04-03 16:14:07 +08:00
gVisor bot
ae5fafa885 chore: make all net.Conn wrapper can pass through N.ExtendedConn 2023-04-02 22:24:46 +08:00
gVisor bot
d7cd598e53 chore: sync sing-wireguard's update 2023-04-02 17:29:30 +08:00
gVisor bot
3980899f3b fix: firstWriteCallBackConn can pass N.ExtendedConn too 2023-04-01 20:56:49 +08:00
gVisor bot
72cac9b0de fix: inner http use host of address 2023-03-29 20:50:46 +08:00
gVisor bot
832ebb4050 Update UoT protocol 2023-03-17 13:23:45 +08:00
gVisor bot
2be8768bc7 fix: tuic udp native mode can't relay packetSize>1200 2023-03-16 21:09:44 +08:00
gVisor bot
4b6bbef697 Update UoT protocol 2023-03-15 14:46:35 +08:00
gVisor bot
3001df622f chore: better uuid using 2023-03-15 10:10:03 +08:00
gVisor bot
dea929bdae fix: let quic-go works on outbound's packetConn 2023-03-15 09:56:00 +08:00
gVisor bot
3c527f8535 fix: Adjust the timing of subscription information acquisition 2023-03-15 09:05:16 +08:00
gVisor bot
8b46b13595 fix: optimize health check 2023-03-14 20:10:52 +08:00
gVisor bot
dddad46ae2 chore: cleanup code 2023-03-14 17:45:37 +08:00
gVisor bot
f8c1d4d4c7 chore: better restls 2023-03-14 16:50:27 +08:00
gVisor bot
492a334eed Support Restls-V1 in Clash.Meta (#441)
* feat: impl restls

* fix: don't break shadowtls' working

* chores: correct restls-client-go version

* feat: bump restls-client-go version

* fix: consistent naming `client-fingerprint`

* docs: update example config

* chore: adjust client-fingerprint's snippet

---------

Co-authored-by: wwqgtxx <wwqgtxx@gmail.com>
Co-authored-by: Larvan2 <78135608+Larvan2@users.noreply.github.com>
2023-03-14 13:33:24 +08:00
gVisor bot
d0a530088b chore: Cleanup REALITY code 2023-03-11 12:23:27 +08:00
gVisor bot
3d83eeba87 fix: ensure wireguard inner use dialer with DefaultResolver 2023-03-10 17:00:39 +08:00
gVisor bot
f17b0b09d1 fix: add xtls-rprx-vision server version warning to user 2023-03-10 12:54:43 +08:00
gVisor bot
5ea4f0ed0b fix: strategyRoundRobin not begin with zero 2023-03-10 12:47:01 +08:00
gVisor bot
89ab6271d8 fix: REALITY with gRPC transport 2023-03-10 10:01:05 +08:00
gVisor bot
e15f92a1b6 fix: unmap 4in6 address in dialer and wireguard 2023-03-10 00:25:22 +08:00
gVisor bot
b820804343 fix: load-balance's touch not effected 2023-03-09 11:09:36 +08:00
gVisor bot
4134f7a5bd feat: REALITY use proxy servername 2023-03-08 20:28:12 +08:00
gVisor bot
68a2b8a9d2 feat: Support REALITY protocol 2023-03-08 17:18:46 +08:00
gVisor bot
a2f7fb4a0b chore: wireguard using internal dialer 2023-03-07 09:30:51 +08:00
gVisor bot
c6ec5c683b chore: Generate UUID from fastrand 2023-03-05 11:00:14 +08:00
gVisor bot
c1ca3d0d6f chore: Better REJECT conn 2023-03-04 18:33:05 +08:00
gVisor bot
830f5a02ef fix: loadbalance panic 2023-03-01 14:04:42 +08:00
gVisor bot
e45b8dc404 chore: add early conn interface to decrease unneeded write 2023-02-27 00:26:49 +08:00
gVisor bot
5e4dd2ab01 fix: reject's dial warning 2023-02-26 11:11:54 +08:00
gVisor bot
aaf1ce67d1 feat: Support VLESS XTLS Vision (#406) 2023-02-25 14:01:59 +08:00
gVisor bot
262ce7325c fix: tuic missing routing mark 2023-02-24 14:02:20 +08:00
gVisor bot
af6f85c657 chore: support TFO for outbounds 2023-02-24 13:53:44 +08:00
gVisor bot
a132fe585b chore: use early conn to support real ws 0-rtt 2023-02-24 09:54:54 +08:00
gVisor bot
6f46b822d4 chore: change internal tcp traffic type 2023-02-23 20:26:25 +08:00
gVisor bot
a3a668c429 chore: code cleanup 2023-02-22 19:43:32 +08:00
gVisor bot
a694155b20 chore: using sing-shadowtls to support shadowtls v1/2/3 2023-02-21 21:58:37 +08:00
gVisor bot
04e6177a01 feat: add sni field for tuic 2023-02-19 16:20:30 +08:00
gVisor bot
789235df49 fix: RoundRobin strategy of load balance when called multiple times (#390) 2023-02-17 16:31:00 +08:00
gVisor bot
0b2d891a37 chore: update tfo-go for golang1.20 2023-02-08 13:10:44 +08:00
gVisor bot
57279cd971 chore: move global-utls-client snippets to components\tls 2023-02-07 17:24:14 +08:00
gVisor bot
5cab8afec7 feat: add global-client-fingerprint.
* Available: "chrome","firefox","safari","ios","random","none".
* global-client-fingerprint will NOT overwrite the proxy's client-fingerprint setting when "client-fingerprint: none".
2023-02-07 01:26:56 +08:00
gVisor bot
5169fe33bf feat: Add utls for modifying client's fingerprint.
Currently only support TLS transport in TCP/GRPC/WS/HTTP for VLESS/Vmess and trojan-grpc.
2023-02-01 22:36:05 +08:00
gVisor bot
9241320f38 fix: Handle error earlier in DialContextWithDialer.
chore: Fix typo.
2023-01-31 18:05:46 +08:00
gVisor bot
8277c1b70e fix: get tlsconfig err not handle, return nil pointer 2023-01-31 15:26:18 +08:00
gVisor bot
5e6fff292e adjust: VLESS enable XUDP by default 2023-01-28 14:58:52 +08:00
gVisor bot
74d4ffe979 chore: restful api display xudp for VLESS and VMess 2023-01-28 00:07:20 +08:00
gVisor bot
dc0f68ffd4 Chore: Change default latency test url to HTTPS. 2023-01-27 13:41:23 +08:00
gVisor bot
3ff904d20e Chore: Decrease the default MaxUdpRelayPacketSize to 1252 to avoid the relay UDP exceeding the size of the QUIC's datagram.
ClientMaxOpenStreams now follows the config.yaml option.
2023-01-24 21:48:31 +08:00
gVisor bot
9c3be97d47 make ConvertsV2Ray more robust (#349)
* make ConvertsV2Ray more  robust
* add log
* fix
2023-01-24 16:34:52 +08:00
gVisor bot
fa54a8206a chore: better parseAddr 2023-01-17 15:41:51 +08:00
gVisor bot
d926d6106f chore: code cleanup 2023-01-16 12:11:34 +08:00
gVisor bot
58ee2ae7f5 chore: decrease direct depend on the sing package 2023-01-16 10:50:31 +08:00
gVisor bot
7df6e79cf0 refactor: Implement extended IO 2023-01-16 09:42:03 +08:00
gVisor bot
8ec6c87a2b refactor: replace experimental.fingerprints with custom-certificates and Change the fingerprint verification logic to SSL pinning 2023-01-14 21:08:06 +08:00
gVisor bot
e4916d52d4 Fix: TLS defaults to true for h2/grpc networks 2023-01-14 16:20:58 +08:00
gVisor bot
419982688f fix: skip-cert-verify is true by default (#333)
* fix: skip-cert-verify is true by default

* fix: format

* fix: typo

Co-authored-by: 3andero <3andero@github.com>
Co-authored-by: Hellojack <106379370+H1JK@users.noreply.github.com>
2023-01-13 09:55:01 +08:00
gVisor bot
0467b2a68d feat: VLESS support packet encodings (#334)
* adjust: Do not use XTLS on H2 connections

* feat: VLESS support XUDP fullcone NAT

* fix: VLESS with PacketAddr does not work

* fix: VLESS XUDP crash
2023-01-11 22:01:15 +08:00
gVisor bot
bbe0932e19 chore: shadowtls don't depend on trojan's code 2023-01-11 10:19:30 +08:00
gVisor bot
bb84e427a0 feat: Support ShadowTLS v2 as Shadowsocks plugin (#330) 2023-01-11 00:13:48 +08:00
gVisor bot
f7d2e12ed5 chore: clean code 2023-01-11 00:01:28 +08:00
gVisor bot
6cd66b6372 fix: vmess udp 2023-01-10 13:21:32 +08:00
gVisor bot
f28a57b665 fix: vless RoutingMark bind 2023-01-09 23:15:17 +08:00
gVisor bot
7bd6c1c874 chore: Fix fmt in #321
Replace all double spaces to tabs due to Go fmt proposal.
2023-01-07 12:24:28 +08:00
gVisor bot
87d9698ac3 proxy-groups support exclude node by node type 2023-01-03 21:47:57 +08:00
gVisor bot
f9ad33a874 proxy-provider support exclude node by node type 2023-01-03 21:27:07 +08:00
gVisor bot
a0d15df880 fix: trying to let hysteria's port hopping work 2022-12-23 11:00:55 +08:00
gVisor bot
2e02b5c389 fix: some safeConnClose forget using original 2022-12-22 12:31:45 +08:00
gVisor bot
57cd902214 chore: cleanup code 2022-12-22 09:53:25 +08:00
gVisor bot
861357234f chore: relay support tuic 2022-12-20 00:11:02 +08:00
gVisor bot
ec0136af1b chore: rebuild relay 2022-12-19 21:34:07 +08:00
gVisor bot
f09afc8d8a chore: support relay native udp when using ss and ssr protocol 2022-12-19 17:02:04 +08:00
gVisor bot
78a2dbd9d8 chore: better safeConnClose 2022-12-16 22:16:02 +08:00
gVisor bot
50550d3997 chore: wireguard's reserved support base64 input 2022-12-13 20:40:07 +08:00
gVisor bot
317fb07e25 fix: check conn is nil in safeConnClose 2022-12-13 18:09:19 +08:00
gVisor bot
9978adc996 fix: safeConnClose not working 2022-12-13 13:20:40 +08:00
gVisor bot
52924804ef fix: fix bindIfaceToListenConfig() in windows force bind to an ipv4 address 2022-12-13 11:18:32 +08:00
gVisor bot
bd7dd813c0 chore: add persistent-keepalive for wireguard 2022-12-13 08:35:01 +08:00
gVisor bot
1c86a0f3b7 fix: fix wireguard outbound not work with ipv6 server 2022-12-13 08:23:17 +08:00
gVisor bot
122a151ec6 fix: fix wireguard outbound not work with the sniffer 2022-12-11 23:53:53 +08:00
gVisor bot
524b82734a fix: add an unmap before is6 2022-12-11 15:48:37 +08:00
gVisor bot
3d79bf1072 fix: hysteria ipv6 outbound 2022-12-11 13:41:44 +08:00
gVisor bot
0e654753c2 fix: issue #292 2022-12-11 09:25:46 +08:00
gVisor bot
a6e88229d6 fix: let doh/dot server follow hosts and can remotely resolve itself ip 2022-12-07 20:01:44 +08:00
gVisor bot
46147944f3 chore: all listeners support specialProxy 2022-12-05 17:53:54 +08:00
gVisor bot
6b0057a413 chore: update dependencies 2022-12-05 11:03:28 +08:00
gVisor bot
6885d8593c chore: listeners support shadowsocks/vmess 2022-12-05 10:12:53 +08:00
gVisor bot
37703c5e8f chore: rebuild add adapter/inbound.Addition to simply Listener.New apis 2022-12-05 00:20:50 +08:00
gVisor bot
75af900fc5 fix: correct C.Metadata 2022-12-04 22:08:20 +08:00
gVisor bot
3b1b077f80 chore: rebuild InboundListener 2022-12-04 21:53:13 +08:00
gVisor bot
9c9ff4dc5e chore: change C.PacketAdapter from a struct to an interface 2022-12-04 14:37:52 +08:00
gVisor bot
ae17141588 feat: add linsters 2022-12-04 13:37:14 +08:00
gVisor bot
3ed496ac65 fix: remove cyclic dependent to make tuic's Finalizer work 2022-12-02 16:56:17 +08:00
gVisor bot
4f1c2dfbaa chore: restful api display fast-open for tuic and hysteria 2022-11-29 00:56:27 +08:00
gVisor bot
c24bb51cc1 Merge branch 'dev' of https://github.com/Dreamacro/clash into Alpha 2022-11-28 20:04:56 +08:00
gVisor bot
b646df14c2 fix: structure decode first do strict match 2022-11-28 19:11:55 +08:00
gVisor bot
dbe9c4ba47 chore: add tuic-server listener 2022-11-28 17:09:25 +08:00
gVisor bot
4171855c77 chore: support KeyReplacer in Structure Decoder 2022-11-27 13:44:38 +08:00
gVisor bot
262797c5a4 fix: hop-interval of tysteria is optional too 2022-11-27 13:07:27 +08:00
gVisor bot
c1189015ad fix: ports of hysteria is optional 2022-11-27 12:52:14 +08:00
gVisor bot
295cc3af92 add support for hysteria udp port hopping (#269)
* add support for hysteria udp port hopping

* add ports field for hysteria

* change method for udp connection

Co-authored-by: geoleonsh <geoleonsh@live.com>
2022-11-27 11:09:56 +08:00
gVisor bot
81f5305705 chore: allow to set max-open-streams for tuic 2022-11-27 09:38:20 +08:00
gVisor bot
d3bfbe06dc chore: rebuild tuic client's code 2022-11-26 23:53:59 +08:00
gVisor bot
3afe8226e3 chore: clear config field name (be compatible with old field name) 2022-11-26 21:35:47 +08:00
gVisor bot
c3d449af71 chore: tuic add fast-open support 2022-11-26 21:14:56 +08:00
gVisor bot
7fde98c9df feat: support fast_open for hysteria, and unified parameter naming 2022-11-26 19:37:32 +08:00
gVisor bot
ee13bbd9cf Fix: drop UDP packet which mismatched destination for VMess (#2410)
Co-authored-by: SUN Sizhe <sunsizhe@cmi.chinamobile.com>
2022-11-26 11:27:24 +08:00
gVisor bot
5e6b33327b chore: tuic use a udp pool too and auto close when outbound is garbage collected 2022-11-25 22:42:28 +08:00
gVisor bot
fd80dbfdf3 chroe: wrong variable 2022-11-25 20:53:08 +08:00
gVisor bot
69b223041c chore: tuic use a simple client pool 2022-11-25 20:14:05 +08:00
gVisor bot
10e194a238 fix: tuic set MaxOpenStreams 2022-11-25 18:32:30 +08:00
gVisor bot
947f029a4a chore: split tuic's tcp and udp client 2022-11-25 17:15:45 +08:00
gVisor bot
71c8ef54e6 chore: tuic add max_udp_relay_packet_size 2022-11-25 12:43:23 +08:00
gVisor bot
25540e6c96 chore: better tuic conn close 2022-11-25 11:32:52 +08:00
gVisor bot
b2939ad863 fix: prefer ipv6 not working 2022-11-25 11:12:22 +08:00
gVisor bot
d9157e77db fix: tuic typo 2022-11-25 10:45:06 +08:00
gVisor bot
65b60a3468 chore: tuic add cubic,new_reno,bbr congestion_controller 2022-11-25 10:33:37 +08:00
gVisor bot
0f4a0a7275 chore: add tuic outbound
close #133
2022-11-25 08:08:14 +08:00
gVisor bot
538743555e fix: better wireguard error handle 2022-11-18 19:40:39 +08:00
gVisor bot
e9333f4586 fix: wireguard handle conn is nil 2022-11-18 19:32:12 +08:00
gVisor bot
24cfa48eef chore: better tfo inbound code 2022-11-16 10:43:16 +08:00
gVisor bot
722e8a6c27 Merge branch 'dev' of https://github.com/Dreamacro/clash into Alpha 2022-11-12 20:43:48 +08:00
gVisor bot
71ab8298a2 chore: always pass context when resolve dns 2022-11-12 13:18:36 +08:00
gVisor bot
a6e05e040b chore: support IN-PORT rule 2022-11-11 23:36:06 +08:00
gVisor bot
d5d5dc2303 chore: remove AddrType on Metadata 2022-11-11 09:19:50 +08:00
gVisor bot
6737f32ea6 fix: small-case import name 2022-11-09 19:42:56 +08:00
gVisor bot
f33ad58ff5 fix: wireguard's dns resolve 2022-11-09 19:35:03 +08:00