meta-json-schema 1.18.3-beta → 1.18.4-beta2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -32,7 +32,7 @@
32
32
  "type": "object",
33
33
  "title": "前置代理节点配置",
34
34
  "properties": {
35
- "prepend-proxies": { "title": "prepend-proxies", "$ref": "#/definitions/proxies" }
35
+ "prepend-proxies": { "title": "前置代理节点配置", "$ref": "#/definitions/proxies" }
36
36
  }
37
37
  },
38
38
  {
@@ -18,7 +18,7 @@
18
18
  "errorMessage": "无效的IPv4地址"
19
19
  },
20
20
  "ipv4Port": {
21
- "pattern": "^(?:(?:[1-9]?[0-9]|1[0-9][0-9]|2(?:[0-4][0-9]|5[0-5]))\\.){3}(?:[1-9]?[0-9]|1[0-9][0-9]|2(?:[0-4][0-9]|5[0-5])):(?:[0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-5]{2}[0-3][0-5])$",
21
+ "pattern": "^((?:(?:[1-9]?[0-9]|1[0-9][0-9]|2(?:[0-4][0-9]|5[0-5]))\\.){3}(?:[1-9]?[0-9]|1[0-9][0-9]|2(?:[0-4][0-9]|5[0-5])))?:(?:[0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-5]{2}[0-3][0-5])$",
22
22
  "errorMessage": "无效的IPv4地址:端口"
23
23
  },
24
24
  "ipv4CIDR": {
@@ -30,7 +30,7 @@
30
30
  "errorMessage": "无效的IPv6地址"
31
31
  },
32
32
  "ipv6Port": {
33
- "pattern": "^\\[([0-9a-fA-F]{1,4}(?::[0-9a-fA-F]{1,4}){7}|::|:(?::[0-9a-fA-F]{1,4}){1,6}|[0-9a-fA-F]{1,4}:(?::[0-9a-fA-F]{1,4}){1,5}|(?:[0-9a-fA-F]{1,4}:){2}(?::[0-9a-fA-F]{1,4}){1,4}|(?:[0-9a-fA-F]{1,4}:){3}(?::[0-9a-fA-F]{1,4}){1,3}|(?:[0-9a-fA-F]{1,4}:){4}(?::[0-9a-fA-F]{1,4}){1,2}|(?:[0-9a-fA-F]{1,4}:){5}:[0-9a-fA-F]{1,4}|(?:[0-9a-fA-F]{1,4}:){1,6}:)\\]:(?:[0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-5]{2}[0-3][0-5])$",
33
+ "pattern": "^(\\[([0-9a-fA-F]{1,4}(?::[0-9a-fA-F]{1,4}){7}|::|:(?::[0-9a-fA-F]{1,4}){1,6}|[0-9a-fA-F]{1,4}:(?::[0-9a-fA-F]{1,4}){1,5}|(?:[0-9a-fA-F]{1,4}:){2}(?::[0-9a-fA-F]{1,4}){1,4}|(?:[0-9a-fA-F]{1,4}:){3}(?::[0-9a-fA-F]{1,4}){1,3}|(?:[0-9a-fA-F]{1,4}:){4}(?::[0-9a-fA-F]{1,4}){1,2}|(?:[0-9a-fA-F]{1,4}:){5}:[0-9a-fA-F]{1,4}|(?:[0-9a-fA-F]{1,4}:){1,6}:)\\])?:(?:[0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-5]{2}[0-3][0-5])$",
34
34
  "errorMessage": "无效的[IPv6地址]:端口"
35
35
  },
