Commit graph

343 commits

Author SHA1 Message Date
gVisor bot
5aea89f2fd chore: add sing-tun's custom route support 2022-10-13 19:26:14 +08:00
gVisor bot
5574d8e688 fix: tun stack shown 2022-10-10 19:02:57 +08:00
gVisor bot
b4d4dc251d fix: try let fakeip mode get real destination ip 2022-10-09 10:48:26 +08:00
gVisor bot
a73f1f0b37 fix: don't set auto detect interface with tun name 2022-10-07 16:54:08 +08:00
gVisor bot
110e0014d1 chore: fix sing-tun's BuildAndroidRules 2022-10-06 22:18:49 +08:00
gVisor bot
afd5e48adc chore: use sing-tun to replace old tun_adapter 2022-10-06 19:23:38 +08:00
gVisor bot
d6dc5ba19c feat: support sub-rule, eg.
rules:
  - SUB-RULE,(AND,((NETWORK,TCP),(DOMAIN-KEYWORD,google))),TEST2
  - SUB-RULE,(GEOIP,!CN),TEST1
  - MATCH,DIRECT

sub-rules:
  TEST2:
    - MATCH,Proxy
  TEST1:
    - RULE-SET,Local,DIRECT,no-resolve
    - GEOSITE,CN,Domestic
    - GEOIP,CN,Domestic
    - MATCH,Proxy
