Commit Graph

267 Commits

Author SHA1 Message Date
gVisor bot
dd66f8826c fix: close transport with doh of h3 2022-07-03 23:01:49 +08:00
gVisor bot
12338f285b feat: try h3 connect DOH, failed will fall back h2; turn on with dns.prefer-h3: true 2022-07-03 21:59:47 +08:00
gVisor bot
bb2b64ba42 chore: dns interface name 2022-06-25 09:16:51 +08:00
gVisor bot
0c2014bb40 fix: disable doq skip verify cert 2022-06-25 09:16:49 +08:00
gVisor bot
34f46ac3a9 chore: delete DOQ meaningless ALPN 2022-06-12 23:17:26 +08:00
gVisor bot
b075ae1a3c fix: DOQ blocked dns return result because DOQ goroutine leak 2022-06-12 21:41:01 +08:00
gVisor bot
40c33e8fce chore: doq default port change to 853, ALPN use doq 2022-06-12 17:53:11 +08:00
gVisor bot
1b9a952510 fix: leak dns when domain in hosts list 2022-06-10 14:29:19 +08:00
gVisor bot
0fcb82af0e fix: doq maybe crash when use adapter 2022-06-06 21:45:08 +08:00
gVisor bot
cc41c30b09 chore: 调整dns interface与adapter部分 2022-06-05 13:37:00 +08:00
gVisor bot
7b40a2bd06 chore: mix the proxy adapter and interface to dns client 2022-06-04 21:18:49 +08:00
gVisor bot
739502ae30 refactor: 添加no_gvisor 编译tag, 剔除gvisor stack支持, 方便在arm设备上debug 2022-06-03 20:07:30 +08:00
gVisor bot
9ccc89ad95 chore: 添加tag no_doq 编译不含doq版本, 仅减少1.5MB(macOS-arm64) 2022-06-03 18:12:06 +08:00
gVisor bot
bbf0f1af4b Feature: can set custom interface for dns nameserver (#2126) 2022-06-01 10:50:54 +08:00
gVisor bot
39b9ee9462 chore: 降低并发查询时IPv6等待 2022-05-28 09:58:45 +08:00
gVisor bot
98ca305a54 fix: 并发dns查询,由于ipv6阻塞导致某些情况下的网络不通 2022-05-21 00:34:15 +08:00
gVisor bot
109e4b25cc fix: doq过代理错误 2022-05-17 21:30:54 +08:00
gVisor bot
4a828089b4 chore: debug log print dns result 2022-05-17 18:21:18 +08:00
gVisor bot
02d30883b6 feat: "!"(not) support for geosite
eg. GEOSITE,!CN,Proxy & dns.fallback-filter.geosite: ['!CN']
2022-05-15 13:16:45 +08:00
gVisor bot
4464d486fb fix: tun dns 2022-05-02 14:21:37 +08:00
gVisor bot
e758c464de chore: doq parameters 2022-05-02 05:01:07 +08:00
gVisor bot
b6efac8d79 refactor: remove dns and tun relationship, the enabled of dns module should be decided by user 2022-05-01 09:41:27 +08:00
gVisor bot
8fa6b3024f fix: dhcp ifacename type 2022-04-28 23:44:37 +08:00
gVisor bot
683198dcfe fix: dns specified interface does not change 2022-04-28 22:40:06 +08:00
gVisor bot
fe1099b0c5 refactor: doq dialer 2022-04-28 22:21:48 +08:00
gVisor bot
ad67a1c34c Chore: use generics as possible 2022-04-25 13:18:30 +08:00
gVisor bot
532ec82a08 feat: support tcp concurrent, Separate dialing and dns resolver ipv6
tcp-concurrent:true
2022-04-23 00:27:22 +08:00
gVisor bot
e2dbbb7cfe Refactor: metadata use netip.Addr 2022-04-20 22:52:05 +08:00
gVisor bot
915f40e71b Chore: IpToAddr 2022-04-20 22:09:16 +08:00
gVisor bot
caf271a669 Chore: fix typo 2022-04-19 22:38:20 +08:00
gVisor bot
66503d64e3 Chore: persistence fakeip pool state 2022-04-19 22:37:47 +08:00
gVisor bot
f4500524e4 chore: update dependencies 2022-04-13 02:32:55 +08:00
gVisor bot
bc33cd5630 Refactor: fakeip pool use netip.Prefix, supports ipv6 range 2022-04-12 20:32:08 +08:00
gVisor bot
950e638222 Chore: fix typos 2022-04-12 19:08:13 +08:00
gVisor bot
89d75e59d1 Refactor: DomainTrie use generics 2022-04-12 18:45:47 +08:00
gVisor bot
b1cf4dc1a2 Refactor: lrucache use generics 2022-04-12 18:44:07 +08:00
gVisor bot
0d1e4405da Merge remote-tracking branch 'Plus/with-tun' into Alpha 2022-04-02 20:48:11 +08:00
gVisor bot
ee3f94425e feat: 添加tls sni 嗅探
# Conflicts:
#	tunnel/statistic/tracker.go
#	tunnel/tunnel.go
2022-03-31 21:27:25 +08:00
gVisor bot
1c4e024030 Chore: revert "Feature: add tls SNI sniffing (#68)"
This reverts commit 24ce6622a2.
2022-03-31 21:20:46 +08:00
gVisor bot
016d88e5ea Feature: add tls SNI sniffing (#68) 2022-03-31 19:34:40 +08:00
gVisor bot
05125430dd Merge remote-tracking branch 'Pro-Plus/with-tun' into Alpha
# Conflicts:
#	README.md
#	adapter/outbound/trojan.go
#	adapter/outbound/vless.go
#	transport/trojan/trojan.go
2022-03-30 13:15:45 +08:00
gVisor bot
67d04485ca Refactor: MainResolver 2022-03-28 00:44:13 +08:00
gVisor bot
a52743bd28 [SKIP CI]
Merge remote-tracking branch 'Pro-Plus/with-tun' into Alpha

# Conflicts:
#	README.md
#	hub/route/server.go
2022-03-23 13:23:34 +08:00
gVisor bot
c38ae18a59 Feature: flush fakeip pool 2022-03-23 01:05:43 +08:00
gVisor bot
db31cfbd7f Merge remote-tracking branch 'yaling888/with-tun' into Alpha
# Conflicts:
#	.github/workflows/codeql-analysis.yml
#	.github/workflows/linter.yml
#	.github/workflows/release.yml
#	Makefile
#	README.md
#	adapter/outbound/vless.go
#	component/geodata/memconservative/cache.go
#	component/geodata/router/condition.go
#	component/geodata/router/condition_geoip.go
#	component/geodata/standard/standard.go
#	component/geodata/utils.go
#	config/config.go
#	config/initial.go
#	constant/metadata.go
#	constant/path.go
#	constant/rule.go
#	constant/rule_extra.go
#	dns/client.go
#	dns/filters.go
#	dns/resolver.go
#	go.mod
#	go.sum
#	hub/executor/executor.go
#	hub/route/configs.go
#	listener/listener.go
#	listener/tproxy/tproxy_linux_iptables.go
#	listener/tun/dev/dev.go
#	listener/tun/dev/dev_darwin.go
#	listener/tun/dev/dev_linux.go
#	listener/tun/dev/dev_windows.go
#	listener/tun/dev/wintun/config.go
#	listener/tun/dev/wintun/dll_windows.go
#	listener/tun/dev/wintun/session_windows.go
#	listener/tun/dev/wintun/wintun_windows.go
#	listener/tun/ipstack/commons/dns.go
#	listener/tun/ipstack/gvisor/tun.go
#	listener/tun/ipstack/gvisor/tundns.go
#	listener/tun/ipstack/gvisor/utils.go
#	listener/tun/ipstack/stack_adapter.go
#	listener/tun/ipstack/system/dns.go
#	listener/tun/ipstack/system/tcp.go
#	listener/tun/ipstack/system/tun.go
#	listener/tun/tun_adapter.go
#	main.go
#	rule/common/base.go
#	rule/common/domain.go
#	rule/common/domain_keyword.go
#	rule/common/domain_suffix.go
#	rule/common/final.go
#	rule/common/geoip.go
#	rule/common/geosite.go
#	rule/common/ipcidr.go
#	rule/common/port.go
#	rule/parser.go
#	rule/process.go
#	test/go.mod
#	test/go.sum
#	transport/vless/xtls.go
#	tunnel/tunnel.go
2022-03-17 17:41:02 +08:00
gVisor bot
50ab57c72e Merge remote-tracking branch 'clash/dev' into Alpha
# Conflicts:
#	.github/workflows/docker.yml
#	adapter/outboundgroup/fallback.go
#	adapter/outboundgroup/loadbalance.go
#	adapter/outboundgroup/relay.go
#	adapter/outboundgroup/selector.go
#	adapter/outboundgroup/urltest.go
#	config/config.go
#	go.mod
#	go.sum
#	main.go
#	test/go.mod
#	test/go.sum
2022-03-17 01:41:51 +08:00
gVisor bot
446fd99436 Chore: Merge branch 'ogn-dev' into with-tun 2022-03-16 20:16:30 +08:00
gVisor bot
01d7a43793 [build test] 2022-03-16 17:33:08 +08:00
gVisor bot
907c68c9cb Migration: go 1.18 2022-03-16 12:10:13 +08:00
gVisor bot
40381afa05 [build test] 2022-03-16 00:43:08 +08:00
gVisor bot
fb7ba942c7 Style: code style 2022-03-15 02:55:06 +08:00
gVisor bot
4893e20c0b Fix: exclude the broadcast address to fake ip pool 2022-03-15 02:43:40 +08:00
gVisor bot
dc0339e399 Chore: embed the RuleExtra into Base 2022-03-13 01:22:05 +08:00
gVisor bot
e5358cd03a Feature: resolve ip with a proxy adapter 2022-02-23 02:38:50 +08:00
gVisor bot
7f0de1861a Merge from remote branch 2022-02-23 01:00:27 +08:00
gVisor bot
e3a61dbbd3 [FEAT] Add geodata loader mode switch 2022-02-05 00:51:06 +08:00
gVisor bot
095a65abd9 [Feat]
1.Add DNS over QUIC support
2.Replace Country.mmdb with GeoIP.dat
3.build with Alpha tag
2022-01-27 12:25:53 +08:00
gVisor bot
09ffc53d95 [chore] Replace Country.mmdb with GeoIP.dat 2022-01-26 12:01:14 +08:00
gVisor bot
9afe58058d Merge branch 'clash-dev' into Dev 2022-01-25 15:05:24 +08:00
gVisor bot
45037114e3 Fix: ignore empty dns server error 2022-01-05 11:41:31 +08:00
gVisor bot
63254f0306 merge clash 1.9.0 2022-01-04 17:58:50 +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
074c28f0bd Chore: ReCreate* do side effect job (#1849) 2021-12-26 22:08:53 +08:00
gVisor bot
e69c54cfcd [test] 2021-11-17 16:03:47 +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
a40706ba21 Fix: unexpected proxy dial behavior on mapping mode 2021-10-18 21:08:27 +08:00
gVisor bot
088b281a6a Fix: #1660 panic 2021-10-11 21:05:38 +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
90e2f5cb53 Chore: doh request should with id 0 (#1660) 2021-10-07 22:57:55 +08:00
gVisor bot
a50a642f01 Fix: dhcp client should request special interface 2021-10-05 13:31:19 +08:00
gVisor bot
249d830d73 Merge from remote branch 2021-09-17 15:07:27 +08:00
gVisor bot
ee4ee2751e Fix: potential pitfalls 2021-09-13 23:58:48 +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
3817f2ae91 Feature: add source ipcidr condition to rule final 2021-09-01 18:29:48 +08:00
gVisor bot
8595347485 Merge from remote branch 2021-09-01 00:38:43 +08:00
gVisor bot
eaee41b768 Chore: make geoip match case-insensitive (#1574) 2021-08-29 22:19:22 +08:00
gVisor bot
edf35558f0 Feature: add geoip-code option 2021-08-25 15:15:13 +08:00
gVisor bot
38bf28b439 Migration: go 1.17 2021-08-18 13:26:23 +08:00
gVisor bot
c586479a13 Feature: support multiport condition for rule SRC-PORT and DST-PORT 2021-07-06 15:07:05 +08:00
gVisor bot
b5939c1cc3 Merge from remote branch 2021-07-03 22:31:12 +08:00
gVisor bot
089faa30a5 Fix: remove ClientSessionCache and add NextProtos for vmess to fix #1468 2021-07-03 20:34:44 +08:00
gVisor bot
38c102a93d Code: refresh code 2021-07-01 22:49:29 +08:00
gVisor bot
f0dae64b94 Fix: enable DNS server message compression (#1451) 2021-06-24 13:38:44 +08:00
gVisor bot
a409e7f2aa Feature: dns resolve domain through nameserver-policy (#1406) 2021-05-19 11:17:35 +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
be5a2a9adf Refactor: make inbound request contextual 2021-01-23 14:58:09 +08:00
gVisor bot
f0acebf56d Fix: dns client should not bind local address 2021-01-04 00:51:53 +08:00
gVisor bot
76bab33d01 Fix: missing fake-ip record should return error 2020-10-17 12:52:43 +08:00
gVisor bot
1752566405 Chore: return empty record in SVCB/HTTPSSVC on fake-ip mode 2020-10-13 00:15:49 +08:00
gVisor bot
0da177c3af Fix: the priority of fake-ip-filter 2020-10-09 00:04:24 +08:00
gVisor bot
54618e59c9 Feature: support domain in fallback filter (#964) 2020-09-28 22:17:10 +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
1a4d0ab21c Feature: reuse dns resolver cache when hot reload 2020-08-31 00:32:18 +08:00
gVisor bot
6ca03f5a90 Chore: pass staticcheck 2020-08-25 22:19:59 +08:00
gVisor bot
b61e1cd00c Feature: dns server could lookup hosts (#872) 2020-08-11 10:28:17 +08:00
gVisor bot
4b867e11de Fix: dns should put msg to cache while exchangeWithoutCache (#820) 2020-07-20 21:16:36 +08:00
gVisor bot
63e2c176f1 Fix: write msg cache multiple times (#812)
Co-authored-by: john.xu <john.xu@bytedance.com>
2020-07-17 17:34:40 +08:00
gVisor bot
216116e128 Change: ipv6 logic 2020-06-18 18:11:02 +08:00
gVisor bot
84ab3c5708 Fix: cannot listen socks5 port on wsl (#748) 2020-06-15 10:34:15 +08:00
gVisor bot
30b4a7f6dc Fix: fake-ip-filter on fakeip mode should lookup ip-host mapping (#743) 2020-06-14 00:41:53 +08:00
gVisor bot
c6e82884b4 Change: local resolve DNS in UDP request due to TURN failed 2020-06-12 23:39:03 +08:00
gVisor bot
7206450be0 Chore: open ForceAttemptHTTP2 on DoH 2020-06-01 13:43:26 +08:00
gVisor bot
7e5a24ebd2 Feature: implemented a strategy similar to optimistic DNS (#647) 2020-05-07 15:10:14 +08:00
gVisor bot
3a7ad5d47d Fix: dns return empty success for AAAA & recursion in fake ip mode (#663) 2020-04-29 11:21:37 +08:00
gVisor bot
496bfdf3f9 Chore: dialer hook should return a error 2020-04-24 23:48:55 +08:00
gVisor bot
f965118386 Fix: dns tcp-tls X509.HostnameError (#638) 2020-04-17 11:29:59 +08:00
gVisor bot
b033dd0369 Chore: picker support get first error 2020-04-16 18:31:40 +08:00
gVisor bot
af00355b28 Fix: set SO_REUSEADDR for UDP listeners on linux (#630) 2020-04-11 21:45:56 +08:00
gVisor bot
f50a8dbe00 Fix: dns request panic and close #527 2020-03-24 10:13:53 +08:00
gVisor bot
bf90c7e9bb Chore: support MarshalYAML to some config filed (#581) 2020-03-15 19:40:39 +08:00
gVisor bot
eb3be06859 Fix: dns fallback logic 2020-03-13 00:11:54 +08:00
gVisor bot
d72f597c74 Fix: #563 and fallback error return 2020-03-08 13:00:42 +08:00
gVisor bot
717482065c Fix: dns not cache RcodeServerFailure 2020-02-25 21:53:28 +08:00
gVisor bot
946326aae9 Chore: remove println 2020-02-18 14:26:42 +08:00
gVisor bot
c808d8a84f Fix: domain dns crash 2020-02-17 22:13:15 +08:00
gVisor bot
03a9106fa1 Fix: ipv6 dns crash 2020-02-17 20:11:46 +08:00
gVisor bot
38e0b9da50 Feature: add default-nameserver and outbound interface 2020-02-15 21:42:46 +08:00
gVisor bot
8c463cee00 Fix: use the fastest whether the result is successful 2020-02-14 16:36:20 +08:00
gVisor bot
0c82ab8cdf Chore: use custom dialer 2020-02-09 17:02:48 +08:00
gVisor bot
9ff9414cfd Chore: aggregate mmdb (#474) 2020-01-11 21:07:01 +08:00
gVisor bot
713c8a2c40 Fix: upstream dns ExchangeContext workaround (#468) 2020-01-10 14:13:44 +08:00
gVisor bot
da5b005df8 Chore: increase DNS timeout (#464) 2020-01-01 19:23:34 +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
7c17184745 Feature: add fake-ip-filter 2019-12-28 00:10:06 +08:00
gVisor bot
77b38b3285 Chore: distinguish udp request in log (#449) 2019-12-27 20:11:51 +08:00
gVisor bot
694d924cc7 Fix: valid proxy group and remove unused code 2019-12-14 18:13:33 +08:00
gVisor bot
f7f76fb8b6 Chore: code style improvements (#361) 2019-10-14 17:13:23 +08:00
gVisor bot
06e1f31a89 Fix: urltest get fastest node ehavior (#326) 2019-10-12 23:29:00 +08:00
gVisor bot
fe31a84b22 Fix: ip version check 2019-09-27 15:26:07 +08:00
gVisor bot
406618f3aa Fix: clearer error and ipv6 string parse (#325) 2019-09-27 10:33:37 +08:00
gVisor bot
2c795b82ec Fix(fake-ip): return failed when type is AAAA 2019-09-21 10:30:43 +08:00
gVisor bot
b38663a209 Feature: add fallback filters (#105) 2019-09-15 13:36:45 +08:00
gVisor bot
4994510c87 Feature: move hosts to the top 2019-09-14 20:01:08 +08:00
gVisor bot
72beaf1327 Fix(dns): use closure client (#251) 2019-08-02 09:22:09 +08:00
gVisor bot
24bd2afbd8 Improve(fakeip): use lru cache to avoid outdate 2019-07-26 19:09:13 +08:00
gVisor bot
f0a5ff76a6 Fix(dns): miss response 2019-07-15 17:44:55 +08:00
gVisor bot
d839973334 Fix(dns): set handler when resolver not nil 2019-07-15 10:18:42 +08:00
gVisor bot
a446a24be9 Fix(dns): Incorrect variable name 2019-07-14 23:16:52 +08:00
gVisor bot
ce94ed8802 Feature(dns): support custom hosts 2019-07-14 19:29:58 +08:00
gVisor bot
f027c3e540 Optimization: refactor picker 2019-07-02 19:18:03 +08:00
gVisor bot
9ddc9207ff Chore: update dependencies & fix typo 2019-06-29 16:48:48 +08:00
gVisor bot
83f3bec20c Feature: custom dns ipv4/ipv6 dual stack 2019-06-29 00:58:59 +08:00
gVisor bot
be170308c2 Feature: support DoH 2019-06-28 12:29:08 +08:00
gVisor bot
21cf6cd128 Chore: use 'dns' for ALPN in tcp-tls nameserver (#209) 2019-06-20 15:50:01 +08:00
gVisor bot
0a6f9b3878 Fix: DNS server not recreate correctly (#186) 2019-05-18 17:52:42 +08:00