36
36
  "ipv6CIDR": {
@@ -1,155 +1,70 @@
1
1
  {
2
2
  "stringArray": {
3
- "anyOf": [
4
- {
5
- "type": "array",
6
- "items": { "$ref": "compatible.json#/string" }
7
- },
8
- { "$ref": "compatible.json#/string" }
9
- ]
3
+ "type": "array",
4
+ "items": { "$ref": "compatible.json#/string" }
10
5
  },
11
6
  "portArray": {
12
- "anyOf": [
13
- {
14
- "type": "array",
15
- "items": { "$ref": "patterns.json#/port" }
16
- },
17
- { "$ref": "patterns.json#/port" }
18
- ]
7
+ "type": "array",
8
+ "items": { "$ref": "patterns.json#/port" }
19
9
  },
20
10
  "portRangeArray": {
21
- "anyOf": [
22
- {
23
- "type": "array",
24
- "items": { "$ref": "patterns.json#/portRange" }
25
- },
26
- { "$ref": "patterns.json#/portRange" }
27
- ]
11
+ "type": "array",
12
+ "items": { "$ref": "patterns.json#/portRange" }
28
13
  },
29
14
  "ipv4Array": {
30
- "anyOf": [
31
- {
32
- "type": "array",
33
- "items": { "$ref": "patterns.json#/ipv4" }
34
- },
35
- { "$ref": "patterns.json#/ipv4" }
36
- ]
15
+ "type": "array",
16
+ "items": { "$ref": "patterns.json#/ipv4" }
37
17
  },
38
18
  "ipv4PortArray": {
39
- "anyOf": [
40
- {
41
- "type": "array",
42
- "items": { "$ref": "patterns.json#/ipv4Port" }
43
- },
44
- { "$ref": "patterns.json#/ipv4Port" }
45
- ]
19
+ "type": "array",
20
+ "items": { "$ref": "patterns.json#/ipv4Port" }
46
21
  },
47
22
  "ipv4CIDRArray": {
48
- "anyOf": [
49
- {
50
- "type": "array",
51
- "items": { "$ref": "patterns.json#/ipv4CIDR" }
52
- },
53
- { "$ref": "patterns.json#/ipv4CIDR" }
54
- ]
23
+ "type": "array",
24
+ "items": { "$ref": "patterns.json#/ipv4CIDR" }
55
25
  },
56
26
  "ipv6Array": {
57
- "anyOf": [
58
- {
59
- "type": "array",
60
- "items": { "$ref": "patterns.json#/ipv6" }
61
- },
62
- { "$ref": "patterns.json#/ipv6" }
63
- ]
27
+ "type": "array",
28
+ "items": { "$ref": "patterns.json#/ipv6" }
64
29
  },
65
30
  "ipv6PortArray": {
66
- "anyOf": [
67
- {
68
- "type": "array",
69
- "items": { "$ref": "patterns.json#/ipv6Port" }
70
- },
71
- { "$ref": "patterns.json#/ipv6Port" }
72
- ]
31
+ "type": "array",
32
+ "items": { "$ref": "patterns.json#/ipv6Port" }
73
33
  },
74
34
  "ipv6CIDRArray": {
75
- "anyOf": [
76
- {
77
- "type": "array",
78
- "items": { "$ref": "patterns.json#/ipv6CIDR" }
79
- },
80
- { "$ref": "patterns.json#/ipv6CIDR" }
81
- ]
35
+ "type": "array",
36
+ "items": { "$ref": "patterns.json#/ipv6CIDR" }
82
37
  },
83
38
  "ipArray": {
84
- "anyOf": [
85
- {
86
- "type": "array",
87
- "items": { "$ref": "patterns.json#/ip" }
88
- },
89
- { "$ref": "patterns.json#/ip" }
90
- ]
39
+ "type": "array",
40
+ "items": { "$ref": "patterns.json#/ip" }
91
41
  },
92
42
  "ipPortArray": {
93
- "anyOf": [
94
- {
95
- "type": "array",
96
- "items": { "$ref": "patterns.json#/ipPort" }
97
- },
98
- { "$ref": "patterns.json#/ipPort" }
99
- ]
43
+ "type": "array",
44
+ "items": { "$ref": "patterns.json#/ipPort" }
100
45
  },
101
46
  "ipCIDRArray": {
102
- "anyOf": [
103
- {
104
- "type": "array",
105
- "items": { "$ref": "patterns.json#/ipCIDR" }
106
- },
107
- { "$ref": "patterns.json#/ipCIDR" }
108
- ]
47
+ "type": "array",
48
+ "items": { "$ref": "patterns.json#/ipCIDR" }
109
49
  },
110
50
  "serverArray": {
111
- "anyOf": [
112
- {
113
- "type": "array",
114
- "items": { "$ref": "patterns.json#/server" }
115
- },
116
- { "$ref": "patterns.json#/server" }
117
- ]
51
+ "type": "array",
52
+ "items": { "$ref": "patterns.json#/server" }
118
53
  },
119
54
  "domainArray": {
120
- "anyOf": [
121
- {
122
- "type": "array",
123
- "items": { "$ref": "patterns.json#/domain" }
124
- },
125
- { "$ref": "patterns.json#/domain" }
126
- ]
55
+ "type": "array",
56
+ "items": { "$ref": "patterns.json#/domain" }
127
57
  },
128
58
  "domainWildcardArray": {
129
- "anyOf": [
130
- {
131
- "type": "array",
132
- "items": { "$ref": "patterns.json#/domainWildcard" }
133
- },
134
- { "$ref": "patterns.json#/domainWildcard" }
135
- ]
59
+ "type": "array",
60
+ "items": { "$ref": "patterns.json#/domainWildcard" }
136
61
  },
137
62
  "urlArray": {
138
- "anyOf": [
139
- {
140
- "type": "array",
141
- "items": { "$ref": "patterns.json#/url" }
142
- },
143
- { "$ref": "patterns.json#/url" }
144
- ]
63
+ "type": "array",
64
+ "items": { "$ref": "patterns.json#/url" }
145
65
  },
146
66
  "httpUrlArray": {
147
- "anyOf": [
148
- {
149
- "type": "array",
150
- "items": { "$ref": "patterns.json#/httpUrl" }
151
- },
152
- { "$ref": "patterns.json#/httpUrl" }
153
- ]
67
+ "type": "array",
68
+ "items": { "$ref": "patterns.json#/httpUrl" }
154
69
  }
155
70
  }
@@ -2,6 +2,7 @@
2
2
  "type": "object",
3
3
  "title": "健康检查",
4
4
  "definitions": {
5
+ "compatible": { "$ref": "../../../definitions/compatible.json" },
5
6
  "types": { "$ref": "../../../definitions/types.json" },
6
7
  "patterns": { "$ref": "../../../definitions/patterns.json" },
7
8
  "enums": { "$ref": "../../../definitions/enums.json" }
@@ -22,18 +23,18 @@
22
23
  "default": "https://www.gstatic.com/generate_204"
23
24
  },
24
25
  "interval": {
25
- "type": "integer",
26
+ "$ref": "#/definitions/compatible/string",
26
27
  "title": "健康检查间隔",
27
- "description": "单位:s",
28
- "markdownDescription": "单位:s",
29
- "default": 300
28
+ "description": "格式: <时长>[ms或s(默认:s)]",
29
+ "markdownDescription": "格式: <时长>[ms或s(默认:s)]",
30
+ "default": "300"
30
31
  },
31
32
  "timeout": {
32
- "type": "integer",
33
+ "$ref": "#/definitions/compatible/string",
33
34
  "title": "健康检查超时",
34
- "description": "单位:ms",
35
- "markdownDescription": "单位:ms",
36
- "default": 5000
35
+ "description": "格式: <时长>[ms或s(默认:ms)]",
36
+ "markdownDescription": "格式: <时长>[ms或s(默认:ms)]",
37
+ "default": "5000"
37
38
  },
38
39
  "lazy": {
39
40
  "type": "boolean",
@@ -18,6 +18,12 @@
18
18
  "description": "可以使用RESTful API over HTTPS来控制内核",
19
19
  "markdownDescription": "可以使用RESTful API over HTTPS来控制内核"
20
20
  },
21
+ "external-controller-unix": {
22
+ "type": "string",
23
+ "title": "外部控制器(Unix Socket)监听地址",
24
+ "description": "从Unix Socket访问api接口不会验证secret,如果开启请自行保证安全问题(Windows版本大于17063也可以使用,即大于等于1803/RS4版本即可使用)",
25
+ "markdownDescription": "从Unix Socket访问api接口不会验证secret,如果开启请自行保证安全问题(Windows版本大于17063也可以使用,即大于等于1803/RS4版本即可使用)"
26
+ },
21
27
  "external-ui": {
22
28
  "type": "string",
23
29
  "title": "外部用户界面路径(默认:工作目录/ui)",
@@ -90,7 +90,7 @@
90
90
  "$ref": "#/definitions/types/stringArray",
91
91
  "title": "DNS污染GeoSite列表",
92
92
  "description": "这些GeoSite的结果会被视为污染,将采用fallback的解析结果",
93
- "markdownDescription": "这些[GeoSite](https://github.com/v2ray/domain-list-community/tree/master/data)的结果会被视为污染,将采用`fallback`的解析结果",
93
+ "markdownDescription": "这些[GeoSite](https://github.com/MetaCubeX/meta-rules-dat/tree/meta/geo/geosite)的结果会被视为污染,将采用`fallback`的解析结果",
94
94
  "deprecationMessage": "使用nameserver-policy代替geosite(geosite将在未来移除)"
95
95
  }
96
96
  }
