Skip to content

Commit ebf5cbf

Browse files
committed
Update documentation
1 parent d727710 commit ebf5cbf

File tree

12 files changed

+209
-27
lines changed

12 files changed

+209
-27
lines changed

constant/version.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package constant
22

33
var (
4-
Version = "1.1-beta1"
4+
Version = "1.1-beta2"
55
Commit = ""
66
)

docs/changelog.md

+25
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
1+
#### 1.1-beta2
2+
3+
* Add Clash mode and persistence support **1**
4+
* Add TLS ECH and uTLS support for outbound TLS options **2**
5+
* Fix socks4 request
6+
* Fix processing empty dns result
7+
8+
*1*:
9+
10+
Switching modes using the Clash API, and `store-selected` are now supported,
11+
see [Experimental](/configuration/experimental).
12+
13+
*2*:
14+
15+
ECH (Encrypted Client Hello) is a TLS extension that allows a client to encrypt the first part of its ClientHello
16+
message, see [TLS#ECH](/configuration/shared/tls#ech).
17+
18+
uTLS is a fork of "crypto/tls", which provides ClientHello fingerprinting resistance,
19+
see [TLS#uTLS](/configuration/shared/tls#utls).
20+
21+
#### 1.0.2
22+
23+
* Fix socks4 request
24+
* Fix processing empty dns result
25+
126
#### 1.1-beta1
227

328
* Add support for use with android VPNService **1**

docs/configuration/dns/rule.md

+5
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@
7373
"user_id": [
7474
1000
7575
],
76+
"clash_mode": "direct",
7677
"invert": false,
7778
"outbound": [
7879
"direct"
@@ -208,6 +209,10 @@ Match user name.
208209

209210
Match user id.
210211

212+
#### clash_mode
213+
214+
Match Clash mode.
215+
211216
#### invert
212217

213218
Invert match result.

docs/configuration/dns/rule.zh.md

+5
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@
7272
"user_id": [
7373
1000
7474
],
75+
"clash_mode": "direct",
7576
"invert": false,
7677
"outbound": [
7778
"direct"
@@ -207,6 +208,10 @@
207208

208209
匹配用户 ID。
209210

211+
#### clash_mode
212+
213+
匹配 Clash 模式。
214+
210215
#### invert
211216

212217
反选匹配结果。

docs/configuration/experimental/index.md

+24-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@
88
"clash_api": {
99
"external_controller": "127.0.0.1:9090",
1010
"external_ui": "folder",
11-
"secret": ""
11+
"secret": "",
12+
"default_mode": "rule",
13+
"store_selected": false,
14+
"cache_file": "cache.db"
1215
}
1316
}
1417
}
@@ -26,7 +29,7 @@
2629

2730
#### external_controller
2831

29-
RESTful web API listening address. Disabled if empty.
32+
RESTful web API listening address. Clash API will be disabled if empty.
3033

3134
#### external_ui
3235

@@ -38,4 +41,22 @@ serve it at `http://{{external-controller}}/ui`.
3841

3942
Secret for the RESTful API (optional)
4043
Authenticate by spedifying HTTP header `Authorization: Bearer ${secret}`
41-
ALWAYS set a secret if RESTful API is listening on 0.0.0.0
44+
ALWAYS set a secret if RESTful API is listening on 0.0.0.0
45+
46+
#### default_mode
47+
48+
Default mode in clash, `rule` will be used if empty.
49+
50+
This setting has no direct effect, but can be used in routing and DNS rules via the `clash_mode` rule item.
51+
52+
#### store_selected
53+
54+
!!! note ""
55+
56+
The tag must be set for target outbounds.
57+
58+
Store selected outbound for the `Selector` outbound in cache file.
59+
60+
#### cache_file
61+
62+
Cache file path, `cache.db` will be used if empty.

docs/configuration/experimental/index.zh.md

+24-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@
88
"clash_api": {
99
"external_controller": "127.0.0.1:9090",
1010
"external_ui": "folder",
11-
"secret": ""
11+
"secret": "",
12+
"default_mode": "rule",
13+
"store_selected": false,
14+
"cache_file": "cache.db"
1215
}
1316
}
1417
}
@@ -26,7 +29,7 @@
2629

2730
#### external_controller
2831

29-
RESTful web API 监听地址。
32+
RESTful web API 监听地址。如果为空,则禁用 Clash API。
3033

3134
#### external_ui
3235

@@ -36,4 +39,22 @@ RESTful web API 监听地址。
3639

