Commit Graph

411 Commits

Author SHA1 Message Date
gVisor bot
300b73da50 Fix: domain trie search 2022-01-26 22:28:13 +08:00
gVisor bot
09ffc53d95 [chore] Replace Country.mmdb with GeoIP.dat 2022-01-26 12:01:14 +08:00
gVisor bot
fd5852ce1c Merge from remote branch 2022-01-05 01:46:37 +08:00
gVisor bot
4208d48a9d Merge remote-tracking branch 'clash/dev' into Meta
# Conflicts:
#	.github/workflows/docker.yml
#	dns/server.go
#	go.mod
#	go.sum
#	hub/executor/executor.go
#	test/go.mod
#	test/go.sum
2022-01-04 17:31:07 +08:00
gVisor bot
85f1b22340 Fix: multiple port string parsing overflow (#1868)
Ports in TCP and UDP should be parsed as an unsigned integer,
otherwise ports > 32767 get truncated to 32767. As this is
the case with Metadata.UDPAddr(), this fundamentally breaks
UDP connections where demand for high port numbers is high.

This commit fixes all known cases where ParseInt is used for ports,
and has been verified to fix Discord voice connections on port
50001~50004.

Fixes: d40e5e4fe6

Co-authored-by: Hamster Tian <haotia@gmail.com>
2022-01-02 01:09:29 +08:00
gVisor bot
6fa3953335 Chore: remove forward compatible code 2022-01-02 00:48:57 +08:00
gVisor bot
a7d32607ce Merge from remote branch 2021-12-09 21:38:24 +08:00
gVisor bot
590565f5c1 Feature:Supported Rule-Set 2021-12-02 22:56:17 +08:00
gVisor bot
c5257c5190 [style] 2021-12-01 16:51:31 +08:00
gVisor bot
c7aaec5c78 Revert "[test] rule providers"
This reverts commit 078389f4f6.
2021-11-26 00:57:41 +08:00
gVisor bot
e52c111ae0 [test] rule providers 2021-11-25 23:14:31 +08:00
gVisor bot
d5558aad2c Fix: fakeip pool cycle used 2021-11-23 22:01:49 +08:00
gVisor bot
c32c29b203 fix python310 2021-11-21 15:09:22 +08:00
gVisor bot
e69c54cfcd [test] 2021-11-17 16:03:47 +08:00
gVisor bot
24cadc4b3e Merge from remote branch 2021-11-11 00:54:43 +08:00
gVisor bot
d6454f36bf Fix: bind iface should throw control error 2021-11-10 22:19:11 +08:00
gVisor bot
1e98d26dbb Merge from remote branch 2021-11-09 21:11:38 +08:00
gVisor bot
5c51a83fa5 Feature: resolve ip with proxy adapter 2021-11-09 19:44:16 +08:00
gVisor bot
f0e12a1285 Fix: windows arm7 build 2021-11-08 21:24:39 +08:00
gVisor bot
fa244e6cfd Feature: mark on socket (#1705) 2021-11-08 16:59:48 +08:00
gVisor bot
af069e3340 Fix: codeql alerts 2021-11-08 00:32:21 +08:00
gVisor bot
2762c33ad3 Feature: dial different NIC for all proxies (#1714) 2021-11-07 16:48:51 +08:00
gVisor bot
4bc9011b57 Chore: move "geodata" to package "component" 2021-11-02 18:23:01 +08:00
gVisor bot
4dcb8294ca Chore: move "geodata" to package "component" 2021-10-29 00:52:44 +08:00
gVisor bot
f7d136f56c Merge from remote branch 2021-10-28 11:36:11 +08:00
gVisor bot
0387c93c56 Style: format code 2021-10-28 00:06:55 +08:00
gVisor bot
258f837da3 Chore: script built 2021-10-27 23:10:11 +08:00
gVisor bot
aba096784d Merge remote branch 2021-10-21 22:37:30 +08:00
gVisor bot
ef87959c2f Chore: script built 2021-10-21 20:22:23 +08:00
gVisor bot
54c22a2fce Feature: add mode script 2021-10-15 14:11:14 +08:00
gVisor bot
2eaf46e6d5 Change: use interface HardwareAddr for dhcp discovery 2021-10-14 22:54:43 +08:00
gVisor bot
d7e31932c7 Feature: persistence fakeip (#1662) 2021-10-11 20:48:58 +08:00
gVisor bot
653f2de2c0 Style: use gofumpt for fmt 2021-10-10 23:44:09 +08:00
gVisor bot
0ebd7b6949 Chore: remove deprecated ioutil 2021-10-09 20:35:06 +08:00
gVisor bot
60bb29bade Fix: cache kv db should not block on init 2021-10-05 22:47:26 +08:00
gVisor bot
7f798f26ed Chore: add remove TODO 2021-10-05 12:42:21 +08:00
gVisor bot
cbaebd45db Change: use bbolt as cache db 2021-10-04 19:20:11 +08:00
gVisor bot
317bf173df Merge from remote branch 2021-09-08 04:42:56 +08:00
gVisor bot
da551ac737 Feature: add dhcp type dns client (#1509) 2021-09-06 23:07:34 +08:00
gVisor bot
8595347485 Merge from remote branch 2021-09-01 00:38:43 +08:00
gVisor bot
38bf28b439 Migration: go 1.17 2021-08-18 13:26:23 +08:00
gVisor bot
2e762b39b7 Merge from remote branch 2021-07-28 22:13:21 +08:00
gVisor bot
7246f25c07 Chore: use iife replace init in some cases 2021-07-11 19:43:25 +08:00
gVisor bot
38c102a93d Code: refresh code 2021-07-01 22:49:29 +08:00
gVisor bot
4c477510c3 Chore: use unix.ByteSliceToString transform cstring 2021-06-15 21:03:47 +08:00
gVisor bot
a409e7f2aa Feature: dns resolve domain through nameserver-policy (#1406) 2021-05-19 11:17:35 +08:00
gVisor bot
7b080217bd Chore: split component to transport 2021-05-13 22:19:34 +08:00
gVisor bot
226e6d1b4d Fix: io timeout when snell v2 reuse connection (#1362) 2021-04-19 14:36:06 +08:00
gVisor bot
ff31722d77 Fix: grpc transport concurrent write 2021-04-14 21:46:05 +08:00
gVisor bot
dfe601b377 Feature: PROCESS-NAME support freebsd 13, fix panic on unsupported platforms (#1351) 2021-04-14 17:57:17 +08:00
gVisor bot
60c40be85a Fix: use bufio.Reader on grpc to avoid panic 2021-04-14 00:16:59 +08:00
gVisor bot
5db5780d91 Fix: grpc implementation SetDeadline for udp issue 2021-04-13 23:34:33 +08:00
gVisor bot
85be8690c0 Fix: vmess aead writer concurrent write (#1350) 2021-04-13 23:32:53 +08:00
gVisor bot
887752e8f1 Fix: grpc transport panic 2021-04-09 18:11:07 +08:00
gVisor bot
270e587515 Fix: remove unused function 2021-04-08 22:27:41 +08:00
gVisor bot
f6a154087e Fix: trojan/vmess grpc broken 2021-04-07 22:57:46 +08:00
gVisor bot
709287e74b Chore: some chores 2021-04-05 13:31:10 +08:00
gVisor bot
9f7cf76256 Chore: refine go import 2021-04-05 13:00:49 +08:00
gVisor bot
7fedfb30f0 Fix: domain dns should follow hosts config, close #1318 2021-04-01 21:20:44 +08:00
gVisor bot
4e68b6cd3d Fix: don't resolve AAAA record when ipv6 is false and use go dns resolver 2021-04-01 18:03:30 +08:00
gVisor bot
20e6e5296b Feature: add vmess aead header support 2021-03-30 17:34:16 +08:00
gVisor bot
1860de9362 Style: cleanup code 2021-03-24 01:00:21 +08:00
gVisor bot
5842c94b17 Fix: grpc connection panic 2021-03-18 23:19:00 +08:00
gVisor bot
764e469ada Feature: add gRPC Transport for vmess/trojan (#1287)
Co-authored-by: eMeab <32988354+eMeab@users.noreply.github.com>
Co-authored-by: Dreamacro <8615343+Dreamacro@users.noreply.github.com>
2021-03-18 19:40:34 +08:00
gVisor bot
ff2b7f8d77 Fix: vmess http broken 2021-03-18 17:11:10 +08:00
gVisor bot
b2e4a0b63d Fix: store cache correctly 2021-02-21 01:07:22 +08:00
gVisor bot
d4fffbdbb5 Feature: support store group selected node to cache (enable by default) 2021-02-18 23:41:50 +08:00
gVisor bot
e41d0639ed Improve: refactor ssr and fix #995 (#1189)
Co-authored-by: goomada <madao@DESKTOP-IOEBS0C.localdomain>
2021-02-15 14:32:03 +08:00
gVisor bot
71eaba8d38 Fix: connectivity of ssr auth_chain_(ab) protocol (#1180) 2021-01-13 23:35:41 +08:00
gVisor bot
8c09af3746 chore: use singleDo to get interface info 2021-01-13 17:30:54 +08:00
gVisor bot
b283869c72 Fix: close http Response body on provider (#1154) 2020-12-29 11:28:22 +08:00
gVisor bot
73c7b86477 Fix: fallback bind fn should not bind global unicast 2020-12-28 22:24:58 +08:00
gVisor bot
1e9d9e6d03 Fix: PROCESS-NAME rule for UDP sessions on Windows (#1140) 2020-12-22 15:13:44 +08:00
gVisor bot
e063713174 Chore: move find process name to a single part 2020-12-17 22:17:27 +08:00
gVisor bot
f066687f93 Fix: tunnel UDP race condition (#1043) 2020-10-28 21:26:50 +08:00
gVisor bot
42d5c8d1d8 Fix: should not bind interface on local address 2020-10-25 20:31:01 +08:00
gVisor bot
77e6c499d5 Fix: undefined variable 2020-10-23 17:49:34 +08:00
gVisor bot
ccbf809efb Feature: use native syscall to bind interface on Linux and macOS 2020-10-22 22:32:03 +08:00
gVisor bot
76bab33d01 Fix: missing fake-ip record should return error 2020-10-17 12:52:43 +08:00
gVisor bot
5651d61dc2 Chore: remove broken test temporarily 2020-09-26 20:36:52 +08:00
gVisor bot
d16ed39e4b Feature: support VMess HTTP/2 transport (#903) 2020-09-26 20:33:57 +08:00
gVisor bot
623d261932 Chore: sync necessary changes from premium 2020-09-21 22:22:07 +08:00
gVisor bot
54f30ed13e Fix: pool gc test 2020-09-21 00:44:47 +08:00
gVisor bot
df718971f1 Feature: support snell v2 (#952)
Co-authored-by: Dreamacro <8615343+Dreamacro@users.noreply.github.com>
2020-09-21 00:33:13 +08:00
gVisor bot
ea4e10353a Chore: code style 2020-09-20 15:53:27 +08:00
gVisor bot
1cd2b8d8fb Chore: split enhanced mode instance (#936)
Co-authored-by: Dreamacro <305009791@qq.com>
2020-09-17 10:48:42 +08:00
gVisor bot
6ca03f5a90 Chore: pass staticcheck 2020-08-25 22:19:59 +08:00
gVisor bot
3a5f31d5a1 Fix: ssr broken (#895) 2020-08-12 20:50:56 +08:00
gVisor bot
bdc89ed6be Fix: ssr typo (#887) 2020-08-11 10:35:30 +08:00
gVisor bot
13e5b1263b Fix: ssr bounds out of range panic (#882) 2020-08-11 10:17:40 +08:00
gVisor bot
20983b0703 Fix: handle snell server reported error message properly (#848) 2020-07-30 15:54:26 +08:00
gVisor bot
c1be3debfd Feature: add ssr support (#805)
* Refactor ssr stream cipher to expose iv and key

References:
https://github.com/Dreamacro/go-shadowsocks2
https://github.com/sh4d0wfiend/go-shadowsocksr2

* Implement ssr obfs

Reference:
https://github.com/mzz2017/shadowsocksR

* Implement ssr protocol

References:
https://github.com/mzz2017/shadowsocksR
https://github.com/shadowsocksRb/shadowsocksr-libev
https://github.com/shadowsocksr-backup/shadowsocksr
2020-07-22 23:02:15 +08:00
gVisor bot
efdb7ed43a Fix: recycle buf on http obfs 2020-07-22 20:29:39 +08:00
gVisor bot
23d235df46 Fix: obfs host should not have 80 port 2020-07-01 00:01:36 +08:00
gVisor bot
97068d66a8 Fix: typo in dialer.go (#767) 2020-06-28 10:59:04 +08:00
gVisor bot
ff73876477 Fix: domain trie crash if not match in #758 (#762) 2020-06-24 19:46:37 +08:00
gVisor bot
806047488a Fix: domain trie should backtrack to parent if match fail (#758) 2020-06-24 18:41:23 +08:00
gVisor bot
216116e128 Change: ipv6 logic 2020-06-18 18:11:02 +08:00
gVisor bot
b79022a891 Feature: add default hosts localhost 2020-06-07 17:25:51 +08:00
gVisor bot
aa217977bf Chore: code adjustments 2020-06-07 16:54:41 +08:00
gVisor bot
a008bc063f Fix: panic of socks5 client missing authentication 2020-06-03 18:49:57 +08:00
gVisor bot
a59e3feba9 Feature: support vmess tls custom servername 2020-06-01 00:27:04 +08:00
gVisor bot
759b7aa934 Feature: domain trie support wildcard alias 2020-05-28 12:13:05 +08:00
gVisor bot
03c0f2e7f1 Feature: add Mixed(http+socks5) proxy listening (#685) 2020-05-12 11:29:53 +08:00
gVisor bot
0b60be9438 Improve: pool buffer alloc 2020-04-25 00:30:40 +08:00
gVisor bot
d622a93645 Fix: domain wildcard behavior 2020-04-24 23:49:19 +08:00
gVisor bot
496bfdf3f9 Chore: dialer hook should return a error 2020-04-24 23:48:55 +08:00
gVisor bot
6720cf8df5 Feature: verify mmdb on initial 2020-04-16 19:12:25 +08:00
gVisor bot
1f5bbe06fc Feature: domain trie support dot dot wildcard 2020-04-08 15:45:59 +08:00
gVisor bot
158727f7b3 Fix: vmess pure TLS mode 2020-04-03 16:04:24 +08:00
gVisor bot
618b7e6101 Feature: refactor vmess & add http network 2020-03-31 16:07:21 +08:00
gVisor bot
25396eaa34 Fix: trojan split udp packet 2020-03-20 00:02:05 +08:00
gVisor bot
11b67b19e6 Improve: add session cache for trojan 2020-03-19 22:39:09 +08:00
gVisor bot
55ee8695b3 Feature: support trojan 2020-03-19 20:26:53 +08:00
gVisor bot
05d45cbedc Fix: vmess udp crash 2020-02-17 17:34:19 +08:00
gVisor bot
38e0b9da50 Feature: add default-nameserver and outbound interface 2020-02-15 21:42:46 +08:00
gVisor bot
0c82ab8cdf Chore: use custom dialer 2020-02-09 17:02:48 +08:00
gVisor bot
adfe73b48e Improve: udp NAT type 2020-01-31 14:43:54 +08:00
gVisor bot
9ff9414cfd Chore: aggregate mmdb (#474) 2020-01-11 21:07:01 +08:00
gVisor bot
95f06ab9b9 Improve: UDP relay refactor (#441)
Co-authored-by: Dreamacro <Dreamacro@vip.qq.com>
2019-12-28 18:44:01 +08:00
gVisor bot
7fd4645237 Fix: fake pool test 2019-12-28 00:19:40 +08:00
gVisor bot
7c17184745 Feature: add fake-ip-filter 2019-12-28 00:10:06 +08:00
gVisor bot
76d93ab450 Fix: vmess websocket udp crash 2019-12-05 14:12:29 +08:00
gVisor bot
93f13c627c Feature: add experimental connections API 2019-10-27 21:44:07 +08:00
gVisor bot
f7f76fb8b6 Chore: code style improvements (#361) 2019-10-14 17:13:23 +08:00
gVisor bot
2adb586a78 Fix: some UDP issues (#265) 2019-10-11 20:11:18 +08:00
gVisor bot
312cf18e1c Fix: fakeip missing host 2019-10-11 14:01:16 +08:00
gVisor bot
204ff1a356 Feature: experimental support snell 2019-10-09 18:46:23 +08:00
gVisor bot
f86ab079f7 Feature: v2ray-plugin support disable mux 2019-09-21 23:49:00 +08:00
gVisor bot
3846c2fbe3 Fix(domain-trie): crash when insert 2019-09-14 21:42:40 +08:00
gVisor bot
d7cdc878ff Fix: socks address stringify buffer overflow 2019-08-16 21:38:27 +08:00
gVisor bot
8ded4918b2 Fix(vmess): set current server name in tls 2019-07-31 11:13:49 +08:00
gVisor bot
4c7da630f5 Fix(vmess): typo (#248) 2019-07-29 12:25:29 +08:00
gVisor bot
24bd2afbd8 Improve(fakeip): use lru cache to avoid outdate 2019-07-26 19:09:13 +08:00
gVisor bot
592c3c160f Fix(socks5): fully udp associate support (#233) 2019-07-25 17:47:39 +08:00
gVisor bot
159d9da548 Fix(domain-trie): domain could without dot 2019-07-16 00:57:08 +08:00
gVisor bot
32dd6f28ea Fix(domain-trie): Incorrect result 2019-07-15 18:00:51 +08:00
gVisor bot
ce94ed8802 Feature(dns): support custom hosts 2019-07-14 19:29:58 +08:00
gVisor bot
b115c369db Feature: local socks5/http(s) auth (#216) 2019-06-27 17:04:25 +08:00
gVisor bot
d883e7986e Fix: add mutex for fake ip pool 2019-05-23 23:27:29 +08:00
gVisor bot
2885f9a8de Chore: fix socks reader overflow & update dependencies 2019-05-06 21:00:29 +08:00
gVisor bot
9c315339fd Feature: support fakeip 2019-05-03 00:05:14 +08:00
gVisor bot
9f955015d1 Feature: support vmess udp 2019-04-25 16:32:15 +08:00
gVisor bot
892eb1d792 Feature: support outbound socks5 udp 2019-04-25 13:48:47 +08:00
gVisor bot
c02b16b446 Feature: socks5 udp associate 2019-04-23 23:30:13 +08:00
gVisor bot
4456aaa4b5 Feature: add custom headers support in v2ray-plugin (#137) 2019-03-15 09:43:46 +08:00
gVisor bot
8b57524bc9 Fix: vmess handshake block (#117) 2019-02-15 21:55:15 +08:00
gVisor bot
2500169447 Feature: add v2ray-plugin 2019-02-11 15:25:39 +08:00
gVisor bot
1e05ea63d6 Chore: make a consistent code style 2018-12-23 00:42:08 +08:00
gVisor bot
225843fe7d Feature: add websocket headers support in vmess 2018-12-11 00:25:05 +08:00
gVisor bot
27cdef3086 Fix: chunk size limit in tls obfs (#54)
* Fix: add chunkSize limit in TLSObfs

* Chore: add length var for len(b)
2018-12-01 09:32:02 +08:00
gVisor bot
a52f29acda Fix: tls server name missing in vmess 2018-11-28 23:24:57 +08:00
gVisor bot
27955312a2 Fix: simple-obfs tls 2018-11-07 16:57:21 +08:00
gVisor bot
a48a3999e0 Fix: vmess small probability invalid auth 2018-11-06 17:34:19 +08:00
gVisor bot
2e4df667f0 Chore: optimize code structure in vmess websocket (#28)
* Chore: move conn process of ws to websocket.go

* Chore: some routine adjustment
2018-11-04 21:36:20 +08:00
gVisor bot
e9dfbae5cb Optimization: use client session cache for TLS connection (#26) 2018-11-01 11:54:45 +08:00
gVisor bot
2ecfca0712 Chore: delete redundant print 2018-10-30 10:50:57 +08:00
gVisor bot
54f279c959 Chore: unified naming "skip-cert-verify" 2018-10-29 20:16:43 +08:00
gVisor bot
06ff2c8ff9 Feature: vmess add websocket support 2018-10-28 23:46:32 +08:00
gVisor bot
ff6a5c9b79 Fix: vmess alterId can be 0 2018-10-23 11:28:41 +08:00
gVisor bot
f73013006a Chore: make the code more semantic 2018-09-30 12:25:52 +08:00