@@ -10,22 +10,20 @@
10
10
  "type": "boolean",
11
11
  "title": "quic-go禁用GSO",
12
12
  "description": "quic禁用GSO(Generic Segmentation Offload)通用分段卸载,可能会导致Linux平台上的性能下降(等价于环境变量QUIC_GO_DISABLE_GSO=1)",
13
- "markdownDescription": "quic禁用`GSO`(Generic Segmentation Offload)通用分段卸载,可能会导致Linux平台上的性能下降(等价于环境变量`QUIC_GO_DISABLE_GSO=1`)",
14
- "default": false
13
+ "markdownDescription": "quic禁用`GSO`(Generic Segmentation Offload)通用分段卸载,可能会导致Linux平台上的性能下降(等价于环境变量`QUIC_GO_DISABLE_GSO=1`)"
15
14
  },
16
15
  "quic-go-disable-ecn": {
17
16
  "type": "boolean",
18
17
  "title": "quic-go禁用ECN",
19
18
  "description": "quic禁用ECN(Explicit Congestion Notification)显式拥塞通知(等价于环境变量QUIC_GO_DISABLE_ECN=1)",
20
19
  "markdownDescription": "quic禁用`ECN`(Explicit Congestion Notification)显式拥塞通知(等价于环境变量QUIC_GO_DISABLE_ECN=1)",
21
- "default": false
20
+ "default": true
22
21
  },
