Commit Graph

327 Commits

Author SHA1 Message Date
MetaCubeX
30f1b29257 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
admin
ce509295c0 [Fix] Parse 2022-03-17 12:26:43 +08:00
admin
f671d6a1fd [Fix] Parse 2022-03-17 12:23:50 +08:00
MetaCubeX
609d69191a 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
MetaCubeX
0183d752a0 [Fix] 优化geodata初始化逻辑 2022-03-16 22:55:18 +08:00
MetaCubeX
2f24e49ff6 [build test] 1.18 2022-03-16 21:47:00 +08:00
yaling888
346d817dba Chore: Merge branch 'ogn-dev' into with-tun 2022-03-16 20:16:30 +08:00
MetaCubeX
0f2123179a [build test] 2022-03-16 17:29:09 +08:00
Dreamacro
6a661bff0c Migration: go 1.18 2022-03-16 12:10:13 +08:00
MetaCubeX
1034780e8e [build test] 2022-03-16 00:43:08 +08:00
MetaCubeX
f01ac69654 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
MetaCubeX
c85305ead8 [Skip CI] 2022-03-15 22:25:33 +08:00
yaling888
20b66d9550 Style: code style 2022-03-15 02:55:06 +08:00
MetaCubeX
cf52fbed65 [Skip CI] 2022-03-15 02:06:57 +08:00
yaling888
46b9a1092d Chore: embed the RuleExtra into Base 2022-03-13 01:22:05 +08:00
yaling888
8b4f9a35f6 Chore: bump to go1.18rc1, use netip.Addr to replace net.IP with system TUN stack 2022-03-12 02:16:13 +08:00
yaling888
8333815e95 Chore: refactor TUN 2022-03-09 05:08:35 +08:00
yaling888
d876d6e74c Feature: resolve ip with a proxy adapter 2022-02-23 02:38:50 +08:00
yaling888
b192238699 Merge from remote branch 2022-02-23 01:00:27 +08:00
Dreamacro
a0221bf897 Fix: routing-mark should effect on root 2022-02-17 14:23:47 +08:00
Clash-Mini
ca8ed0a01b [Fix]GeoSite.dat initial in logic rule 2022-02-06 04:41:34 +08:00
Clash-Mini
7465eaafa1 [Fix]GeoSite.dat initial in logic rule 2022-02-06 04:30:54 +08:00
Clash-Mini
4a446c4e31 [build] 2022-02-06 01:59:35 +08:00
Clash-Mini
28a1475f66 [FEAT] Add geodata loader mode switch 2022-02-05 02:42:49 +08:00
Clash-Mini
c28f42d823 [FEAT] Add geodata loader mode switch 2022-02-05 00:51:06 +08:00
Clash-Mini
2bf34c766e [Feat]
support trojan xtls
change geodataloader mode as memconservative
2022-02-04 23:33:36 +08:00
Clash-Mini
be0fadc09e [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
Clash-Mini
9e4e1482d9 [chore] Replace Country.mmdb with GeoIP.dat 2022-01-26 12:01:14 +08:00
Skyxim
62b70725ef [Fixed] GEOSITE rule load fail 2022-01-23 18:27:44 +08:00
Skyxim
8595d6c2e9 [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
Skyxim
03b956b7a3 [Fixed] auto-route support use ip route 2022-01-22 13:24:31 +08:00
Skyxim
b15344ec78 [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
Skyxim
ee6c1871a9 [Refactor] lazy loading geosite.bat 2022-01-11 22:17:24 +08:00
Skyxim
00e44cd141 [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
Clash-Mini
051c81518c make tun config compatible with premium 2022-01-05 01:56:35 +08:00
Clash-Mini
0209efd423 Revert "make tun config compatible with premium"
This reverts commit ba6fdd2962.
2022-01-05 01:56:05 +08:00
Clash-Mini
ba6fdd2962 make tun config compatible with premium 2022-01-05 01:50:43 +08:00
Clash-Mini
9475799615 make tun config compatible with premium 2022-01-05 00:33:42 +08:00
Maze.tsz
a06382cebc [test] 2021-12-27 06:44:17 +08:00
Skyxim
a210ec4197 [Feature] 添加unified-delay boolean 控制延迟测试,默认为false,当设置true时忽略握手延迟,将统一延迟结果,从而利于不同协议的url-test 2021-12-26 21:20:41 +08:00
Skyxim
9e44e21406 [Fixed] launch resolver an enhancer when tun mode 2021-12-09 23:00:54 +08:00
Skyxim
58ef4ddbba [Fixed]Meaningless pointer 2021-12-07 20:49:39 +08:00
Skyxim
c6f923041f Feature:Supported Rule-Set 2021-12-02 22:56:17 +08:00
maze.y2b@gmail.com
cb52682790 [style] 2021-12-01 16:51:31 +08:00
Maze.tsz
796eb5c95c Revert "[test] rule providers"
This reverts commit d4cc650633.
2021-11-26 00:57:33 +08:00
maze.y2b@gmail.com
d4cc650633 [test] rule providers 2021-11-25 23:33:06 +08:00
maze.y2b@gmail.com
cad18b7529 [fix] rule providers 2021-11-25 21:52:07 +08:00
Mazeorz
900e852525 [test] 2021-11-17 16:03:47 +08:00
Mazeorz
5d510eb5aa [test]core 1.8 2021-11-16 20:08:52 +08:00
Dreamacro
b56d35040d Chore: update dependencies and rename profile props 2021-11-08 20:48:29 +08:00
yaling888
2680e8ffa3 Merge from remote branch 2021-10-28 11:36:11 +08:00
yaling888
2953772a0e Style: format code 2021-10-28 00:06:55 +08:00
Dreamacro
81d5da51a3 Fix: unexpected proxy dial behavior on mapping mode 2021-10-18 21:08:27 +08:00
Dreamacro
3d5681cffd
Feature: persistence fakeip (#1662) 2021-10-11 20:48:58 +08:00
Dreamacro
f1cf7e9269 Style: use gofumpt for fmt 2021-10-10 23:44:09 +08:00
yaling888
fbda82218e
Merge from remote branch 2021-09-17 15:07:27 +08:00
Kr328
d49b38b00f
Fix: should not unmarshal to pointer (#1615) 2021-09-13 23:43:28 +08:00
yaling888
6ddd9e6fb8 Merge from remote branch 2021-09-08 04:42:56 +08:00
Kr328
a5b950a779
Feature: add dhcp type dns client (#1509) 2021-09-06 23:07:34 +08:00
yaling888
b904ca0bcc Feature: add source ipcidr condition to rule final 2021-09-01 18:29:48 +08:00
yaling888
48aef1829f Merge from remote branch 2021-09-01 00:38:43 +08:00
Dreamacro
e0d3f926b7 Feature: add geoip-code option 2021-08-25 15:15:13 +08:00
yaling888
5852245045
Merge from remote branch 2021-07-07 03:53:32 +08:00
yaling888
56dff65149 Feature: support multiport condition for rule SRC-PORT and DST-PORT 2021-07-06 15:07:05 +08:00
Dreamacro
d755383e39 Chore: move provider interface to constant 2021-07-06 00:31:13 +08:00
yaling888
d7732f6ebc Code: refresh code 2021-07-01 22:49:29 +08:00
Dreamacro
045edc188c Style: code style 2021-06-10 14:05:56 +08:00
Rusty Pen
0778591524
Feature: dns resolve domain through nameserver-policy (#1406) 2021-05-19 11:17:35 +08:00
Coel Wu
1f593d37fb
Chore: use mixed-port instead of port when initial config (#1319) 2021-04-01 15:35:33 +08:00
Dreamacro
14bbf6eedc Feature: support store group selected node to cache (enable by default) 2021-02-18 23:41:50 +08:00
Loyalsoldier
fcc594ae26
Chore: use jsdelivr CDN for Country.mmdb (#1057) 2021-01-30 00:40:35 +08:00
Fndroid
b6ee47a541
Fix: get general should return correct result (#1172) 2021-01-07 13:59:39 +08:00
Dreamacro
4b1b494164 Chore: move find process name to a single part 2020-12-17 22:17:27 +08:00
Dreamacro
0402878daa Feature: add lazy for proxy group and provider 2020-11-19 00:53:22 +08:00
Dreamacro
4735f61fd1 Feature: add disable-udp option for all proxy group 2020-11-13 21:48:52 +08:00
maskedeken
83efe2ae57
Feature: add TCP TPROXY support (#1049) 2020-11-09 10:46:10 +08:00
kongminhao
8c3e2a7559
Chore: fix typo (#1017) 2020-10-14 19:56:02 +08:00
Melvin
a6444bb449
Feature: support domain in fallback filter (#964) 2020-09-28 22:17:10 +08:00
Dreamacro
68dd0622b8 Chore: code style 2020-09-20 15:53:27 +08:00
Dreamacro
5805334ccd Chore: pass staticcheck 2020-08-25 22:19:59 +08:00
Kr328
89cf06036d
Feature: dns server could lookup hosts (#872) 2020-08-11 10:28:17 +08:00
Dreamacro
ae1e1dc9f6 Feature: support PROCESS-NAME on macOS 2020-07-19 13:18:23 +08:00
Dreamacro
7c62fe41b4 Chore: remove forward compatibility code 2020-06-27 14:28:10 +08:00
Dreamacro
2781090405 Chore: move experimental features to stable 2020-06-27 14:19:31 +08:00
Dreamacro
60bad66bc3 Change: ipv6 logic 2020-06-18 18:11:02 +08:00
Dreamacro
fb628e9c62 Feature: add default hosts localhost 2020-06-07 17:25:51 +08:00
Dreamacro
98614a1f3f Chore: move rule parser to rules 2020-06-05 17:43:50 +08:00
Dreamacro
3e7970612a Chore: provider error adjust 2020-06-01 00:39:41 +08:00
Dreamacro
8d0c6c6e66 Feature: domain trie support wildcard alias 2020-05-28 12:13:05 +08:00
bytew021
3a27cfc4a1
Feature: add Mixed(http+socks5) proxy listening (#685) 2020-05-12 11:29:53 +08:00
Dreamacro
18603c9a46 Improve: provider can be auto GC 2020-04-26 22:38:15 +08:00
Dreamacro
84f627f302 Feature: verify mmdb on initial 2020-04-16 19:12:25 +08:00
black-desk
3ccd7def86
Fix: typo (#624) 2020-04-08 15:49:12 +08:00
Ti
14d5137703
Fix: rules parse (#568) 2020-03-09 10:40:21 +08:00
Dreamacro
d8a771916a Fix: provider parse 2020-03-08 23:34:46 +08:00
Dreamacro
88d8f93793 Change: rename some field 2020-03-07 20:01:24 +08:00
Dreamacro
8d07c1eb3e Chore: initial config with port 2020-02-18 13:48:15 +08:00
Dreamacro
46edae9896 Fix: domain dns crash 2020-02-17 22:13:15 +08:00
Dreamacro
d75cb069d9 Feature: add default-nameserver and outbound interface 2020-02-15 21:42:46 +08:00
Jason Chen
82c387e92b
Chore: fix typo (#490) 2020-01-30 17:03:10 +08:00
comwrg
f688eda2c2 Chore: fix typo (#479) 2020-01-11 21:02:55 +08:00
Kr328
2810533df4 Chore: export raw config struct (#475) 2020-01-11 00:22:34 +08:00
Dreamacro
38458cc4d0 Migration: change geoip address 2019-12-31 12:30:42 +08:00
Dreamacro
96f490f84a Feature: add fake-ip-filter 2019-12-28 00:10:06 +08:00
Dreamacro
37603735bd Fix: missing health check instance 2019-12-27 20:12:15 +08:00
Dreamacro
dd61e8d19d Chore: aggregate logger 2019-12-20 17:22:24 +08:00
Dreamacro
29cf3ca0ef Fix: should initial compatible provider 2019-12-10 17:27:07 +08:00
Dreamacro
c427bc89ef Feature: add experimental provider 2019-12-08 12:17:24 +08:00
Dreamacro
3e4bc9f85c Feature: update config API support raw yaml payload 2019-12-01 13:22:47 +08:00
Dreamacro
8e10e67b89 Fix: throw correct error in read config 2019-11-12 10:09:12 +08:00
Dreamacro
e48ccdd4c8 Fix: unsupported rule should throw error 2019-11-04 23:07:19 +08:00
Fndroid
e103040158 Fix: NoResolveIP should return current value (#390) 2019-11-04 10:42:39 +08:00
Fndroid
82a8c03953 Feature: add no-resolve for ip rules (#375) 2019-10-28 00:02:23 +08:00
Dreamacro
06c9dfdb80 Feature: experimental support snell 2019-10-09 18:46:23 +08:00
宋辰文
b76737bdbb Feature: add fallback filters (#105) 2019-09-15 13:36:45 +08:00
Dreamacro
96a4abf46c Feature: move hosts to the top 2019-09-14 20:01:08 +08:00
Comzyh
b3e10c05e6 Fix: parse error in proxyGroupsDagSort (#298) 2019-09-13 15:04:51 +08:00
Comzyh
0d51877fcd Fix: should keep the original order of proxy groups (#284) 2019-08-28 23:44:32 +08:00
Comzyh
d59e98dc83 Feature: allow arbitrary order in proxy group (#89) 2019-08-12 10:11:44 +08:00
Siji
5829c3d5be Feature: support customizing bind-address when allow-lan is true (#255) 2019-08-08 13:45:07 +08:00
Siji
288afd1308 Fix: don't read yml if not exist (#253) 2019-08-07 14:21:39 +08:00
Dreamacro
271ed2b9c1 Improve(fakeip): use lru cache to avoid outdate 2019-07-26 19:09:13 +08:00
Dreamacro
1a21c8ebfd Feature(dns): support custom hosts 2019-07-14 19:29:58 +08:00
Dreamacro
34338e7107 Chore: update dependencies & fix typo 2019-06-29 16:48:48 +08:00
Dreamacro
57fdd223f1 Feature: custom dns ipv4/ipv6 dual stack 2019-06-29 00:58:59 +08:00
Dreamacro
bc3fc0c840 Feature: support DoH 2019-06-28 12:29:08 +08:00
Dreamacro
662038e40e Fix: log correctly path 2019-06-27 22:56:24 +08:00
bobo liu
1c792b46c9 Feature: local socks5/http(s) auth (#216) 2019-06-27 17:04:25 +08:00
beyondkmp
bcf5b21208 Fix: check target is valid in rules (#210) 2019-06-20 11:03:50 +08:00
Dreamacro
407de7388c Standardized: use recommend extension & forward compatibility before 1.0 2019-06-18 20:55:26 +08:00
ezksd
0eccbb023c Feature: make the selector proxies order as same as the order in the config file (#180)
* make the proxies order the same as the order in config file

* formatting & rename variable
2019-05-15 14:40:14 +08:00
Dreamacro
225c530d13 Feature: add DST-PORT and SRC-PORT 2019-05-09 21:00:29 +08:00
Dreamacro
f352f4479e Feature: support fakeip 2019-05-03 00:05:14 +08:00
Dreamacro
cec2206774 Feature: add experimental config for resolving ip fail behavior 2019-04-24 12:02:52 +08:00
Jang Rush
49f8902961 Fix: typo in initial config file (#166) 2019-04-22 09:57:08 +08:00
Dreamacro
2036f8cb7a Fix: IP-CIDR invalid payload crash 2019-03-30 14:11:59 +08:00
Dreamacro
18f885a92a Feature: add interval url test for load-balance 2019-03-28 19:00:41 +08:00
Dreamacro
acf55a7f64 Improve: Dial would reset proxy alive status 2019-03-16 00:43:16 +08:00
Comzyh
0011c7acfe Improve: support tcp dns server & return an error when parsing nameserver (#127) 2019-03-01 00:52:30 +08:00
Dreamacro
c0bd82d62b Chore: rename final 2019-02-18 21:53:57 +08:00
Dreamacro
c295c5e412 Feature: add load-balance group 2019-02-15 14:25:20 +08:00
Dreamacro
53b5ef199f Fix: parse proxies shadow variable 2019-02-04 09:39:17 +08:00
宋辰文
42d33fe629 Feature: SOURCE-IP-CIDR rule type (#96) 2019-02-02 21:03:13 +08:00
beyondkmp
bd6c6a9ad1 Chore: print origin rule when format error (#92) 2019-01-14 10:35:11 +08:00
Dreamacro
a7cfc81885 Fix: ignore some general configuration 2018-12-21 22:51:37 +08:00
Dreamacro
ef6260282f Fix: parse external-ui 2018-12-21 10:55:21 +08:00
Dreamacro
a6bbc67afb Feature: add custom ui support in API 2018-12-20 01:29:13 +08:00
Dreamacro
fa9077969c Fix: dns crash & remove unused debug log 2018-12-10 11:00:52 +08:00
Dreamacro
f93d6aa294 Fix: crash when dns not set 2018-12-05 21:52:31 +08:00
Dreamacro
03c249ecb1
Feature: add custom DNS support (#56) 2018-12-05 21:13:29 +08:00
Dreamacro
da5db36ccf Fix: policy group unexpectedly closed 2018-12-05 18:19:30 +08:00
beyondkmp
6636db242b Feature: add http/https [connect] proxy (#52) 2018-12-03 23:27:00 +08:00
Dreamacro
05bf4d44ab Change: replace FINAL with MATCH in a progressive way 2018-11-21 18:21:24 +08:00
Dreamacro
01a477bd3d Chore: improve code architecture 2018-11-21 13:47:46 +08:00
Dreamacro
19cbe52456 Fix: weak type proxy name 2018-10-27 12:57:56 +08:00
Dreamacro
94d1972782 Fix: selector no longer randomly selects 2018-10-18 23:24:04 +08:00
Dreamacro
381f764507 Chore: refactoring code of config path 2018-10-14 21:22:58 +08:00
Dreamacro
8fff0968bf Feature: add authorization for API 2018-10-06 13:15:02 +08:00
Dreamacro
5c7fa6b18b Break Change: use yml, which is easier to parse, as the config format 2018-10-02 15:26:36 +08:00
Dreamacro
2fd59cb31c Chore: make the code more semantic 2018-09-30 12:25:52 +08:00
Dreamacro
220e4f0608 Add: fallback policy group 2018-09-26 00:34:15 +08:00
Dreamacro
eb778ad6e2 Improve: cleanup code 2018-09-21 11:33:29 +08:00
Dreamacro
1d0d5667fd Fix: Rule with ipv6 address 2018-09-16 23:35:37 +08:00
Dreamacro
5d34cba681 Feature: add shadowsocks simple-obfs support 2018-09-16 23:02:32 +08:00
Dreamacro
4082a2c700 Improve: add DOMAIN rule 2018-09-09 15:01:46 +08:00
Dreamacro
fcb46e7706 Feature: support vmess tls mode 2018-09-08 19:53:24 +08:00
Dreamacro
834baa9e27 Feature: add vmess support 2018-09-06 10:53:29 +08:00
Dreamacro
a5f2bd3152 Fix: log format type 2018-08-27 08:50:27 +08:00
Dreamacro
2a2e61652f Fix: updateConfig api crash 2018-08-26 22:43:38 +08:00
Dreamacro
ebe1cee6dc Improve: clean code 2018-08-12 16:18:58 +08:00
Dreamacro
2b87b907ae New: custom socks5 proxy support 2018-08-12 13:50:54 +08:00
Dreamacro
752944d381 Update: README.md 2018-08-12 04:22:14 +08:00
Dreamacro
63308472ad New: redir proxy 2018-08-12 04:00:34 +08:00
Dreamacro
0208e32933 Fix: update proxy config api 2018-08-12 02:23:46 +08:00
Dreamacro
63c967b2b3 Fixed: global mode and update log level 2018-08-04 23:04:16 +08:00
Dreamacro
295d649624 Update: Initialize the config file outside of the init function 2018-07-31 17:54:16 +08:00
Dreamacro
8389150318 Improve: config convergent and add log-level 2018-07-26 00:04:59 +08:00