3740
RESTful API 的密钥(可选)
3841
通过指定 HTTP 标头 `Authorization: Bearer ${secret}` 进行身份验证
39-
如果 RESTful API 正在监听 0.0.0.0,请始终设置一个密钥。
42+
如果 RESTful API 正在监听 0.0.0.0,请始终设置一个密钥。
43+
44+
#### default_mode
45+
46+
Clash 中的默认模式,默认使用 `rule`
47+
48+
此设置没有直接影响,但可以通过 `clash_mode` 规则项在路由和 DNS 规则中使用。
49+
50+
#### store_selected
51+
52+
!!! note ""
53+
54+
必须为目标出站设置标签。
55+
56+
`Selector` 中出站的选定的目标出站存储在缓存文件中。
57+
58+
#### cache_file
59+
60+
缓存文件路径,默认使用`cache.db`

docs/configuration/route/rule.md

+5
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@
8080
"user_id": [
8181
1000
8282
],
83+
"clash_mode": "direct",
8384
"invert": false,
8485
"outbound": "direct"
8586
},
@@ -219,6 +220,10 @@ Match user name.
219220

220221
Match user id.
221222

223+
#### clash_mode
224+
225+
Match Clash mode.
226+
222227
#### invert
223228

224229
Invert match result.

docs/configuration/route/rule.zh.md

+5
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@
7878
"user_id": [
7979
1000
8080
],
81+
"clash_mode": "direct",
8182
"invert": false,
8283
"outbound": "direct"
8384
},
@@ -217,6 +218,10 @@
217218

218219
匹配用户 ID。
219220

221+
#### clash_mode
222+
223+
匹配 Clash 模式。
224+
220225
#### invert
221226

222227
反选匹配结果。

docs/configuration/shared/tls.md

+56-10
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,6 @@
3030
}
3131
```
3232

33-
!!! warning ""
34-
35-
ACME is not included by default, see [Installation](/#installation).
36-
3733
### Outbound
3834

3935
```json
@@ -47,7 +43,17 @@
4743
"max_version": "",
4844
"cipher_suites": [],
4945
"certificate": "",
50-
"certificate_path": ""
46+
"certificate_path": "",
47+
"ech": {
48+
"enabled": false,
49+
"pq_signature_schemes_enabled": false,
50+
"dynamic_record_sizing_disabled": false,
51+
"config": ""
52+
},
53+
"utls": {
54+
"enabled": false,
55+
"fingerprint": ""
56+
}
5157
}
5258
```
5359

@@ -155,8 +161,48 @@ The server private key, in PEM format.
155161

156162
The path to the server private key, in PEM format.
157163

164+
#### ech
165+
166+
==Client only==
167+
168+
!!! warning ""
169+
170+
ECH is not included by default, see [Installation](/#installation).
171+
172+
ECH (Encrypted Client Hello) is a TLS extension that allows a client to encrypt the first part of its ClientHello
173+
message.
174+
175+
If you don't know how to fill in the other configuration, just set `enabled`.
176+
177+
#### utls
178+
179+
==Client only==
180+
181+
!!! warning ""
182+
183+
uTLS is not included by default, see [Installation](/#installation).
184+
185+
!!! note ""
186+
187+
uTLS is poorly maintained and the effect may be unproven, use at your own risk.
188+
189+
uTLS is a fork of "crypto/tls", which provides ClientHello fingerprinting resistance.
190+
191+
Available fingerprint values:
192+
193+
* chrome
194+
* firefox
195+
* ios
196+
* android
197+
* random
198+
199+
158200
### ACME Fields
159201

202+
!!! warning ""
203+
204+
ACME is not included by default, see [Installation](/#installation).
205+
160206
#### domain
161207

162208
List of domain.
@@ -205,10 +251,6 @@ listener for the HTTP challenge.
205251
The alternate port to use for the ACME TLS-ALPN challenge; the system must forward 443 to this port for challenge to
206252
succeed.
207253

208-
### Reload
209-
210-
For server configuration, certificate and key will be automatically reloaded if modified.
211-
212254
#### external_account
213255

214256
EAB (External Account Binding) contains information necessary to bind or map an ACME account to some other account known
@@ -226,4 +268,8 @@ The key identifier.
226268

227269
#### external_account.mac_key
228270

229-
The MAC key.
271+
The MAC key.
272+
273+
### Reload
274+
275+
For server configuration, certificate and key will be automatically reloaded if modified.

0 commit comments

Comments
 (0)