Commit graph

294 commits

Author SHA1 Message Date
gVisor bot
c076d38ab1 refactor: adjust provider loading order, remove meaningless pointers 2022-04-28 08:55:45 +08:00
gVisor bot
d1aa6d1431 refactor: tcp concurrent 2022-04-27 21:37:20 +08:00
gVisor bot
c9740c2708 Fix: make log api unblocked 2022-04-26 22:36:10 +08:00
gVisor bot
ad67a1c34c Chore: use generics as possible 2022-04-25 13:18:30 +08:00
gVisor bot
83ecca0061 fix: ipv6 enable logic 2022-04-23 14:21:58 +08:00
gVisor bot
fbcf9b6801 fix: ipv6 enable logic 2022-04-23 02:03:10 +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
03a014957f feat: add sniffer port whitelist, when empty will add all ports 2022-04-21 07:06:08 -07: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
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
e11775a9b1 fix: sniffer npe 2022-04-16 08:45:18 +08:00
gVisor bot
642ce5c403 fix: adjust loading timing 2022-04-16 08:29:38 +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
895d93b10b chore:merge & adjust code 2022-04-12 20:20:04 +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
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
323dea4352 Chore: adjust gVisor stack 2022-03-28 03:25:55 +08:00
gVisor bot
67d04485ca Refactor: MainResolver 2022-03-28 00:44:13 +08:00
gVisor bot
89861038cd [skip ci] [Fix] ban auto set iptables when tun is enabled 2022-03-23 20:37:46 +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
6addcc260f bypass support for auto-iptables 2022-03-23 11:36:13 +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
c38ae18a59 Feature: flush fakeip pool 2022-03-23 01:05:43 +08:00
gVisor bot
56dc81ea73 Refactor: iptables auto config, disabled by default 2022-03-22 05:38:42 +08:00
gVisor bot
81363e3dfc Merge pull request #22 from Adlyq/Alpha-pr
[skip ci]
[Fix] skip when country code not found in GeoIP.dat
2022-03-22 00:33:02 +08:00
gVisor bot
e632b76c8f [Fix] do not monitor when auto-iptables is false 2022-03-21 20:29:07 +08:00
gVisor bot
e773595e33 auto change interface for tproxy 2022-03-21 19:51:27 +08:00
gVisor bot
f42365f4f9 init sequence adjustment 2022-03-21 19:47:21 +08:00
gVisor bot
652759a9ae [skip ci][内容]
1.调整部分代码
2022-03-20 02:39:48 +08:00
gVisor bot
f18800de42 [内容]
1.autoIptables 开关
2.go.mod 调整
3.processName 调整
4.makefile 调整
5.Tun模块 部分代码调整
2022-03-19 01:11:27 +08:00
gVisor bot
0bd8e30655 update 2022-03-18 00:24:38 +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
9ef90782ce Chore: use gateway address of fake ip pool as the TUN device address 2022-03-17 07:41:18 +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
907c68c9cb Migration: go 1.18 2022-03-16 12:10:13 +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
e855cefc13 [Skip CI] 2022-03-15 02:20:19 +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
f8e9902530 Chore: code style 2022-03-09 00:32:21 +08:00
gVisor bot
dd2ebb5903 Fix: iptables routing mark init 2022-03-03 05:02:17 +08:00
gVisor bot
e04b6de377 Chore: use "-m mark --mark" instead of "-m owner --uid-owner" 2022-02-23 14:19:59 +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
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
0aead76a23 [Feat]
update gvisor
Chore: use "-m mark --mark" instead of "-m owner --uid-owner"
2022-02-04 06:11:24 +08:00
gVisor bot
15ed2ca588 Merge remote-tracking branch 'pro-plus/plus-pro' into Feature
# Conflicts:
#	.github/workflows/Alpha.yml
#	.github/workflows/codeql-analysis.yml
#	.github/workflows/docker.yml
#	.github/workflows/linter.yml
#	.github/workflows/stale.yml
#	Makefile
#	README.md
#	adapter/outbound/vless.go
#	component/dialer/dialer.go
#	component/geodata/geodata.go
#	component/geodata/router/condition.go
#	config/config.go
#	config/initial.go
#	constant/metadata.go
#	constant/path.go
#	constant/rule.go
#	constant/rule_extra.go
#	dns/filters.go
#	go.mod
#	go.sum
#	hub/executor/executor.go
#	hub/route/configs.go
#	listener/listener.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/dev_windows_extra.go
#	listener/tun/dev/wintun/dll_windows.go
#	listener/tun/dev/wintun/session_windows.go
#	listener/tun/ipstack/gvisor/tun.go
#	listener/tun/ipstack/gvisor/tundns.go
#	listener/tun/ipstack/stack_adapter.go
#	listener/tun/ipstack/system/tun.go
#	listener/tun/tun_adapter.go
#	main.go
#	rule/base.go
#	rule/common/process.go
#	rule/geoip.go
#	rule/parser.go
#	rule/port.go
#	test/go.mod
#	test/go.sum
#	test/vless_test.go
#	transport/vless/xtls.go
#	tunnel/tunnel.go
2022-02-04 05:30:21 +08:00
gVisor bot
fdb0a3f5a8 Chore: use "-m mark --mark" instead of "-m owner --uid-owner" 2022-02-02 21:59:44 +08:00
gVisor bot
39c3ca2b75 [Fixed] select group crash 2022-01-21 22:38:02 +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
7a9458b858 [Fixed] compatible cfw 2022-01-05 19:28:54 +08:00
gVisor bot
3fe8a4777d make tun config compatible with premium 2022-01-05 11:24:00 +08:00
gVisor bot
fd5852ce1c Merge from remote branch 2022-01-05 01:46:37 +08:00
gVisor bot
f507672d4b make tun config compatible with premium 2022-01-05 00:33:42 +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
0ecc9f4941 [fix] 2021-12-27 03:16:48 +08:00
gVisor bot
074c28f0bd Chore: ReCreate* do side effect job (#1849) 2021-12-26 22:08:53 +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
a7d32607ce Merge from remote branch 2021-12-09 21:38:24 +08:00
gVisor bot
4d8017574c Chore: builtin right mime of .js (#1808) 2021-12-08 13:38:25 +08:00
gVisor bot
2ce11362da fix AutoIptables 2021-12-04 19:59:41 +08:00
gVisor bot
165e7ccc76 [style] 2021-12-04 17:41:13 +08:00
gVisor bot
934efb3d85 [fix]Linux TProxy 2021-12-04 14:34:01 +08:00
gVisor bot
97e89ed33b style 2021-12-03 21:54:45 +08:00
gVisor bot
88a91ae1b8 test 2021-12-03 20:38:40 +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
b90fe87a17 fix proxies callback 2021-11-21 16:57:22 +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
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
2762c33ad3 Feature: dial different NIC for all proxies (#1714) 2021-11-07 16:48:51 +08:00
gVisor bot
801dc4886d Chore: use custom buffer pool for lwIP stack 2021-11-04 18:33:11 +08:00
gVisor bot
feff4a93a9 Wintun: use new swdevice-based API for upcoming Wintun 0.14 2021-11-03 15:10:31 +08:00
gVisor bot
5cca04291b Wintun: use new swdevice-based API for upcoming Wintun 0.14 2021-11-03 15:02:40 +08:00
gVisor bot
f7d136f56c Merge from remote branch 2021-10-28 11:36: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
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
554efd8a27 Feature: add lwIP TCP/IP stack to tun listener 2021-09-30 04:05:52 +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
edf35558f0 Feature: add geoip-code option 2021-08-25 15:15:13 +08:00
gVisor bot
2e762b39b7 Merge from remote branch 2021-07-28 22:13:21 +08:00
gVisor bot
6b418d4369 Chore: logging real listen port (#1492) 2021-07-19 14:07:51 +08:00
gVisor bot
dd6e71d58f Feature: SOCKS4/SOCKS4A Inbound Compatible Support (#1491) 2021-07-18 16:09:09 +08:00
gVisor bot
a078203976 Fix: reorder apply config to ensure update proxies and rules 2021-07-10 17:01:40 +08:00
gVisor bot
c3090aacb1 Style: code style 2021-07-09 02:19:43 +08:00
gVisor bot
8b2f737511 Merge from remote branch 2021-07-07 03:53:32 +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
a2948cd3b6 Change: config reload API use default path when both path and payload don't exist (#1447) 2021-06-21 17:33:34 +08:00
gVisor bot
894e2843d5 Style: code style 2021-06-13 17:23:10 +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
9f7cf76256 Chore: refine go import 2021-04-05 13:00:49 +08:00
gVisor bot
457d381ea2 Chore: update dependencies (#1331) 2021-04-03 14:59:03 +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
3b31b65d37 Chore: API support patch ipv6 config (#1217) 2021-02-05 16:43:42 +08:00
gVisor bot
be5a2a9adf Refactor: make inbound request contextual 2021-01-23 14:58:09 +08:00
gVisor bot
ed77eeeb97 Fix: get general should return correct result (#1172) 2021-01-07 13:59:39 +08:00
gVisor bot
ac72e27e41 Feature: add TCP TPROXY support (#1049) 2020-11-09 10:46:10 +08:00
gVisor bot
4f3d3dbe6e Chore: fix typo (#1017) 2020-10-14 19:56:02 +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
22f32c3789 Fix: ticker leak 2020-07-13 00:25:54 +08:00
gVisor bot
062fbffbae Chore: remove forward compatibility code 2020-06-27 14:28:10 +08:00
gVisor bot
f7aa21c0e5 Chore: move experimental features to stable 2020-06-27 14:19:31 +08:00
gVisor bot
024bb62c67 Fix: external-ui should relative with clash HomeDir 2020-06-18 21:33:57 +08:00
gVisor bot
216116e128 Change: ipv6 logic 2020-06-18 18:11:02 +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
4d5801fa6e Feature: add more command-line options (#656)
add command-line options to override `external-controller`, `secret` and `external-ui` (#531)
2020-04-27 22:23:09 +08:00
gVisor bot
3542b3e3b1 Improve: provider can be auto GC 2020-04-26 22:38:15 +08:00
gVisor bot
d97ee63d0e Fix: API auth bypass 2020-04-24 23:49:35 +08:00
gVisor bot
d714783fea Change: make ping under authentication 2020-02-21 18:00:19 +08:00
gVisor bot
38e0b9da50 Feature: add default-nameserver and outbound interface 2020-02-15 21:42:46 +08:00
gVisor bot
5314d8bb19 Fix: ParseWithBytes should recive buffer and parse buffer 2019-12-27 20:12:01 +08:00
gVisor bot
7a498cdb5e Improve: provider api 2019-12-13 00:29:24 +08:00
gVisor bot
3f6766fc9d Feature: add basic api for proxy provider 2019-12-11 17:31:15 +08:00
gVisor bot
ecc943997d Feature: add experimental provider 2019-12-08 12:17:24 +08:00
gVisor bot
88e7005382 Feature: update config API support raw yaml payload 2019-12-01 13:22:47 +08:00
gVisor bot
93f13c627c Feature: add experimental connections API 2019-10-27 21:44:07 +08:00
gVisor bot
06e1f31a89 Fix: urltest get fastest node ehavior (#326) 2019-10-12 23:29:00 +08:00
gVisor bot
b1edb7b5e1 Feature: websocket api support browser 2019-09-30 14:13:29 +08:00
gVisor bot
e35c01cc52 Fix(API): cors middleware hoisting because it doesn't work with r.Group 2019-09-21 21:28:02 +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
376516c7af Feature: add version api 2019-09-13 17:44:30 +08:00
gVisor bot
3ecf35dcdb Fix(API): use right status code 2019-09-08 22:33:52 +08:00
gVisor bot
f10b8f8af2 Feature: support customizing bind-address when allow-lan is true (#255) 2019-08-08 13:45:07 +08:00
gVisor bot
592c3c160f Fix(socks5): fully udp associate support (#233) 2019-07-25 17:47:39 +08:00
gVisor bot
eba263a731 Fix(picker): add WithTimeout for some situation 2019-07-18 00:12:01 +08:00
gVisor bot
ce94ed8802 Feature(dns): support custom hosts 2019-07-14 19:29:58 +08:00
gVisor bot
19494fe383 Feature(API): logs and traffic support websocket 2019-07-12 15:44:12 +08:00