23
22
  "dialer-ip4p-convert": {
24
23
  "type": "boolean",
25
24
  "title": "启用IP4P地址转换",
26
25
  "description": "NATMap可以打通运营商完全锥型NAT网关的端口,使得通过运营商网关的公网IP:端口能够访问到用户内网的服务。",
27
- "markdownDescription": "`NATMap`可以打通运营商完全锥型NAT网关的端口,使得通过运营商网关的公网IP:端口能够访问到用户内网的服务。",
28
- "default": false
26
+ "markdownDescription": "`NATMap`可以打通运营商完全锥型NAT网关的端口,使得通过运营商网关的公网IP:端口能够访问到用户内网的服务。"
29
27
  }
30
28
  }
31
29
  }
@@ -76,11 +76,20 @@
76
76
  "markdownDescription": "需要启用`allow-lan`(优先级高于`lan-allowed-ips`)"
77
77
  },
78
78
  "bind-address": {
79
- "$ref": "#/definitions/patterns/ipPort",
80
- "title": "绑定地址",
81
- "description": "仅允许其他设备通过这个地址访问(*绑定所有IP地址)",
82
- "markdownDescription": "仅允许其他设备通过这个地址访问(*绑定所有IP地址)",
83
- "default": "*"
79
+ "anyOf": [
80
+ {
81
+ "const": "*",
82
+ "title": "绑定所有 IP 地址",
83
+ "description": "允许其他设备通过所有地址访问",
84
+ "markdownDescription": "允许其他设备通过所有地址访问"
85
+ },
86
+ {
87
+ "$ref": "#/definitions/patterns/ipPort",
88
+ "title": "绑定单个 IP 地址",
89
+ "description": "仅允许其他设备通过这个地址访问",
90
+ "markdownDescription": "仅允许其他设备通过这个地址访问"
91
+ }
92
+ ]
84
93
  },
85
94
  "inbound-tfo": {
86
95
  "type": "boolean",
@@ -83,7 +83,7 @@
83
83
  "type": "object",
84
84
  "properties": {
85
85
  "ports": {
86
- "$ref": "#/definitions/types/portArray",
86
+ "$ref": "#/definitions/types/portRangeArray",
87
87
  "description": "嗅探端口列表"
88
88
  },
89
89
  "override-destination": {
@@ -2449,7 +2449,7 @@ proxy-groups:
2449
2449
  type: load-balance
2450
2450
  strategy: round-robin
2451
2451
  lazy: true
2452
- interval: 60
2452
+ interval: 60s
2453
2453
  timeout: 2000
2454
2454
  url: https://www.google.com/gen_204
2455
2455
  max-failed-times: 3