2022-09-06 17:30:35 +08:00
gVisor bot
f2d7db4a41 Merge remote-tracking branch 'origin/Alpha' into Alpha
# Conflicts:
#	component/sniffer/http_sniffer.go
2022-08-22 23:22:26 +08:00
gVisor bot
48f30b01ef fix: ebpf support 2022-08-22 23:17:41 +08:00
gVisor bot
be49fcfd12 Chore: the default sniffing is changed to a standard port, and the sniffing result is only used for this connection. 2022-08-21 08:43:57 +08:00
gVisor bot
2c10af7b1d support ebpf 2022-07-29 09:08:35 +08:00
gVisor bot
100b6b7f9b Merge pull request #129 from zhudan/Alpha
入站增加TFO支持(默认不开启)
2022-07-22 06:32:34 -04:00
gVisor bot
9daef5bf44 inbound tfo 2022-07-22 15:16:09 +08:00
gVisor bot
21d44fa391 refactor: DoH use fragment setting params 2022-07-21 21:40:28 +08:00
gVisor bot
2943e3982c fix: default nameserver cannot use doh of pure IP 2022-07-12 13:05:59 +08:00
gVisor bot
32843596e1 fix: default nameserver cannot use non-standard port of doh 2022-07-11 22:05:37 +08:00
gVisor bot
91e1649822 feat: add fingerprint for tls verify 2022-07-10 20:44:24 +08:00
gVisor bot
29254c6afd Merge branch 'h3' into Alpha 2022-07-06 20:54:10 +08:00
gVisor bot
db4fb69b10 refactor: h3 for doh 2022-07-06 20:53:34 +08:00
gVisor bot
6ceb2eb505 chore: clash.mini hack. 2022-07-04 18:53:24 +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
14dafb2d5c feat: add param general.enable-process, it will always find process or uid, default value is false 2022-06-14 23:08:07 +08:00
gVisor bot
17769e1a8f fix: udp listen use udp4 when general.ipv6 is false; general.ipv6 default value is true 2022-06-14 12:36:05 +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
7e4d679da6 refactor: clear linkname,reduce cycle dependencies,transport init geosite function 2022-06-10 13:38:19 +08:00
gVisor bot
e488342451 fix: upgrade to yaml v3 2022-06-09 17:59:17 +08:00
gVisor bot
d072d06e49 chore: 调整目录与包名一致 2022-06-04 03:25:33 +08:00
gVisor bot
a049744438 chore: 优化GeoSite初始化代码 2022-06-04 02:58:14 +08:00
gVisor bot
bbf0f1af4b Feature: can set custom interface for dns nameserver (#2126) 2022-06-01 10:50:54 +08:00
gVisor bot
b44848c8dc fix: npe 2022-05-28 23:29:03 +08:00
gVisor bot
050a47b15e chore: 更换GeoData下载地址
Signed-off-by: Meta <maze.y2b@gmail.com>
2022-05-27 18:32:23 +08:00
gVisor bot
649177855a Chore: upgrade to yaml v3 2022-05-26 17:47:05 +08:00
gVisor bot
6f2dc0336f feat: RESTful API support update Geo file
and can set update url by user, eg.
geox-url:
  geoip: "http://xxxx/gepip.dat"
  mmdb: "http://xxxx/country.mmdb"
  geosite: "http://xxxx/geosite.dat"
2022-05-24 15:04:13 +08:00
gVisor bot
09690122e4 feat: RESTful API support disable sniffer 2022-05-24 13:44:52 +08:00
gVisor bot
2a00f57fd9 feat: 安卓恢复进程规则,可通过enable-process开关,默认true 2022-05-19 20:44:09 +08:00
gVisor bot
d3e20a87de fix: 热重载Tun配置 2022-05-19 19:19:19 +08:00
gVisor bot
18ee3ceac5 chore: Android auto-detect-interface plus 2022-05-18 12:00:57 +08:00
gVisor bot
0eecb03bfa refactor: remove useless code 2022-05-16 17:29:08 +08:00
gVisor bot
d86deea7f1 refactor: new way to get interface for android 2022-05-16 17:06:44 +08:00
gVisor bot
7facfc5486 revert: yaml v2 2022-05-14 23:36:19 +08:00
gVisor bot
c3e7173187 chore: remove Script mode residual code. 2022-05-14 13:00:33 +08:00
gVisor bot
9d0b06a173 chore: update dependencies 2022-05-08 00:47:01 +08:00
gVisor bot
29f1787a4d chore: add default router when tun enable 2022-05-03 23:58:11 +08:00
gVisor bot
cb06de7d15 chore: sniffer param skip-sni renamed to ship-domain, old param will be removed in the release version 2022-05-03 23:10:59 +08:00
gVisor bot
4d8ba83abe fix: patch update support tun 2022-05-03 19:31:00 +08:00
gVisor bot
41f430e981 chore: adjust sniffer constant 2022-05-02 08:49:18 +08:00
gVisor bot
683198dcfe fix: dns specified interface does not change 2022-04-28 22:40:06 +08:00
gVisor bot
c076d38ab1 refactor: adjust provider loading order, remove meaningless pointers 2022-04-28 08:55:45 +08:00
gVisor bot
086772b721 fix: logic of auto-detect-interface 2022-04-23 23:42:42 +08:00
gVisor bot
7cdbab467f fix: sniffer port whitelist error 2022-04-23 09:36:11 +08:00
gVisor bot
7e61c9b6b3 fix: wrong parameter name 2022-04-23 00:45:43 +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
f8a9c272f3 feat: dnsHijack support "any"
chore: adjust process debug display logic
2022-04-22 13:30:04 +08:00
gVisor bot
03a014957f feat: add sniffer port whitelist, when empty will add all ports 2022-04-21 07:06:08 -07:00
gVisor bot
113d84b438 [fix] auto-route for android 2022-04-21 17:47:04 +08:00
gVisor bot
e2dbbb7cfe Refactor: metadata use netip.Addr 2022-04-20 22:52:05 +08:00
gVisor bot
d76abc8fe3 fix:force-domain invalid 2022-04-17 21:17:21 +08:00
gVisor bot
0ffa697d8d chore: change comments 2022-04-17 20:03:53 +08:00
gVisor bot
b6a134b34c refactor: sniffer param force and reverses deprecated, will be removed when release version, replace force-domain and skip-sni,
force-domain add '+' equivalent to force is true
sniffer:
  enable: true
  force-domain:
    - "google.com"
  skip-sni:
    - www.baidu.com
  sniffing:
    - tls
2022-04-17 20:02:13 +08:00
gVisor bot
363f9ff181 fix: domain tree match failed 2022-04-16 11:55:49 +08:00
gVisor bot
e11775a9b1 fix: sniffer npe 2022-04-16 08:45:18 +08:00
gVisor bot
6c56a3b80e feat: add domain list for sniffer, reverse force logic
when force is false, if domain in the list, will force replace
when force is true, if sniff domain in the list, will skip it
2022-04-16 08:21:31 +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
b2becaffe3 feat: sniffer support
sniffer:
  enable: true
  force: false # Overwrite domain
  sniffing:
    - tls
2022-04-09 22:30:36 +08:00
gVisor bot
d069d56860 fix: auto detect interface add param[auto-detect-interface], default is true, only use it when tun is enabled 2022-04-07 21:36:19 +08:00
gVisor bot
3c6be05ec9 fix: default-nameserver allow DOT and DOH with host is ip 2022-04-03 19:14:21 +08:00
gVisor bot
d66febb1a6 [Fixed]尝试修复PASS空指针问题
[Chore]调整workflows测试
2022-03-28 16:36:34 +08:00
gVisor bot
7b4e06816f Merge remote-tracking branch 'tun/with-tun' into Alpha 2022-03-28 10:51:59 +08:00
gVisor bot
67d04485ca Refactor: MainResolver 2022-03-28 00:44:13 +08:00
gVisor bot
eea2e3def9 [commit]
[Feat] add Pass type for support temporary skip rule set
2022-03-27 23:44:51 +08:00
gVisor bot
35ceca309f [Fix] url-test npe 2022-03-23 13:29:51 +08:00
gVisor bot
6addcc260f bypass support for auto-iptables 2022-03-23 11:36:13 +08:00
gVisor bot
9065b1865f delete useless field 2022-03-23 10:18:26 +08:00
gVisor bot
22db48dd37 [skip ci]
# Conflicts:
#	.github/workflows/linter.yml
#	.github/workflows/release.yml
#	config/config.go
#	go.mod
#	go.sum
#	hub/executor/executor.go
2022-03-23 01:41:42 +08:00
gVisor bot
56dc81ea73 Refactor: iptables auto config, disabled by default 2022-03-22 05:38:42 +08:00
gVisor bot
ebf7dd6e8e delete useless code 2022-03-21 18:09:36 +08:00
gVisor bot
1b72afb708 Only prompt when interface cannot be found 2022-03-18 17:41:06 +08:00
gVisor bot
47450aa401 1.fix module package
2.fix govet error
2022-03-18 02:35:15 +08:00
gVisor bot
b8c9a1bf6d update 2022-03-17 23:24:07 +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
f3d1de077e [Fix] Parse 2022-03-17 12:26:43 +08:00
gVisor bot
77f725afb6 [Fix] Parse 2022-03-17 12:23:50 +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
90e464ef38 [Fix] 优化geodata初始化逻辑 2022-03-16 22:55:18 +08:00
gVisor bot
446fd99436 Chore: Merge branch 'ogn-dev' into with-tun 2022-03-16 20:16:30 +08:00
gVisor bot
7a3a4413c9 [build test] 2022-03-16 17:29:09 +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
f7759c1468 Merge remote-tracking branch 'clash/dev' into Alpha
# Conflicts:
#	.github/workflows/codeql-analysis.yml
#	.github/workflows/docker.yml
#	.github/workflows/linter.yml
#	.github/workflows/stale.yml
#	Makefile
#	component/dialer/dialer.go
#	config/config.go
#	constant/metadata.go
#	constant/rule.go
#	rule/common/domain.go
#	rule/common/domain_keyword.go
#	rule/common/domain_suffix.go
#	rule/common/final.go
#	rule/common/ipcidr.go
#	rule/geoip.go
#	rule/parser.go
#	rule/port.go
#	rule/process.go
2022-03-15 23:13:41 +08:00
gVisor bot
440b54ab22 [Skip CI] 2022-03-15 22:25:33 +08:00
gVisor bot
fb7ba942c7 Style: code style 2022-03-15 02:55:06 +08:00
gVisor bot
dc0339e399 Chore: embed the RuleExtra into Base 2022-03-13 01:22:05 +08:00
gVisor bot
c8861d83f8 Chore: bump to go1.18rc1, use netip.Addr to replace net.IP with system TUN stack 2022-03-12 02:16:13 +08:00
gVisor bot
0175b103d0 Chore: refactor TUN 2022-03-09 05:08:35 +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
47359cc80f Fix: routing-mark should effect on root 2022-02-17 14:23:47 +08:00
gVisor bot
a156c88a75 [Fix]GeoSite.dat initial in logic rule 2022-02-06 04:41:34 +08:00
gVisor bot
8ad63d9707 [Fix]GeoSite.dat initial in logic rule 2022-02-06 04:30:54 +08:00
gVisor bot
f5933b91f1 [build] 2022-02-06 01:59:35 +08:00
gVisor bot
b75e8f9500 [FEAT] Add geodata loader mode switch 2022-02-05 02:42:49 +08:00
gVisor bot
e3a61dbbd3 [FEAT] Add geodata loader mode switch 2022-02-05 00:51:06 +08:00
gVisor bot
c57d92d7c1 [Feat]
support trojan xtls
change geodataloader mode as memconservative
2022-02-04 23:33:36 +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
4795a01a56 [Fixed] GEOSITE rule load fail 2022-01-23 18:27:44 +08:00
gVisor bot
6a78bca9fb [Feature]
1.Add Network rule, match network type(TCP/UDP)
2.Add logic rules(NOT,OR,AND)
-AND,((DOMAIN,baidu.com),(NETWORK,UDP)),REJECT

(cherry picked from commit d7092e2e37f2c48282c878edea1b2ebc2912b09a)
2022-01-22 22:37:07 +08:00
gVisor bot
0867bb8b8a [Fixed] auto-route support use ip route 2022-01-22 13:24:31 +08:00
gVisor bot
3c645b4f54 [Refactor]
1.allow maybe empty group
2.use COMPATIBLE(DIRECT alias) when proxy group is empty
3.http provider pass through tunnel
2022-01-18 21:09:36 +08:00
gVisor bot
12f95a46d4 [Refactor] lazy loading geosite.bat 2022-01-11 22:17:24 +08:00
gVisor bot
fea7d47d19 [Style] Modify the default configuration, tun config delete default hijack dns and modify auto-route to false. modify NameServer to 223.5.5.5 and 119.29.29.29 by Skyxim 2022-01-09 00:36:05 +08:00
gVisor bot
b1ce65f78c make tun config compatible with premium 2022-01-05 01:56:35 +08:00
gVisor bot
13392ea6b4 Revert "make tun config compatible with premium"
This reverts commit ba6fdd2962.
2022-01-05 01:56:05 +08:00
gVisor bot
acf9ba1280 make tun config compatible with premium 2022-01-05 01:50:43 +08:00
gVisor bot
f507672d4b make tun config compatible with premium 2022-01-05 00:33:42 +08:00
gVisor bot
5db5d143ca [test] 2021-12-27 06:44:17 +08:00
gVisor bot
5317d6e3e6 [Feature] 添加unified-delay boolean 控制延迟测试,默认为false,当设置true时忽略握手延迟,将统一延迟结果,从而利于不同协议的url-test 2021-12-26 21:20:41 +08:00
gVisor bot
46b2d3b0c1 [Fixed] launch resolver an enhancer when tun mode 2021-12-09 23:00:54 +08:00
gVisor bot
3fd3057f4e [Fixed]Meaningless pointer 2021-12-07 20:49:39 +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
d3708a2e71 Revert "[test] rule providers"
This reverts commit d4cc650633.
2021-11-26 00:57:33 +08:00
gVisor bot
3459ed005b [test] rule providers 2021-11-25 23:33:06 +08:00
gVisor bot
826b79a748 [fix] rule providers 2021-11-25 21:52:07 +08:00
gVisor bot
e69c54cfcd [test] 2021-11-17 16:03:47 +08:00
gVisor bot
d3521e6b3a [test]core 1.8 2021-11-16 20:08:52 +08:00
gVisor bot
a226cba447 Chore: update dependencies and rename profile props 2021-11-08 20:48:29 +08:00
gVisor bot
f7d136f56c Merge from remote branch 2021-10-28 11:36:11 +08:00
gVisor bot
a40706ba21 Fix: unexpected proxy dial behavior on mapping mode 2021-10-18 21:08:27 +08:00
gVisor bot
d7e31932c7 Feature: persistence fakeip (#1662) 2021-10-11 20:48:58 +08:00
gVisor bot
249d830d73 Merge from remote branch 2021-09-17 15:07:27 +08:00
gVisor bot
68813be155 Fix: should not unmarshal to pointer (#1615) 2021-09-13 23:43:28 +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
edf35558f0 Feature: add geoip-code option 2021-08-25 15:15:13 +08:00
gVisor bot
8b2f737511 Merge from remote branch 2021-07-07 03:53:32 +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
e259cea893 Chore: move provider interface to constant 2021-07-06 00:31:13 +08:00
gVisor bot
38c102a93d Code: refresh code 2021-07-01 22:49:29 +08:00
gVisor bot
542325aae4 Style: code style 2021-06-10 14:05:56 +08:00
gVisor bot
a409e7f2aa Feature: dns resolve domain through nameserver-policy (#1406) 2021-05-19 11:17:35 +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
ed77eeeb97 Fix: get general should return correct result (#1172) 2021-01-07 13:59:39 +08:00
gVisor bot
e063713174 Chore: move find process name to a single part 2020-12-17 22:17:27 +08:00
gVisor bot
9c80233034 Feature: add lazy for proxy group and provider 2020-11-19 00:53:22 +08:00
gVisor bot
ec41d4f5f7 Feature: add disable-udp option for all proxy group 2020-11-13 21:48:52 +08:00
gVisor bot
ac72e27e41 Feature: add TCP TPROXY support (#1049) 2020-11-09 10:46:10 +08:00
gVisor bot
54618e59c9 Feature: support domain in fallback filter (#964) 2020-09-28 22:17:10 +08:00