diff --git a/luci-app-fchomo/Makefile b/luci-app-fchomo/Makefile
index 531b5e80..e2e6d847 100644
--- a/luci-app-fchomo/Makefile
+++ b/luci-app-fchomo/Makefile
@@ -12,7 +12,7 @@ LUCI_DEPENDS:= \
+firewall4 \
+kmod-inet-diag \
+kmod-nft-tproxy \
- +yq +wget-ssl \
+ +yq +wget-ssl +coreutils-timeout \
# +ip-full +kmod-tun +dnsmasq-full \
PKG_NAME:=luci-app-fchomo
diff --git a/luci-app-fchomo/htdocs/luci-static/resources/fchomo.js b/luci-app-fchomo/htdocs/luci-static/resources/fchomo.js
index e76ad279..961ef52a 100644
--- a/luci-app-fchomo/htdocs/luci-static/resources/fchomo.js
+++ b/luci-app-fchomo/htdocs/luci-static/resources/fchomo.js
@@ -208,6 +208,15 @@ return baseclass.extend({
'2022-blake3-chacha20-poly1305': 32
},
+ stunserver: [
+ ['stun.fitauto.ru:3478'],
+ ['stun.hot-chilli.net:3478'],
+ ['stun.pure-ip.com:3478'],
+ ['stun.voipgate.com:3478'],
+ ['stun.voipia.net:3478'],
+ ['stunserver2024.stunprotocol.org:3478']
+ ],
+
tls_client_fingerprints: [
['chrome'],
['firefox'],
diff --git a/luci-app-fchomo/htdocs/luci-static/resources/view/fchomo/global.js b/luci-app-fchomo/htdocs/luci-static/resources/view/fchomo/global.js
index b4be49b2..d6d60a87 100644
--- a/luci-app-fchomo/htdocs/luci-static/resources/view/fchomo/global.js
+++ b/luci-app-fchomo/htdocs/luci-static/resources/view/fchomo/global.js
@@ -1,5 +1,6 @@
'use strict';
'require form';
+'require fs';
'require network';
'require poll';
'require rpc';
@@ -25,6 +26,16 @@ const callCrondSet = rpc.declare({
expect: { '': {} }
});
+function getRandom(min, max) {
+ const floatRandom = Math.random()
+ const difference = max - min
+
+ // A random number between 0 and the difference
+ const random = Math.round(difference * floatRandom)
+
+ return random + min
+}
+
function handleResUpdate(type, repo) {
const callResUpdate = rpc.declare({
object: 'luci.fchomo',
@@ -95,6 +106,43 @@ function updateResVersion(El, version) {
return El;
}
+function renderNATBehaviorTest(El) {
+ var resEl = E('div', { 'class': 'control-group' }, [
+ E('select', {
+ 'id': '_status_nattest_l4proto',
+ 'class': 'cbi-input-select',
+ 'style': 'width: 5em'
+ }, [
+ E('option', { 'value': 'udp' }, 'UDP'),
+ E('option', { 'value': 'tcp' }, 'TCP')
+ ]),
+ E('button', {
+ 'class': 'cbi-button cbi-button-apply',
+ 'click': ui.createHandlerFn(this, function() {
+ var stun = this.formvalue(this.section.section);
+ var l4proto = document.getElementById('_status_nattest_l4proto').value;
+ var l4proto_idx = document.getElementById('_status_nattest_l4proto').selectedIndex;
+
+ return fs.exec_direct('/etc/fchomo/scripts/natcheck.sh', [stun, l4proto, getRandom(32768, 61000)]).then((stdout) => {
+ this.description = '' + _('Expand/Collapse result') + '
' + stdout + ' ';
+
+ return this.map.reset().then((res) => {
+ document.getElementById('_status_nattest_l4proto').selectedIndex = l4proto_idx;
+ });
+ });
+ })
+ }, [ _('Check') ])
+ ]);
+
+ let newEl = E('div', { style: 'font-weight: bold; align-items: center; display: flex' }, []);
+ if (El) {
+ newEl.appendChild(E([El, resEl]));
+ } else
+ newEl.appendChild(resEl);
+
+ return newEl;
+}
+
return view.extend({
load: function() {
return Promise.all([
@@ -198,6 +246,29 @@ return view.extend({
]);
}
+ so = ss.option(form.Value, '_nattest', _('Check routerself NAT Behavior'));
+ so.default = hm.stunserver[0][0];
+ hm.stunserver.forEach((res) => {
+ so.value.apply(so, res);
+ })
+ so.rmempty = false;
+ if (!features.hm_has_stunclient) {
+ so.description = _('To check NAT Behavior you need to install stuntman-client first')
+ .format('https://github.com/muink/openwrt-stuntman');
+ so.readonly = true;
+ } else {
+ so.renderWidget = function(/* ... */) {
+ var El = form.Value.prototype.renderWidget.apply(this, arguments);
+
+ return renderNATBehaviorTest.call(this, El);
+ }
+ }
+ so.onchange = function(ev, section_id, value) {
+ this.default = value;
+ }
+ so.write = function() {};
+ so.remove = function() {};
+
/* Resources management */
o = s.taboption('status', form.SectionValue, '_config', form.NamedSection, 'resources', 'fchomo', _('Resources management'));
ss = o.subsection;
@@ -248,7 +319,7 @@ return view.extend({
so.renderWidget = function(/* ... */) {
var El = form.ListValue.prototype.renderWidget.apply(this, arguments);
- El.className = 'control-group';
+ El.classList.add('control-group');
El.firstChild.style.width = '10em';
return renderResVersion.call(this, El, 'dashboard', this.default);
diff --git a/luci-app-fchomo/po/templates/fchomo.pot b/luci-app-fchomo/po/templates/fchomo.pot
index 5212f5ce..bb3246ab 100644
--- a/luci-app-fchomo/po/templates/fchomo.pot
+++ b/luci-app-fchomo/po/templates/fchomo.pot
@@ -5,17 +5,17 @@ msgstr "Content-Type: text/plain; charset=UTF-8"
msgid "%s log"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:431
-#: htdocs/luci-static/resources/fchomo.js:444
-#: htdocs/luci-static/resources/fchomo.js:457
-#: htdocs/luci-static/resources/fchomo.js:471
+#: htdocs/luci-static/resources/fchomo.js:440
+#: htdocs/luci-static/resources/fchomo.js:453
+#: htdocs/luci-static/resources/fchomo.js:466
+#: htdocs/luci-static/resources/fchomo.js:480
#: htdocs/luci-static/resources/view/fchomo/client.js:289
-#: htdocs/luci-static/resources/view/fchomo/client.js:503
-#: htdocs/luci-static/resources/view/fchomo/client.js:517
-#: htdocs/luci-static/resources/view/fchomo/client.js:986
-#: htdocs/luci-static/resources/view/fchomo/global.js:470
-#: htdocs/luci-static/resources/view/fchomo/node.js:1167
-#: htdocs/luci-static/resources/view/fchomo/node.js:1168
+#: htdocs/luci-static/resources/view/fchomo/client.js:510
+#: htdocs/luci-static/resources/view/fchomo/client.js:524
+#: htdocs/luci-static/resources/view/fchomo/client.js:1000
+#: htdocs/luci-static/resources/view/fchomo/global.js:541
+#: htdocs/luci-static/resources/view/fchomo/node.js:1185
+#: htdocs/luci-static/resources/view/fchomo/node.js:1186
msgid "-- Please choose --"
msgstr ""
@@ -40,48 +40,48 @@ msgstr ""
msgid "Save your configuration before uploading files!"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:458
+#: htdocs/luci-static/resources/view/fchomo/global.js:529
msgid "API"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:499
+#: htdocs/luci-static/resources/view/fchomo/global.js:570
msgid "API DoH service"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:490
+#: htdocs/luci-static/resources/view/fchomo/global.js:561
msgid "API HTTP port"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:494
+#: htdocs/luci-static/resources/view/fchomo/global.js:565
msgid "API HTTPS port"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:448
+#: htdocs/luci-static/resources/view/fchomo/global.js:519
msgid "API TLS certificate path"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:452
+#: htdocs/luci-static/resources/view/fchomo/global.js:523
msgid "API TLS private key path"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:503
+#: htdocs/luci-static/resources/view/fchomo/global.js:574
msgid "API secret"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:273
+#: htdocs/luci-static/resources/view/fchomo/global.js:344
msgid "ASN version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:577
-#: htdocs/luci-static/resources/view/fchomo/global.js:627
+#: htdocs/luci-static/resources/view/fchomo/global.js:648
+#: htdocs/luci-static/resources/view/fchomo/global.js:698
msgid "Access Control"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:954
+#: htdocs/luci-static/resources/view/fchomo/client.js:968
msgid "Add a DNS policy"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:813
+#: htdocs/luci-static/resources/view/fchomo/client.js:820
msgid "Add a DNS server"
msgstr ""
@@ -93,15 +93,15 @@ msgstr ""
msgid "Add a provider"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1077
+#: htdocs/luci-static/resources/view/fchomo/node.js:1095
msgid "Add a proxy chain"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:465
+#: htdocs/luci-static/resources/view/fchomo/client.js:472
msgid "Add a proxy group"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:656
+#: htdocs/luci-static/resources/view/fchomo/client.js:663
msgid "Add a routing rule"
msgstr ""
@@ -113,34 +113,34 @@ msgstr ""
msgid "Add a server"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:726
+#: htdocs/luci-static/resources/view/fchomo/client.js:733
msgid "Add a sub rule"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:924
+#: htdocs/luci-static/resources/view/fchomo/node.js:942
msgid "Add prefix"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:927
+#: htdocs/luci-static/resources/view/fchomo/node.js:945
msgid "Add suffix"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:827
-#: htdocs/luci-static/resources/view/fchomo/client.js:832
+#: htdocs/luci-static/resources/view/fchomo/client.js:834
+#: htdocs/luci-static/resources/view/fchomo/client.js:839
msgid "Address"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:630
-#: htdocs/luci-static/resources/view/fchomo/global.js:674
+#: htdocs/luci-static/resources/view/fchomo/global.js:701
+#: htdocs/luci-static/resources/view/fchomo/global.js:745
msgid "All allowed"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:660
-#: htdocs/luci-static/resources/view/fchomo/global.js:667
+#: htdocs/luci-static/resources/view/fchomo/global.js:731
+#: htdocs/luci-static/resources/view/fchomo/global.js:738
msgid "All ports"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:486
+#: htdocs/luci-static/resources/view/fchomo/global.js:557
msgid ""
"Allow access from private network.To access the API on a private "
"network from a public website, it must be enabled."
@@ -150,11 +150,11 @@ msgstr ""
msgid "Allowed IPs"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:58
+#: htdocs/luci-static/resources/view/fchomo/global.js:69
msgid "Already at the latest version."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:55
+#: htdocs/luci-static/resources/view/fchomo/global.js:66
msgid "Already in updating."
msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
msgid "Alter ID"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:144
+#: htdocs/luci-static/resources/view/fchomo/global.js:192
msgid "Application version"
msgstr ""
@@ -175,7 +175,7 @@ msgstr ""
msgid "Authenticated length"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:304
+#: htdocs/luci-static/resources/view/fchomo/global.js:375
msgid "Auto"
msgstr ""
@@ -183,11 +183,11 @@ msgstr ""
msgid "Auto configure firewall"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:212
+#: htdocs/luci-static/resources/view/fchomo/global.js:283
msgid "Auto update"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:213
+#: htdocs/luci-static/resources/view/fchomo/global.js:284
msgid "Auto update resources."
msgstr ""
@@ -195,7 +195,7 @@ msgstr ""
msgid "Baidu"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:409
+#: htdocs/luci-static/resources/view/fchomo/global.js:480
msgid "Based on google/gvisor."
msgstr ""
@@ -212,25 +212,25 @@ msgstr ""
msgid "Binary format only supports domain / ipcidr"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:550
-#: htdocs/luci-static/resources/view/fchomo/global.js:591
+#: htdocs/luci-static/resources/view/fchomo/client.js:557
+#: htdocs/luci-static/resources/view/fchomo/global.js:662
#: htdocs/luci-static/resources/view/fchomo/node.js:775
-#: htdocs/luci-static/resources/view/fchomo/node.js:986
+#: htdocs/luci-static/resources/view/fchomo/node.js:1004
msgid "Bind interface"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:551
+#: htdocs/luci-static/resources/view/fchomo/client.js:558
#: htdocs/luci-static/resources/view/fchomo/node.js:776
-#: htdocs/luci-static/resources/view/fchomo/node.js:987
+#: htdocs/luci-static/resources/view/fchomo/node.js:1005
msgid "Bind outbound interface."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:592
+#: htdocs/luci-static/resources/view/fchomo/global.js:663
msgid ""
"Bind outbound traffic to specific interface. Leave empty to auto detect."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:632
+#: htdocs/luci-static/resources/view/fchomo/global.js:703
msgid "Black list"
msgstr ""
@@ -238,27 +238,27 @@ msgstr ""
msgid "Block DNS queries"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:764
+#: htdocs/luci-static/resources/view/fchomo/client.js:771
msgid "Boot DNS server"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:771
+#: htdocs/luci-static/resources/view/fchomo/client.js:778
msgid "Boot DNS server (Node)"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:675
+#: htdocs/luci-static/resources/view/fchomo/global.js:746
msgid "Bypass CN"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:481
+#: htdocs/luci-static/resources/view/fchomo/global.js:552
msgid "CORS Allow origins"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:485
+#: htdocs/luci-static/resources/view/fchomo/global.js:556
msgid "CORS Allow private network"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:482
+#: htdocs/luci-static/resources/view/fchomo/global.js:553
msgid "CORS allowed origins, *
will be used if empty."
msgstr ""
@@ -279,33 +279,38 @@ msgstr ""
msgid "Certificate path"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1119
-#: htdocs/luci-static/resources/view/fchomo/node.js:1125
+#: htdocs/luci-static/resources/view/fchomo/node.js:1137
+#: htdocs/luci-static/resources/view/fchomo/node.js:1143
msgid "Chain head"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1166
-#: htdocs/luci-static/resources/view/fchomo/node.js:1173
+#: htdocs/luci-static/resources/view/fchomo/node.js:1184
+#: htdocs/luci-static/resources/view/fchomo/node.js:1191
msgid "Chain tail"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:194
+#: htdocs/luci-static/resources/view/fchomo/global.js:134
+#: htdocs/luci-static/resources/view/fchomo/global.js:242
msgid "Check"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:75
+#: htdocs/luci-static/resources/view/fchomo/global.js:249
+msgid "Check routerself NAT Behavior"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/global.js:86
msgid "Check update"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:276
+#: htdocs/luci-static/resources/view/fchomo/global.js:347
msgid "China IPv4 list version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:279
+#: htdocs/luci-static/resources/view/fchomo/global.js:350
msgid "China IPv6 list version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:285
+#: htdocs/luci-static/resources/view/fchomo/global.js:356
msgid "China list version"
msgstr ""
@@ -327,7 +332,7 @@ msgstr ""
msgid "Client fingerprint"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:149
+#: htdocs/luci-static/resources/view/fchomo/global.js:197
msgid "Client status"
msgstr ""
@@ -335,21 +340,21 @@ msgstr ""
msgid "Collecting data..."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:662
-#: htdocs/luci-static/resources/view/fchomo/global.js:669
+#: htdocs/luci-static/resources/view/fchomo/global.js:733
+#: htdocs/luci-static/resources/view/fchomo/global.js:740
msgid "Common and STUN ports"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:661
-#: htdocs/luci-static/resources/view/fchomo/global.js:668
+#: htdocs/luci-static/resources/view/fchomo/global.js:732
+#: htdocs/luci-static/resources/view/fchomo/global.js:739
msgid "Common ports only (bypass P2P traffic)"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:640
+#: htdocs/luci-static/resources/fchomo.js:649
msgid "Complete"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:941
+#: htdocs/luci-static/resources/view/fchomo/node.js:959
msgid "Configuration Items"
msgstr ""
@@ -358,17 +363,18 @@ msgstr ""
msgid "Congestion controller"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:170
+#: htdocs/luci-static/resources/view/fchomo/global.js:218
msgid "Connection check"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:867
+#: htdocs/luci-static/resources/view/fchomo/node.js:870
+#: htdocs/luci-static/resources/view/fchomo/node.js:891
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:273
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:294
msgid "Content will not be verified, Please make sure you enter it correctly."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:859
+#: htdocs/luci-static/resources/view/fchomo/node.js:862
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:265
msgid "Contents"
msgstr ""
@@ -377,23 +383,23 @@ msgstr ""
msgid "Contents have been saved."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:139
+#: htdocs/luci-static/resources/view/fchomo/global.js:187
msgid "Core version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:225
+#: htdocs/luci-static/resources/view/fchomo/global.js:296
msgid "Cron expression"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:691
+#: htdocs/luci-static/resources/view/fchomo/global.js:762
msgid "Custom Direct List"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:908
+#: htdocs/luci-static/resources/view/fchomo/node.js:926
msgid "Custom HTTP header."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:716
+#: htdocs/luci-static/resources/view/fchomo/global.js:787
msgid "Custom Proxy List"
msgstr ""
@@ -406,31 +412,31 @@ msgstr ""
msgid "DIRECT"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:944
-#: htdocs/luci-static/resources/view/fchomo/client.js:954
+#: htdocs/luci-static/resources/view/fchomo/client.js:958
+#: htdocs/luci-static/resources/view/fchomo/client.js:968
msgid "DNS policy"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:374
+#: htdocs/luci-static/resources/view/fchomo/global.js:445
msgid "DNS port"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:803
-#: htdocs/luci-static/resources/view/fchomo/client.js:813
-#: htdocs/luci-static/resources/view/fchomo/client.js:999
+#: htdocs/luci-static/resources/view/fchomo/client.js:810
+#: htdocs/luci-static/resources/view/fchomo/client.js:820
+#: htdocs/luci-static/resources/view/fchomo/client.js:1013
#: htdocs/luci-static/resources/view/fchomo/node.js:402
msgid "DNS server"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:750
+#: htdocs/luci-static/resources/view/fchomo/client.js:757
msgid "DNS settings"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:243
+#: htdocs/luci-static/resources/view/fchomo/global.js:314
msgid "Dashboard version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:313
+#: htdocs/luci-static/resources/view/fchomo/global.js:384
msgid "Debug"
msgstr ""
@@ -442,7 +448,7 @@ msgstr ""
msgid "Default DNS (issued by WAN)"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:778
+#: htdocs/luci-static/resources/view/fchomo/client.js:785
msgid "Default DNS server"
msgstr ""
@@ -454,38 +460,38 @@ msgstr ""
msgid "Dial fields"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1134
-#: htdocs/luci-static/resources/view/fchomo/node.js:1182
+#: htdocs/luci-static/resources/view/fchomo/node.js:1152
+#: htdocs/luci-static/resources/view/fchomo/node.js:1200
msgid "Different chain head/tail"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:297
+#: htdocs/luci-static/resources/view/fchomo/global.js:368
msgid "Direct"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:634
+#: htdocs/luci-static/resources/view/fchomo/global.js:705
msgid "Direct IPv4 IP-s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:637
+#: htdocs/luci-static/resources/view/fchomo/global.js:708
msgid "Direct IPv6 IP-s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:640
+#: htdocs/luci-static/resources/view/fchomo/global.js:711
msgid "Direct MAC-s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:305
+#: htdocs/luci-static/resources/view/fchomo/global.js:376
#: htdocs/luci-static/resources/view/fchomo/node.js:116
#: htdocs/luci-static/resources/view/fchomo/server.js:177
msgid "Disable"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:568
+#: htdocs/luci-static/resources/view/fchomo/global.js:639
msgid "Disable ECN of quic-go"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:565
+#: htdocs/luci-static/resources/view/fchomo/global.js:636
msgid "Disable GSO of quic-go"
msgstr ""
@@ -493,15 +499,15 @@ msgstr ""
msgid "Disable SNI"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:546
+#: htdocs/luci-static/resources/view/fchomo/client.js:553
msgid "Disable UDP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:969
-#: htdocs/luci-static/resources/view/fchomo/client.js:974
-#: htdocs/luci-static/resources/view/fchomo/client.js:1039
-#: htdocs/luci-static/resources/view/fchomo/client.js:1046
-#: htdocs/luci-static/resources/view/fchomo/client.js:1048
+#: htdocs/luci-static/resources/view/fchomo/client.js:983
+#: htdocs/luci-static/resources/view/fchomo/client.js:988
+#: htdocs/luci-static/resources/view/fchomo/client.js:1060
+#: htdocs/luci-static/resources/view/fchomo/client.js:1067
+#: htdocs/luci-static/resources/view/fchomo/client.js:1069
msgid "Domain"
msgstr ""
@@ -510,7 +516,7 @@ msgid "Donot send server name in ClientHello."
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:550
-#: htdocs/luci-static/resources/view/fchomo/node.js:974
+#: htdocs/luci-static/resources/view/fchomo/node.js:992
msgid "Donot verifying server certificate."
msgstr ""
@@ -522,11 +528,11 @@ msgstr ""
msgid "Download bandwidth in Mbps."
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:546
+#: htdocs/luci-static/resources/fchomo.js:555
msgid "Download failed: %s"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:544
+#: htdocs/luci-static/resources/fchomo.js:553
msgid "Download successful."
msgstr ""
@@ -534,15 +540,15 @@ msgstr ""
msgid "Dual stack"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:924
+#: htdocs/luci-static/resources/view/fchomo/client.js:938
msgid "ECS override"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:908
+#: htdocs/luci-static/resources/view/fchomo/client.js:922
msgid "EDNS Client Subnet"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:316
+#: htdocs/luci-static/resources/view/fchomo/global.js:387
msgid "ETag support"
msgstr ""
@@ -562,23 +568,23 @@ msgstr ""
msgid "Edit ruleset"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:857
+#: htdocs/luci-static/resources/view/fchomo/node.js:860
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:263
msgid "Editer"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:454
-#: htdocs/luci-static/resources/view/fchomo/client.js:485
-#: htdocs/luci-static/resources/view/fchomo/client.js:666
-#: htdocs/luci-static/resources/view/fchomo/client.js:736
-#: htdocs/luci-static/resources/view/fchomo/client.js:823
-#: htdocs/luci-static/resources/view/fchomo/client.js:964
-#: htdocs/luci-static/resources/view/fchomo/global.js:303
-#: htdocs/luci-static/resources/view/fchomo/global.js:540
+#: htdocs/luci-static/resources/view/fchomo/client.js:461
+#: htdocs/luci-static/resources/view/fchomo/client.js:492
+#: htdocs/luci-static/resources/view/fchomo/client.js:673
+#: htdocs/luci-static/resources/view/fchomo/client.js:743
+#: htdocs/luci-static/resources/view/fchomo/client.js:830
+#: htdocs/luci-static/resources/view/fchomo/client.js:978
+#: htdocs/luci-static/resources/view/fchomo/global.js:374
+#: htdocs/luci-static/resources/view/fchomo/global.js:611
#: htdocs/luci-static/resources/view/fchomo/node.js:51
#: htdocs/luci-static/resources/view/fchomo/node.js:833
-#: htdocs/luci-static/resources/view/fchomo/node.js:1006
-#: htdocs/luci-static/resources/view/fchomo/node.js:1087
+#: htdocs/luci-static/resources/view/fchomo/node.js:1024
+#: htdocs/luci-static/resources/view/fchomo/node.js:1105
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:199
#: htdocs/luci-static/resources/view/fchomo/server.js:84
#: htdocs/luci-static/resources/view/fchomo/server.js:108
@@ -596,7 +602,7 @@ msgstr ""
msgid "Enable 0-RTT handshake"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:571
+#: htdocs/luci-static/resources/view/fchomo/global.js:642
msgid ""
"Enable IP4P "
"conversion for outbound connections"
@@ -623,7 +629,7 @@ msgid "Enable statistic"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:464
-#: htdocs/luci-static/resources/view/fchomo/node.js:959
+#: htdocs/luci-static/resources/view/fchomo/node.js:977
msgid ""
"Enable the SUoT protocol, requires server support. Conflict with Multiplex."
msgstr ""
@@ -635,75 +641,79 @@ msgid ""
"connections, losing the ability to masquerade with HTTP/3."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:430
+#: htdocs/luci-static/resources/view/fchomo/global.js:501
msgid "Endpoint-Independent NAT"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:305
-#: htdocs/luci-static/resources/view/fchomo/client.js:991
+#: htdocs/luci-static/resources/view/fchomo/client.js:1005
msgid "Entry"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:310
+#: htdocs/luci-static/resources/view/fchomo/global.js:381
msgid "Error"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:602
+#: htdocs/luci-static/resources/view/fchomo/client.js:609
msgid ""
"Exceeding this triggers a forced health check. 5
will be used "
"if empty."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1056
+#: htdocs/luci-static/resources/view/fchomo/node.js:1074
msgid "Exclude matched node types."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:639
+#: htdocs/luci-static/resources/view/fchomo/client.js:646
msgid ""
"Exclude matched node types. Available types see here."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:634
-#: htdocs/luci-static/resources/view/fchomo/node.js:1050
+#: htdocs/luci-static/resources/view/fchomo/client.js:641
+#: htdocs/luci-static/resources/view/fchomo/node.js:1068
msgid "Exclude nodes that meet keywords or regexps."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:594
-#: htdocs/luci-static/resources/view/fchomo/node.js:1037
+#: htdocs/luci-static/resources/view/fchomo/global.js:127
+msgid "Expand/Collapse result"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/client.js:601
+#: htdocs/luci-static/resources/view/fchomo/node.js:1055
msgid "Expected HTTP code. 204
will be used if empty."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:596
-#: htdocs/luci-static/resources/view/fchomo/node.js:1039
+#: htdocs/luci-static/resources/view/fchomo/client.js:603
+#: htdocs/luci-static/resources/view/fchomo/node.js:1057
msgid "Expected status"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:570
-#: htdocs/luci-static/resources/fchomo.js:573
-#: htdocs/luci-static/resources/fchomo.js:576
-#: htdocs/luci-static/resources/fchomo.js:657
-#: htdocs/luci-static/resources/fchomo.js:665
-#: htdocs/luci-static/resources/fchomo.js:673
-#: htdocs/luci-static/resources/fchomo.js:697
-#: htdocs/luci-static/resources/fchomo.js:714
-#: htdocs/luci-static/resources/fchomo.js:717
-#: htdocs/luci-static/resources/fchomo.js:727
-#: htdocs/luci-static/resources/fchomo.js:740
-#: htdocs/luci-static/resources/fchomo.js:742
-#: htdocs/luci-static/resources/fchomo.js:755
+#: htdocs/luci-static/resources/fchomo.js:579
+#: htdocs/luci-static/resources/fchomo.js:582
+#: htdocs/luci-static/resources/fchomo.js:585
+#: htdocs/luci-static/resources/fchomo.js:666
+#: htdocs/luci-static/resources/fchomo.js:674
+#: htdocs/luci-static/resources/fchomo.js:682
+#: htdocs/luci-static/resources/fchomo.js:706
+#: htdocs/luci-static/resources/fchomo.js:723
+#: htdocs/luci-static/resources/fchomo.js:726
+#: htdocs/luci-static/resources/fchomo.js:736
+#: htdocs/luci-static/resources/fchomo.js:749
+#: htdocs/luci-static/resources/fchomo.js:751
#: htdocs/luci-static/resources/fchomo.js:764
-#: htdocs/luci-static/resources/fchomo.js:771
+#: htdocs/luci-static/resources/fchomo.js:773
#: htdocs/luci-static/resources/fchomo.js:780
-#: htdocs/luci-static/resources/fchomo.js:792
-#: htdocs/luci-static/resources/fchomo.js:795
-#: htdocs/luci-static/resources/fchomo.js:805
+#: htdocs/luci-static/resources/fchomo.js:789
+#: htdocs/luci-static/resources/fchomo.js:801
+#: htdocs/luci-static/resources/fchomo.js:804
+#: htdocs/luci-static/resources/fchomo.js:814
#: htdocs/luci-static/resources/view/fchomo/client.js:27
-#: htdocs/luci-static/resources/view/fchomo/client.js:479
-#: htdocs/luci-static/resources/view/fchomo/client.js:838
+#: htdocs/luci-static/resources/view/fchomo/client.js:486
+#: htdocs/luci-static/resources/view/fchomo/client.js:845
#: htdocs/luci-static/resources/view/fchomo/node.js:542
-#: htdocs/luci-static/resources/view/fchomo/node.js:1134
-#: htdocs/luci-static/resources/view/fchomo/node.js:1182
+#: htdocs/luci-static/resources/view/fchomo/node.js:1152
+#: htdocs/luci-static/resources/view/fchomo/node.js:1200
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:218
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:241
msgid "Expecting: %s"
@@ -714,7 +724,7 @@ msgstr ""
msgid "Expecting: only support %s."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:559
+#: htdocs/luci-static/resources/view/fchomo/global.js:630
msgid "Experimental"
msgstr ""
@@ -727,15 +737,15 @@ msgstr ""
msgid "Factor"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:598
+#: htdocs/luci-static/resources/fchomo.js:607
msgid "Failed to execute \"/etc/init.d/fchomo %s %s\" reason: %s"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:905
+#: htdocs/luci-static/resources/fchomo.js:914
msgid "Failed to upload %s, error: %s."
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:924
+#: htdocs/luci-static/resources/fchomo.js:933
msgid "Failed to upload, error: %s."
msgstr ""
@@ -743,33 +753,33 @@ msgstr ""
msgid "Fallback"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:785
-#: htdocs/luci-static/resources/view/fchomo/client.js:786
-#: htdocs/luci-static/resources/view/fchomo/client.js:797
+#: htdocs/luci-static/resources/view/fchomo/client.js:792
+#: htdocs/luci-static/resources/view/fchomo/client.js:793
+#: htdocs/luci-static/resources/view/fchomo/client.js:804
msgid "Fallback DNS server"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1018
+#: htdocs/luci-static/resources/view/fchomo/client.js:1039
msgid "Fallback filter"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:629
-#: htdocs/luci-static/resources/view/fchomo/node.js:1045
+#: htdocs/luci-static/resources/view/fchomo/client.js:636
+#: htdocs/luci-static/resources/view/fchomo/node.js:1063
msgid "Filter nodes that meet keywords or regexps."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:779
-#: htdocs/luci-static/resources/view/fchomo/client.js:796
+#: htdocs/luci-static/resources/view/fchomo/client.js:786
+#: htdocs/luci-static/resources/view/fchomo/client.js:803
msgid "Final DNS server"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:779
-#: htdocs/luci-static/resources/view/fchomo/client.js:793
+#: htdocs/luci-static/resources/view/fchomo/client.js:786
+#: htdocs/luci-static/resources/view/fchomo/client.js:800
msgid "Final DNS server (Used to Domestic-IP response)"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:786
-#: htdocs/luci-static/resources/view/fchomo/client.js:794
+#: htdocs/luci-static/resources/view/fchomo/client.js:793
+#: htdocs/luci-static/resources/view/fchomo/client.js:801
msgid "Final DNS server (Used to Overseas-IP response)"
msgstr ""
@@ -777,15 +787,15 @@ msgstr ""
msgid "Flow"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:618
+#: htdocs/luci-static/resources/view/fchomo/client.js:625
msgid ""
"For details, see %s."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:595
-#: htdocs/luci-static/resources/view/fchomo/node.js:932
-#: htdocs/luci-static/resources/view/fchomo/node.js:1038
+#: htdocs/luci-static/resources/view/fchomo/client.js:602
+#: htdocs/luci-static/resources/view/fchomo/node.js:950
+#: htdocs/luci-static/resources/view/fchomo/node.js:1056
msgid ""
"For format see %s."
@@ -795,7 +805,7 @@ msgstr ""
msgid "Force DNS remote resolution."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:519
+#: htdocs/luci-static/resources/view/fchomo/global.js:590
msgid "Forced sniffing domain"
msgstr ""
@@ -803,8 +813,9 @@ msgstr ""
msgid "Format"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:127
+#: htdocs/luci-static/resources/view/fchomo/global.js:175
#: htdocs/luci-static/resources/view/fchomo/log.js:97
+#: htdocs/luci-static/resources/view/fchomo/log.js:102
#: root/usr/share/luci/menu.d/luci-app-fchomo.json:3
msgid "FullCombo Mihomo"
msgstr ""
@@ -813,21 +824,21 @@ msgstr ""
msgid "GET"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:282
+#: htdocs/luci-static/resources/view/fchomo/global.js:353
msgid "GFW list version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:290
+#: htdocs/luci-static/resources/view/fchomo/global.js:361
msgid "General"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:470
+#: htdocs/luci-static/resources/view/fchomo/client.js:477
#: htdocs/luci-static/resources/view/fchomo/node.js:40
#: htdocs/luci-static/resources/view/fchomo/node.js:823
msgid "General fields"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:293
+#: htdocs/luci-static/resources/view/fchomo/global.js:364
msgid "General settings"
msgstr ""
@@ -844,29 +855,29 @@ msgstr ""
msgid "Generate"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:418
+#: htdocs/luci-static/resources/view/fchomo/global.js:489
msgid "Generic segmentation offload"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:267
+#: htdocs/luci-static/resources/view/fchomo/global.js:338
msgid "GeoIP version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:270
+#: htdocs/luci-static/resources/view/fchomo/global.js:341
msgid "GeoSite version"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1028
+#: htdocs/luci-static/resources/view/fchomo/client.js:1049
msgid "Geoip code"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1025
+#: htdocs/luci-static/resources/view/fchomo/client.js:1046
msgid "Geoip enable"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:970
-#: htdocs/luci-static/resources/view/fchomo/client.js:979
-#: htdocs/luci-static/resources/view/fchomo/client.js:1037
+#: htdocs/luci-static/resources/view/fchomo/client.js:984
+#: htdocs/luci-static/resources/view/fchomo/client.js:993
+#: htdocs/luci-static/resources/view/fchomo/client.js:1058
msgid "Geosite"
msgstr ""
@@ -874,16 +885,16 @@ msgstr ""
msgid "GitHub"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:299
+#: htdocs/luci-static/resources/view/fchomo/global.js:370
#: root/usr/share/luci/menu.d/luci-app-fchomo.json:14
msgid "Global"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:339
+#: htdocs/luci-static/resources/view/fchomo/global.js:410
msgid "Global Authentication"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:442
+#: htdocs/luci-static/resources/view/fchomo/global.js:513
msgid "Global client fingerprint"
msgstr ""
@@ -899,7 +910,7 @@ msgstr ""
msgid "Grant access to fchomo configuration"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:495
+#: htdocs/luci-static/resources/view/fchomo/client.js:502
msgid "Group"
msgstr ""
@@ -913,7 +924,7 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:84
#: htdocs/luci-static/resources/view/fchomo/node.js:649
-#: htdocs/luci-static/resources/view/fchomo/node.js:907
+#: htdocs/luci-static/resources/view/fchomo/node.js:925
msgid "HTTP header"
msgstr ""
@@ -921,7 +932,7 @@ msgstr ""
msgid "HTTP request method"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:892
+#: htdocs/luci-static/resources/view/fchomo/client.js:906
msgid "HTTP/3"
msgstr ""
@@ -936,31 +947,31 @@ msgstr ""
msgid "HTTPUpgrade"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:678
+#: htdocs/luci-static/resources/view/fchomo/global.js:749
msgid "Handle domain"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:564
-#: htdocs/luci-static/resources/view/fchomo/node.js:1010
+#: htdocs/luci-static/resources/view/fchomo/client.js:571
+#: htdocs/luci-static/resources/view/fchomo/node.js:1028
msgid "Health check URL"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:593
-#: htdocs/luci-static/resources/view/fchomo/node.js:1036
+#: htdocs/luci-static/resources/view/fchomo/client.js:600
+#: htdocs/luci-static/resources/view/fchomo/node.js:1054
msgid "Health check expected status"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:573
-#: htdocs/luci-static/resources/view/fchomo/node.js:1019
+#: htdocs/luci-static/resources/view/fchomo/client.js:580
+#: htdocs/luci-static/resources/view/fchomo/node.js:1037
msgid "Health check interval"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:580
-#: htdocs/luci-static/resources/view/fchomo/node.js:1025
+#: htdocs/luci-static/resources/view/fchomo/client.js:587
+#: htdocs/luci-static/resources/view/fchomo/node.js:1043
msgid "Health check timeout"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:472
+#: htdocs/luci-static/resources/view/fchomo/client.js:479
#: htdocs/luci-static/resources/view/fchomo/node.js:825
msgid "Health fields"
msgstr ""
@@ -991,12 +1002,12 @@ msgstr ""
msgid "Hysteria2"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1030
-#: htdocs/luci-static/resources/view/fchomo/client.js:1043
+#: htdocs/luci-static/resources/view/fchomo/client.js:1051
+#: htdocs/luci-static/resources/view/fchomo/client.js:1064
msgid "IP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1041
+#: htdocs/luci-static/resources/view/fchomo/client.js:1062
msgid "IP CIDR"
msgstr ""
@@ -1005,7 +1016,7 @@ msgid "IP override"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:787
-#: htdocs/luci-static/resources/view/fchomo/node.js:998
+#: htdocs/luci-static/resources/view/fchomo/node.js:1016
msgid "IP version"
msgstr ""
@@ -1017,8 +1028,8 @@ msgstr ""
msgid "IPv6 only"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:761
-#: htdocs/luci-static/resources/view/fchomo/global.js:319
+#: htdocs/luci-static/resources/view/fchomo/client.js:768
+#: htdocs/luci-static/resources/view/fchomo/global.js:390
msgid "IPv6 support"
msgstr ""
@@ -1046,14 +1057,14 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:104
#: htdocs/luci-static/resources/view/fchomo/node.js:110
-#: htdocs/luci-static/resources/view/fchomo/node.js:964
-#: htdocs/luci-static/resources/view/fchomo/node.js:969
+#: htdocs/luci-static/resources/view/fchomo/node.js:982
+#: htdocs/luci-static/resources/view/fchomo/node.js:987
#: htdocs/luci-static/resources/view/fchomo/server.js:159
#: htdocs/luci-static/resources/view/fchomo/server.js:165
msgid "In Mbps."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:885
+#: htdocs/luci-static/resources/view/fchomo/node.js:903
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:306
msgid "In bytes. %s
will be used if empty."
msgstr ""
@@ -1063,9 +1074,9 @@ msgstr ""
msgid "In millisecond."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:581
-#: htdocs/luci-static/resources/view/fchomo/client.js:610
-#: htdocs/luci-static/resources/view/fchomo/node.js:1026
+#: htdocs/luci-static/resources/view/fchomo/client.js:588
+#: htdocs/luci-static/resources/view/fchomo/client.js:617
+#: htdocs/luci-static/resources/view/fchomo/node.js:1044
msgid "In millisecond. %s
will be used if empty."
msgstr ""
@@ -1074,53 +1085,54 @@ msgstr ""
msgid "In seconds."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:574
-#: htdocs/luci-static/resources/view/fchomo/global.js:329
-#: htdocs/luci-static/resources/view/fchomo/global.js:334
-#: htdocs/luci-static/resources/view/fchomo/global.js:426
-#: htdocs/luci-static/resources/view/fchomo/node.js:891
-#: htdocs/luci-static/resources/view/fchomo/node.js:1020
+#: htdocs/luci-static/resources/view/fchomo/client.js:581
+#: htdocs/luci-static/resources/view/fchomo/global.js:400
+#: htdocs/luci-static/resources/view/fchomo/global.js:405
+#: htdocs/luci-static/resources/view/fchomo/global.js:497
+#: htdocs/luci-static/resources/view/fchomo/node.js:909
+#: htdocs/luci-static/resources/view/fchomo/node.js:1038
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:312
msgid "In seconds. %s
will be used if empty."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:353
+#: htdocs/luci-static/resources/view/fchomo/global.js:424
msgid "Inbound"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:530
+#: htdocs/luci-static/resources/view/fchomo/client.js:537
msgid "Include all"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:535
+#: htdocs/luci-static/resources/view/fchomo/client.js:542
msgid "Include all node"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:540
+#: htdocs/luci-static/resources/view/fchomo/client.js:547
msgid "Include all provider"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:541
+#: htdocs/luci-static/resources/view/fchomo/client.js:548
msgid "Includes all Provider."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:531
+#: htdocs/luci-static/resources/view/fchomo/client.js:538
msgid "Includes all Proxy Node and Provider."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:536
+#: htdocs/luci-static/resources/view/fchomo/client.js:543
msgid "Includes all Proxy Node."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:312
+#: htdocs/luci-static/resources/view/fchomo/global.js:383
msgid "Info"
msgstr ""
+#: htdocs/luci-static/resources/view/fchomo/node.js:840
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:206
msgid "Inline"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:584
+#: htdocs/luci-static/resources/view/fchomo/global.js:655
msgid "Interface Control"
msgstr ""
@@ -1132,21 +1144,21 @@ msgstr ""
msgid "Key path"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:475
-#: htdocs/luci-static/resources/view/fchomo/client.js:661
-#: htdocs/luci-static/resources/view/fchomo/client.js:731
-#: htdocs/luci-static/resources/view/fchomo/client.js:818
-#: htdocs/luci-static/resources/view/fchomo/client.js:959
+#: htdocs/luci-static/resources/view/fchomo/client.js:482
+#: htdocs/luci-static/resources/view/fchomo/client.js:668
+#: htdocs/luci-static/resources/view/fchomo/client.js:738
+#: htdocs/luci-static/resources/view/fchomo/client.js:825
+#: htdocs/luci-static/resources/view/fchomo/client.js:973
#: htdocs/luci-static/resources/view/fchomo/node.js:46
#: htdocs/luci-static/resources/view/fchomo/node.js:828
-#: htdocs/luci-static/resources/view/fchomo/node.js:1082
+#: htdocs/luci-static/resources/view/fchomo/node.js:1100
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:194
#: htdocs/luci-static/resources/view/fchomo/server.js:103
msgid "Label"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:587
-#: htdocs/luci-static/resources/view/fchomo/node.js:1031
+#: htdocs/luci-static/resources/view/fchomo/client.js:594
+#: htdocs/luci-static/resources/view/fchomo/node.js:1049
msgid "Lazy"
msgstr ""
@@ -1156,7 +1168,7 @@ msgid ""
"compatibility purposes only, use of alterId > 1 is not recommended."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:411
+#: htdocs/luci-static/resources/view/fchomo/global.js:482
msgid "Less compatibility and sometimes better performance."
msgstr ""
@@ -1169,16 +1181,16 @@ msgstr ""
msgid "Listen address"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:586
+#: htdocs/luci-static/resources/view/fchomo/global.js:657
msgid "Listen interfaces"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:756
+#: htdocs/luci-static/resources/view/fchomo/client.js:763
#: htdocs/luci-static/resources/view/fchomo/server.js:123
msgid "Listen port"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:356
+#: htdocs/luci-static/resources/view/fchomo/global.js:427
msgid "Listen ports"
msgstr ""
@@ -1211,15 +1223,15 @@ msgstr ""
msgid "Log is empty."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:308
+#: htdocs/luci-static/resources/view/fchomo/global.js:379
msgid "Log level"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:570
+#: htdocs/luci-static/resources/fchomo.js:579
msgid "Lowercase only"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:414
+#: htdocs/luci-static/resources/view/fchomo/global.js:485
#: htdocs/luci-static/resources/view/fchomo/node.js:390
msgid "MTU"
msgstr ""
@@ -1228,31 +1240,31 @@ msgstr ""
msgid "Masquerade"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:975
+#: htdocs/luci-static/resources/view/fchomo/client.js:989
msgid "Match domain. Support wildcards."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1047
+#: htdocs/luci-static/resources/view/fchomo/client.js:1068
msgid "Match domain. Support wildcards."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:980
+#: htdocs/luci-static/resources/view/fchomo/client.js:994
msgid "Match geosite."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1038
+#: htdocs/luci-static/resources/view/fchomo/client.js:1059
msgid "Match geosite."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1029
+#: htdocs/luci-static/resources/view/fchomo/client.js:1050
msgid "Match response with geoip."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1042
+#: htdocs/luci-static/resources/view/fchomo/client.js:1063
msgid "Match response with ipcidr."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:985
+#: htdocs/luci-static/resources/view/fchomo/client.js:999
msgid "Match rule set."
msgstr ""
@@ -1265,7 +1277,7 @@ msgstr ""
msgid "Max UDP relay packet size"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:601
+#: htdocs/luci-static/resources/view/fchomo/client.js:608
msgid "Max count of failures"
msgstr ""
@@ -1298,12 +1310,14 @@ msgstr ""
msgid "Mieru"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:426
-#: htdocs/luci-static/resources/view/fchomo/log.js:100
+#: htdocs/luci-static/resources/view/fchomo/client.js:433
+#: htdocs/luci-static/resources/view/fchomo/log.js:106
+#: htdocs/luci-static/resources/view/fchomo/log.js:111
msgid "Mihomo client"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/log.js:103
+#: htdocs/luci-static/resources/view/fchomo/log.js:115
+#: htdocs/luci-static/resources/view/fchomo/log.js:120
#: htdocs/luci-static/resources/view/fchomo/server.js:58
msgid "Mihomo server"
msgstr ""
@@ -1319,15 +1333,15 @@ msgid "Minimum streams"
msgstr ""
#: htdocs/luci-static/resources/fchomo.js:62
-#: htdocs/luci-static/resources/view/fchomo/global.js:400
+#: htdocs/luci-static/resources/view/fchomo/global.js:471
msgid "Mixed"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:407
+#: htdocs/luci-static/resources/view/fchomo/global.js:478
msgid "Mixed system
TCP stack and gVisor
UDP stack."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:359
+#: htdocs/luci-static/resources/view/fchomo/global.js:430
msgid "Mixed port"
msgstr ""
@@ -1343,7 +1357,7 @@ msgstr ""
msgid "Multiplexing"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:897
+#: htdocs/luci-static/resources/view/fchomo/node.js:915
msgid "Name of the Proxy group to download provider."
msgstr ""
@@ -1355,16 +1369,16 @@ msgstr ""
msgid "Native"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:347
+#: htdocs/luci-static/resources/view/fchomo/global.js:418
msgid "No Authentication IP ranges"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:838
+#: htdocs/luci-static/resources/view/fchomo/client.js:845
msgid "No add'l params"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:588
-#: htdocs/luci-static/resources/view/fchomo/node.js:1032
+#: htdocs/luci-static/resources/view/fchomo/client.js:595
+#: htdocs/luci-static/resources/view/fchomo/node.js:1050
msgid "No testing is performed when this provider node is not in use."
msgstr ""
@@ -1372,28 +1386,28 @@ msgstr ""
msgid "No valid rule-set link found."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:502
+#: htdocs/luci-static/resources/view/fchomo/client.js:509
#: htdocs/luci-static/resources/view/fchomo/node.js:35
#: root/usr/share/luci/menu.d/luci-app-fchomo.json:38
msgid "Node"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:633
-#: htdocs/luci-static/resources/view/fchomo/node.js:1049
+#: htdocs/luci-static/resources/view/fchomo/client.js:640
+#: htdocs/luci-static/resources/view/fchomo/node.js:1067
msgid "Node exclude filter"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:638
-#: htdocs/luci-static/resources/view/fchomo/node.js:1055
+#: htdocs/luci-static/resources/view/fchomo/client.js:645
+#: htdocs/luci-static/resources/view/fchomo/node.js:1073
msgid "Node exclude type"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:628
-#: htdocs/luci-static/resources/view/fchomo/node.js:1044
+#: htdocs/luci-static/resources/view/fchomo/client.js:635
+#: htdocs/luci-static/resources/view/fchomo/node.js:1062
msgid "Node filter"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:609
+#: htdocs/luci-static/resources/view/fchomo/client.js:616
msgid "Node switch tolerance"
msgstr ""
@@ -1401,11 +1415,11 @@ msgstr ""
msgid "None"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:473
+#: htdocs/luci-static/resources/view/fchomo/global.js:544
msgid "Not Installed"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:504
+#: htdocs/luci-static/resources/fchomo.js:513
msgid "Not Running"
msgstr ""
@@ -1423,28 +1437,28 @@ msgstr ""
msgid "Obfuscate type"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:587
+#: htdocs/luci-static/resources/view/fchomo/global.js:658
msgid "Only process traffic from specific interfaces. Leave empty for all."
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:498
+#: htdocs/luci-static/resources/fchomo.js:507
msgid "Open Dashboard"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:296
+#: htdocs/luci-static/resources/view/fchomo/global.js:367
msgid "Operation mode"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:925
+#: htdocs/luci-static/resources/view/fchomo/client.js:939
msgid "Override ECS in original request."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:515
-#: htdocs/luci-static/resources/view/fchomo/global.js:553
+#: htdocs/luci-static/resources/view/fchomo/global.js:586
+#: htdocs/luci-static/resources/view/fchomo/global.js:624
msgid "Override destination"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:471
+#: htdocs/luci-static/resources/view/fchomo/client.js:478
#: htdocs/luci-static/resources/view/fchomo/node.js:824
msgid "Override fields"
msgstr ""
@@ -1453,15 +1467,15 @@ msgstr ""
msgid "Override the IP address of the server that DNS response."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1008
+#: htdocs/luci-static/resources/view/fchomo/client.js:1022
msgid "Override the Proxy group of DNS server."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:516
+#: htdocs/luci-static/resources/view/fchomo/global.js:587
msgid "Override the connection destination address with the sniffed domain."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:133
+#: htdocs/luci-static/resources/view/fchomo/global.js:181
msgid "Overview"
msgstr ""
@@ -1485,6 +1499,7 @@ msgstr ""
msgid "Password"
msgstr ""
+#: htdocs/luci-static/resources/view/fchomo/node.js:883
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:286
msgid "Payload"
msgstr ""
@@ -1493,7 +1508,7 @@ msgstr ""
msgid "Peer pubkic key"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:431
+#: htdocs/luci-static/resources/view/fchomo/global.js:502
msgid ""
"Performance may degrade slightly, so it is not recommended to enable on when "
"it is not needed."
@@ -1509,7 +1524,8 @@ msgid ""
"standards."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:858
+#: htdocs/luci-static/resources/view/fchomo/node.js:861
+#: htdocs/luci-static/resources/view/fchomo/node.js:882
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:264
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:285
msgid ""
@@ -1534,7 +1550,7 @@ msgstr ""
msgid "Port"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:699
+#: htdocs/luci-static/resources/fchomo.js:708
msgid "Port %s alrealy exists!"
msgstr ""
@@ -1542,7 +1558,7 @@ msgstr ""
msgid "Port range"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:550
+#: htdocs/luci-static/resources/view/fchomo/global.js:621
msgid "Ports"
msgstr ""
@@ -1563,14 +1579,14 @@ msgstr ""
msgid "Prefer IPv6"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:552
-#: htdocs/luci-static/resources/view/fchomo/client.js:558
-#: htdocs/luci-static/resources/view/fchomo/global.js:593
-#: htdocs/luci-static/resources/view/fchomo/global.js:610
+#: htdocs/luci-static/resources/view/fchomo/client.js:559
+#: htdocs/luci-static/resources/view/fchomo/client.js:565
+#: htdocs/luci-static/resources/view/fchomo/global.js:664
+#: htdocs/luci-static/resources/view/fchomo/global.js:681
#: htdocs/luci-static/resources/view/fchomo/node.js:777
#: htdocs/luci-static/resources/view/fchomo/node.js:783
-#: htdocs/luci-static/resources/view/fchomo/node.js:988
-#: htdocs/luci-static/resources/view/fchomo/node.js:994
+#: htdocs/luci-static/resources/view/fchomo/node.js:1006
+#: htdocs/luci-static/resources/view/fchomo/node.js:1012
msgid "Priority: Proxy Node > Proxy Group > Global."
msgstr ""
@@ -1586,11 +1602,11 @@ msgstr ""
msgid "Private key"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:302
+#: htdocs/luci-static/resources/view/fchomo/global.js:373
msgid "Process matching mode"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:544
+#: htdocs/luci-static/resources/view/fchomo/global.js:615
#: htdocs/luci-static/resources/view/fchomo/node.js:695
msgid "Protocol"
msgstr ""
@@ -1605,57 +1621,57 @@ msgid ""
"default in v2ray and cannot be disabled)."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:516
+#: htdocs/luci-static/resources/view/fchomo/client.js:523
#: htdocs/luci-static/resources/view/fchomo/node.js:796
#: htdocs/luci-static/resources/view/fchomo/node.js:806
-#: htdocs/luci-static/resources/view/fchomo/node.js:1093
+#: htdocs/luci-static/resources/view/fchomo/node.js:1111
msgid "Provider"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:878
+#: htdocs/luci-static/resources/view/fchomo/node.js:896
msgid "Provider URL"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:446
-#: htdocs/luci-static/resources/view/fchomo/client.js:465
+#: htdocs/luci-static/resources/view/fchomo/client.js:453
+#: htdocs/luci-static/resources/view/fchomo/client.js:472
msgid "Proxy Group"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:643
+#: htdocs/luci-static/resources/view/fchomo/global.js:714
msgid "Proxy IPv4 IP-s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:646
+#: htdocs/luci-static/resources/view/fchomo/global.js:717
msgid "Proxy IPv6 IP-s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:649
+#: htdocs/luci-static/resources/view/fchomo/global.js:720
msgid "Proxy MAC-s"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:25
-#: htdocs/luci-static/resources/view/fchomo/node.js:1092
+#: htdocs/luci-static/resources/view/fchomo/node.js:1110
msgid "Proxy Node"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1067
-#: htdocs/luci-static/resources/view/fchomo/node.js:1077
+#: htdocs/luci-static/resources/view/fchomo/node.js:1085
+#: htdocs/luci-static/resources/view/fchomo/node.js:1095
msgid "Proxy chain"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:361
-#: htdocs/luci-static/resources/view/fchomo/client.js:875
-#: htdocs/luci-static/resources/view/fchomo/client.js:1007
-#: htdocs/luci-static/resources/view/fchomo/node.js:896
+#: htdocs/luci-static/resources/view/fchomo/client.js:882
+#: htdocs/luci-static/resources/view/fchomo/client.js:1021
+#: htdocs/luci-static/resources/view/fchomo/node.js:914
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:317
msgid "Proxy group"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:379
+#: htdocs/luci-static/resources/view/fchomo/global.js:450
msgid "Proxy mode"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:652
+#: htdocs/luci-static/resources/view/fchomo/global.js:723
msgid "Proxy routerself"
msgstr ""
@@ -1668,7 +1684,7 @@ msgstr ""
msgid "QUIC congestion controller."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:449
+#: htdocs/luci-static/resources/view/fchomo/client.js:456
#: htdocs/luci-static/resources/view/fchomo/server.js:79
msgid "Quick Reload"
msgstr ""
@@ -1685,28 +1701,28 @@ msgstr ""
msgid "REALITY short ID"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:504
+#: htdocs/luci-static/resources/view/fchomo/global.js:575
msgid "Random will be used if empty."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:1126
-#: htdocs/luci-static/resources/view/fchomo/node.js:1174
+#: htdocs/luci-static/resources/view/fchomo/node.js:1144
+#: htdocs/luci-static/resources/view/fchomo/node.js:1192
msgid "Recommended to use UoT node.such as %s
."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:364
+#: htdocs/luci-static/resources/view/fchomo/global.js:435
msgid "Redir port"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:380
+#: htdocs/luci-static/resources/view/fchomo/global.js:451
msgid "Redirect TCP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:382
+#: htdocs/luci-static/resources/view/fchomo/global.js:453
msgid "Redirect TCP + TProxy UDP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:384
+#: htdocs/luci-static/resources/view/fchomo/global.js:455
msgid "Redirect TCP + Tun UDP"
msgstr ""
@@ -1714,14 +1730,14 @@ msgstr ""
msgid "Refresh every %s seconds."
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:491
-#: htdocs/luci-static/resources/view/fchomo/client.js:450
-#: htdocs/luci-static/resources/view/fchomo/global.js:166
+#: htdocs/luci-static/resources/fchomo.js:500
+#: htdocs/luci-static/resources/view/fchomo/client.js:457
+#: htdocs/luci-static/resources/view/fchomo/global.js:214
#: htdocs/luci-static/resources/view/fchomo/server.js:80
msgid "Reload"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:165
+#: htdocs/luci-static/resources/view/fchomo/global.js:213
msgid "Reload All"
msgstr ""
@@ -1734,11 +1750,11 @@ msgstr ""
msgid "Remote DNS resolve"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:629
+#: htdocs/luci-static/resources/fchomo.js:638
msgid "Remove"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:634
+#: htdocs/luci-static/resources/fchomo.js:643
#: htdocs/luci-static/resources/view/fchomo/node.js:814
#: htdocs/luci-static/resources/view/fchomo/node.js:816
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:185
@@ -1746,11 +1762,11 @@ msgstr ""
msgid "Remove idles"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:930
+#: htdocs/luci-static/resources/view/fchomo/node.js:948
msgid "Replace name"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:931
+#: htdocs/luci-static/resources/view/fchomo/node.js:949
msgid "Replace node name."
msgstr ""
@@ -1767,7 +1783,7 @@ msgstr ""
msgid "Reserved field bytes"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:202
+#: htdocs/luci-static/resources/view/fchomo/global.js:273
msgid "Resources management"
msgstr ""
@@ -1775,57 +1791,57 @@ msgstr ""
msgid "Restls script"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:656
+#: htdocs/luci-static/resources/view/fchomo/global.js:727
msgid "Routing Control"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:676
+#: htdocs/luci-static/resources/view/fchomo/global.js:747
msgid "Routing GFW"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:557
-#: htdocs/luci-static/resources/view/fchomo/global.js:609
+#: htdocs/luci-static/resources/view/fchomo/client.js:564
+#: htdocs/luci-static/resources/view/fchomo/global.js:680
#: htdocs/luci-static/resources/view/fchomo/node.js:782
-#: htdocs/luci-static/resources/view/fchomo/node.js:993
+#: htdocs/luci-static/resources/view/fchomo/node.js:1011
msgid "Routing mark"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:672
+#: htdocs/luci-static/resources/view/fchomo/global.js:743
msgid "Routing mode"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:673
+#: htdocs/luci-static/resources/view/fchomo/global.js:744
msgid "Routing mode of the traffic enters mihomo via firewall rules."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:679
+#: htdocs/luci-static/resources/view/fchomo/global.js:750
msgid "Routing mode will be handle domain."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:658
-#: htdocs/luci-static/resources/view/fchomo/global.js:665
+#: htdocs/luci-static/resources/view/fchomo/global.js:729
+#: htdocs/luci-static/resources/view/fchomo/global.js:736
msgid "Routing ports"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:646
-#: htdocs/luci-static/resources/view/fchomo/client.js:656
+#: htdocs/luci-static/resources/view/fchomo/client.js:653
+#: htdocs/luci-static/resources/view/fchomo/client.js:663
msgid "Routing rule"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:603
+#: htdocs/luci-static/resources/view/fchomo/global.js:674
msgid "Routing rule priority"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:597
+#: htdocs/luci-static/resources/view/fchomo/global.js:668
msgid "Routing table ID"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:298
+#: htdocs/luci-static/resources/view/fchomo/global.js:369
msgid "Rule"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:971
-#: htdocs/luci-static/resources/view/fchomo/client.js:984
+#: htdocs/luci-static/resources/view/fchomo/client.js:985
+#: htdocs/luci-static/resources/view/fchomo/client.js:998
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:112
msgid "Rule set"
msgstr ""
@@ -1842,7 +1858,7 @@ msgstr ""
msgid "Ruleset-URI-Scheme"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:504
+#: htdocs/luci-static/resources/fchomo.js:513
msgid "Running"
msgstr ""
@@ -1858,7 +1874,7 @@ msgstr ""
msgid "SSH"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:672
+#: htdocs/luci-static/resources/view/fchomo/client.js:679
msgid "SUB-RULE"
msgstr ""
@@ -1879,7 +1895,7 @@ msgstr ""
msgid "Same srcaddr and dstaddr requests. Same node"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:421
+#: htdocs/luci-static/resources/view/fchomo/global.js:492
msgid "Segment maximum size"
msgstr ""
@@ -1887,7 +1903,7 @@ msgstr ""
msgid "Select"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:464
+#: htdocs/luci-static/resources/view/fchomo/global.js:535
msgid "Select Dashboard"
msgstr ""
@@ -1904,11 +1920,11 @@ msgstr ""
msgid "Server hostname"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:157
+#: htdocs/luci-static/resources/view/fchomo/global.js:205
msgid "Server status"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:136
+#: htdocs/luci-static/resources/view/fchomo/global.js:184
msgid "Service status"
msgstr ""
@@ -1933,7 +1949,7 @@ msgstr ""
msgid "Show connections in the dashboard for breaking connections easier."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:309
+#: htdocs/luci-static/resources/view/fchomo/global.js:380
msgid "Silent"
msgstr ""
@@ -1941,25 +1957,25 @@ msgstr ""
msgid "Simple round-robin all nodes"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:884
+#: htdocs/luci-static/resources/view/fchomo/node.js:902
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:305
msgid "Size limit"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:549
-#: htdocs/luci-static/resources/view/fchomo/node.js:973
+#: htdocs/luci-static/resources/view/fchomo/node.js:991
msgid "Skip cert verify"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:522
+#: htdocs/luci-static/resources/view/fchomo/global.js:593
msgid "Skiped sniffing domain"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:528
+#: htdocs/luci-static/resources/view/fchomo/global.js:599
msgid "Skiped sniffing dst address"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:525
+#: htdocs/luci-static/resources/view/fchomo/global.js:596
msgid "Skiped sniffing src address"
msgstr ""
@@ -1967,41 +1983,41 @@ msgstr ""
msgid "Snell"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:532
+#: htdocs/luci-static/resources/view/fchomo/global.js:603
msgid "Sniff protocol"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:509
+#: htdocs/luci-static/resources/view/fchomo/global.js:580
msgid "Sniffer"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:512
+#: htdocs/luci-static/resources/view/fchomo/global.js:583
msgid "Sniffer settings"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:659
-#: htdocs/luci-static/resources/view/fchomo/global.js:666
+#: htdocs/luci-static/resources/view/fchomo/global.js:730
+#: htdocs/luci-static/resources/view/fchomo/global.js:737
msgid ""
"Specify target ports to be proxied. Multiple ports must be separated by "
"commas."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:395
+#: htdocs/luci-static/resources/view/fchomo/global.js:466
msgid "Stack"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:617
-#: htdocs/luci-static/resources/view/fchomo/client.js:619
+#: htdocs/luci-static/resources/view/fchomo/client.js:624
+#: htdocs/luci-static/resources/view/fchomo/client.js:626
msgid "Strategy"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:695
-#: htdocs/luci-static/resources/view/fchomo/client.js:716
-#: htdocs/luci-static/resources/view/fchomo/client.js:726
+#: htdocs/luci-static/resources/view/fchomo/client.js:702
+#: htdocs/luci-static/resources/view/fchomo/client.js:723
+#: htdocs/luci-static/resources/view/fchomo/client.js:733
msgid "Sub rule"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:740
+#: htdocs/luci-static/resources/view/fchomo/client.js:747
msgid "Sub rule group"
msgstr ""
@@ -2009,11 +2025,11 @@ msgstr ""
msgid "Successfully imported %s rule-set of total %s."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:49
+#: htdocs/luci-static/resources/view/fchomo/global.js:60
msgid "Successfully updated."
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:921
+#: htdocs/luci-static/resources/fchomo.js:930
msgid "Successfully uploaded."
msgstr ""
@@ -2023,7 +2039,7 @@ msgid ""
""
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:397
+#: htdocs/luci-static/resources/view/fchomo/global.js:468
msgid "System"
msgstr ""
@@ -2035,7 +2051,7 @@ msgstr ""
msgid "TCP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:325
+#: htdocs/luci-static/resources/view/fchomo/global.js:396
msgid "TCP concurrency"
msgstr ""
@@ -2043,20 +2059,20 @@ msgstr ""
msgid "TCP only"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:333
+#: htdocs/luci-static/resources/view/fchomo/global.js:404
msgid "TCP-Keep-Alive idle timeout"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:328
+#: htdocs/luci-static/resources/view/fchomo/global.js:399
msgid "TCP-Keep-Alive interval"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:761
-#: htdocs/luci-static/resources/view/fchomo/node.js:946
+#: htdocs/luci-static/resources/view/fchomo/node.js:964
msgid "TFO"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:436
+#: htdocs/luci-static/resources/view/fchomo/global.js:507
#: htdocs/luci-static/resources/view/fchomo/node.js:419
#: htdocs/luci-static/resources/view/fchomo/node.js:477
#: htdocs/luci-static/resources/view/fchomo/server.js:309
@@ -2091,17 +2107,17 @@ msgstr ""
msgid "The %s address used by local machine in the Wireguard network."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:226
+#: htdocs/luci-static/resources/view/fchomo/global.js:297
msgid "The default value is 2:00 every day."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1030
+#: htdocs/luci-static/resources/view/fchomo/client.js:1051
msgid "The matching %s
will be deemed as not-poisoned."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1039
-#: htdocs/luci-static/resources/view/fchomo/client.js:1043
-#: htdocs/luci-static/resources/view/fchomo/client.js:1048
+#: htdocs/luci-static/resources/view/fchomo/client.js:1060
+#: htdocs/luci-static/resources/view/fchomo/client.js:1064
+#: htdocs/luci-static/resources/view/fchomo/client.js:1069
msgid "The matching %s
will be deemed as poisoned."
msgstr ""
@@ -2114,7 +2130,7 @@ msgid "The server public key, in PEM format."
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:552
-#: htdocs/luci-static/resources/view/fchomo/node.js:976
+#: htdocs/luci-static/resources/view/fchomo/node.js:994
msgid ""
"This is DANGEROUS, your traffic is almost like "
"PLAIN TEXT! Use at your own risk!"
@@ -2126,21 +2142,27 @@ msgid ""
"stream based UDP relay mode that TUIC does not provide."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:387
+#: htdocs/luci-static/resources/view/fchomo/global.js:256
+msgid ""
+"To check NAT Behavior you need to install stuntman-client"
+"b> first"
+msgstr ""
+
+#: htdocs/luci-static/resources/view/fchomo/global.js:458
msgid ""
"To enable Tun support, you need to install ip-full
and "
"kmod-tun
"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:682
+#: htdocs/luci-static/resources/view/fchomo/global.js:753
msgid "To enable, you need to install dnsmasq-full
."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:616
+#: htdocs/luci-static/resources/view/fchomo/global.js:687
msgid "Tproxy Fwmark"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:369
+#: htdocs/luci-static/resources/view/fchomo/global.js:440
msgid "Tproxy port"
msgstr ""
@@ -2161,29 +2183,29 @@ msgstr ""
msgid "Trojan"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:621
+#: htdocs/luci-static/resources/view/fchomo/global.js:692
msgid "Tun Fwmark"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:385
+#: htdocs/luci-static/resources/view/fchomo/global.js:456
msgid "Tun TCP/UDP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:392
+#: htdocs/luci-static/resources/view/fchomo/global.js:463
msgid "Tun settings"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:396
+#: htdocs/luci-static/resources/view/fchomo/global.js:467
msgid "Tun stack."
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:223
#: htdocs/luci-static/resources/view/fchomo/client.js:313
-#: htdocs/luci-static/resources/view/fchomo/client.js:489
-#: htdocs/luci-static/resources/view/fchomo/client.js:968
+#: htdocs/luci-static/resources/view/fchomo/client.js:496
+#: htdocs/luci-static/resources/view/fchomo/client.js:982
#: htdocs/luci-static/resources/view/fchomo/node.js:55
#: htdocs/luci-static/resources/view/fchomo/node.js:837
-#: htdocs/luci-static/resources/view/fchomo/node.js:1091
+#: htdocs/luci-static/resources/view/fchomo/node.js:1109
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:203
#: htdocs/luci-static/resources/view/fchomo/server.js:112
msgid "Type"
@@ -2191,12 +2213,12 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/client.js:274
#: htdocs/luci-static/resources/view/fchomo/node.js:458
-#: htdocs/luci-static/resources/view/fchomo/node.js:954
+#: htdocs/luci-static/resources/view/fchomo/node.js:972
#: htdocs/luci-static/resources/view/fchomo/server.js:367
msgid "UDP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:425
+#: htdocs/luci-static/resources/view/fchomo/global.js:496
msgid "UDP NAT expiration time"
msgstr ""
@@ -2227,7 +2249,7 @@ msgstr ""
msgid "UUID"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:549
+#: htdocs/luci-static/resources/fchomo.js:558
msgid "Unable to download unsupported type: %s"
msgstr ""
@@ -2235,16 +2257,16 @@ msgstr ""
msgid "Unable to save contents: %s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:322
+#: htdocs/luci-static/resources/view/fchomo/global.js:393
msgid "Unified delay"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:141
-#: htdocs/luci-static/resources/view/fchomo/global.js:146
+#: htdocs/luci-static/resources/view/fchomo/global.js:189
+#: htdocs/luci-static/resources/view/fchomo/global.js:194
msgid "Unknown"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:61
+#: htdocs/luci-static/resources/view/fchomo/global.js:72
msgid "Unknown error."
msgstr ""
@@ -2253,15 +2275,15 @@ msgid "Unknown error: %s"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:463
-#: htdocs/luci-static/resources/view/fchomo/node.js:958
+#: htdocs/luci-static/resources/view/fchomo/node.js:976
msgid "UoT"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:52
+#: htdocs/luci-static/resources/view/fchomo/global.js:63
msgid "Update failed."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:890
+#: htdocs/luci-static/resources/view/fchomo/node.js:908
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:311
msgid "Update interval"
msgstr ""
@@ -2278,7 +2300,7 @@ msgstr ""
msgid "Upload certificate"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:206
+#: htdocs/luci-static/resources/view/fchomo/global.js:277
msgid "Upload initial package"
msgstr ""
@@ -2286,17 +2308,17 @@ msgstr ""
msgid "Upload key"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:208
+#: htdocs/luci-static/resources/view/fchomo/global.js:279
#: htdocs/luci-static/resources/view/fchomo/server.js:346
#: htdocs/luci-static/resources/view/fchomo/server.js:361
msgid "Upload..."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:765
+#: htdocs/luci-static/resources/view/fchomo/client.js:772
msgid "Used to resolve the domain of the DNS server. Must be IP."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:772
+#: htdocs/luci-static/resources/view/fchomo/client.js:779
msgid "Used to resolve the domain of the Proxy node."
msgstr ""
@@ -2304,7 +2326,7 @@ msgstr ""
msgid "Used to verify the hostname on the returned certificates."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:342
+#: htdocs/luci-static/resources/view/fchomo/global.js:413
msgid "User Authentication"
msgstr ""
@@ -2313,7 +2335,7 @@ msgstr ""
msgid "Username"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:629
+#: htdocs/luci-static/resources/view/fchomo/global.js:700
msgid "Users filter mode"
msgstr ""
@@ -2334,8 +2356,8 @@ msgstr ""
msgid "VMess"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:842
-#: htdocs/luci-static/resources/view/fchomo/node.js:1097
+#: htdocs/luci-static/resources/view/fchomo/node.js:843
+#: htdocs/luci-static/resources/view/fchomo/node.js:1115
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:246
msgid "Value"
msgstr ""
@@ -2349,7 +2371,7 @@ msgstr ""
msgid "Version hint"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:311
+#: htdocs/luci-static/resources/view/fchomo/global.js:382
msgid "Warning"
msgstr ""
@@ -2363,7 +2385,7 @@ msgstr ""
msgid "When used as a server, HomeProxy is a better choice."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:631
+#: htdocs/luci-static/resources/view/fchomo/global.js:702
msgid "White list"
msgstr ""
@@ -2395,7 +2417,7 @@ msgstr ""
msgid "YouTube"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:903
+#: htdocs/luci-static/resources/fchomo.js:912
msgid "Your %s was successfully uploaded. Size: %sB."
msgstr ""
@@ -2441,7 +2463,7 @@ msgstr ""
msgid "cubic"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:968
+#: htdocs/luci-static/resources/view/fchomo/node.js:986
msgid "down"
msgstr ""
@@ -2455,7 +2477,7 @@ msgstr ""
msgid "gRPC service name"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:399
+#: htdocs/luci-static/resources/view/fchomo/global.js:470
msgid "gVisor"
msgstr ""
@@ -2468,7 +2490,7 @@ msgid "metacubexd"
msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:765
-#: htdocs/luci-static/resources/view/fchomo/node.js:950
+#: htdocs/luci-static/resources/view/fchomo/node.js:968
msgid "mpTCP"
msgstr ""
@@ -2477,12 +2499,12 @@ msgstr ""
msgid "new_reno"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:396
+#: htdocs/luci-static/resources/view/fchomo/client.js:403
msgid "no-resolve"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:740
-#: htdocs/luci-static/resources/fchomo.js:771
+#: htdocs/luci-static/resources/fchomo.js:749
+#: htdocs/luci-static/resources/fchomo.js:780
msgid "non-empty value"
msgstr ""
@@ -2494,11 +2516,11 @@ msgstr ""
msgid "none"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:92
+#: htdocs/luci-static/resources/view/fchomo/global.js:103
msgid "not found"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:479
+#: htdocs/luci-static/resources/view/fchomo/client.js:486
msgid "not included \",\""
msgstr ""
@@ -2510,7 +2532,7 @@ msgstr ""
msgid "obfs-simple"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:933
+#: htdocs/luci-static/resources/view/fchomo/node.js:951
msgid "override.proxy-name"
msgstr ""
@@ -2538,27 +2560,27 @@ msgstr ""
msgid "smux"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:379
+#: htdocs/luci-static/resources/view/fchomo/client.js:386
msgid "src"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:196
+#: htdocs/luci-static/resources/view/fchomo/global.js:244
msgid "unchecked"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:573
+#: htdocs/luci-static/resources/fchomo.js:582
msgid "unique UCI identifier"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:576
+#: htdocs/luci-static/resources/fchomo.js:585
msgid "unique identifier"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:780
+#: htdocs/luci-static/resources/fchomo.js:789
msgid "unique value"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:963
+#: htdocs/luci-static/resources/view/fchomo/node.js:981
msgid "up"
msgstr ""
@@ -2580,8 +2602,8 @@ msgstr ""
msgid "v3"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:714
-#: htdocs/luci-static/resources/fchomo.js:717
+#: htdocs/luci-static/resources/fchomo.js:723
+#: htdocs/luci-static/resources/fchomo.js:726
msgid "valid JSON format"
msgstr ""
@@ -2589,24 +2611,24 @@ msgstr ""
msgid "valid SHA256 string with %d characters"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:792
-#: htdocs/luci-static/resources/fchomo.js:795
+#: htdocs/luci-static/resources/fchomo.js:801
+#: htdocs/luci-static/resources/fchomo.js:804
msgid "valid URL"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:727
+#: htdocs/luci-static/resources/fchomo.js:736
msgid "valid base64 key with %d characters"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:742
+#: htdocs/luci-static/resources/fchomo.js:751
msgid "valid key length with %d characters"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:697
+#: htdocs/luci-static/resources/fchomo.js:706
msgid "valid port value"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:805
+#: htdocs/luci-static/resources/fchomo.js:814
msgid "valid uuid"
msgstr ""
@@ -2630,6 +2652,6 @@ msgstr ""
msgid "zero"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:551
+#: htdocs/luci-static/resources/fchomo.js:560
msgid "🡇"
msgstr ""
diff --git a/luci-app-fchomo/po/zh_Hans/fchomo.po b/luci-app-fchomo/po/zh_Hans/fchomo.po
index 2b9c3c05..dd317145 100644
--- a/luci-app-fchomo/po/zh_Hans/fchomo.po
+++ b/luci-app-fchomo/po/zh_Hans/fchomo.po
@@ -12,17 +12,17 @@ msgstr ""
msgid "%s log"
msgstr "%s 日志"
-#: htdocs/luci-static/resources/fchomo.js:431
-#: htdocs/luci-static/resources/fchomo.js:444
-#: htdocs/luci-static/resources/fchomo.js:457
-#: htdocs/luci-static/resources/fchomo.js:471
+#: htdocs/luci-static/resources/fchomo.js:440
+#: htdocs/luci-static/resources/fchomo.js:453
+#: htdocs/luci-static/resources/fchomo.js:466
+#: htdocs/luci-static/resources/fchomo.js:480
#: htdocs/luci-static/resources/view/fchomo/client.js:289
-#: htdocs/luci-static/resources/view/fchomo/client.js:503
-#: htdocs/luci-static/resources/view/fchomo/client.js:517
-#: htdocs/luci-static/resources/view/fchomo/client.js:986
-#: htdocs/luci-static/resources/view/fchomo/global.js:470
-#: htdocs/luci-static/resources/view/fchomo/node.js:1167
-#: htdocs/luci-static/resources/view/fchomo/node.js:1168
+#: htdocs/luci-static/resources/view/fchomo/client.js:510
+#: htdocs/luci-static/resources/view/fchomo/client.js:524
+#: htdocs/luci-static/resources/view/fchomo/client.js:1000
+#: htdocs/luci-static/resources/view/fchomo/global.js:541
+#: htdocs/luci-static/resources/view/fchomo/node.js:1185
+#: htdocs/luci-static/resources/view/fchomo/node.js:1186
msgid "-- Please choose --"
msgstr "-- 请选择 --"
@@ -47,48 +47,48 @@ msgstr ""
msgid "Save your configuration before uploading files!"
msgstr "上传文件前请先保存配置!"
-#: htdocs/luci-static/resources/view/fchomo/global.js:458
+#: htdocs/luci-static/resources/view/fchomo/global.js:529
msgid "API"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:499
+#: htdocs/luci-static/resources/view/fchomo/global.js:570
msgid "API DoH service"
msgstr "API DoH 服务器"
-#: htdocs/luci-static/resources/view/fchomo/global.js:490
+#: htdocs/luci-static/resources/view/fchomo/global.js:561
msgid "API HTTP port"
msgstr "API HTTP 端口"
-#: htdocs/luci-static/resources/view/fchomo/global.js:494
+#: htdocs/luci-static/resources/view/fchomo/global.js:565
msgid "API HTTPS port"
msgstr "API HTTPS 端口"
-#: htdocs/luci-static/resources/view/fchomo/global.js:448
+#: htdocs/luci-static/resources/view/fchomo/global.js:519
msgid "API TLS certificate path"
msgstr "API TLS 证书路径"
-#: htdocs/luci-static/resources/view/fchomo/global.js:452
+#: htdocs/luci-static/resources/view/fchomo/global.js:523
msgid "API TLS private key path"
msgstr "API TLS 私钥"
-#: htdocs/luci-static/resources/view/fchomo/global.js:503
+#: htdocs/luci-static/resources/view/fchomo/global.js:574
msgid "API secret"
msgstr "API 令牌"
-#: htdocs/luci-static/resources/view/fchomo/global.js:273
+#: htdocs/luci-static/resources/view/fchomo/global.js:344
msgid "ASN version"
msgstr "ASN 版本"
-#: htdocs/luci-static/resources/view/fchomo/global.js:577
-#: htdocs/luci-static/resources/view/fchomo/global.js:627
+#: htdocs/luci-static/resources/view/fchomo/global.js:648
+#: htdocs/luci-static/resources/view/fchomo/global.js:698
msgid "Access Control"
msgstr "访问控制"
-#: htdocs/luci-static/resources/view/fchomo/client.js:954
+#: htdocs/luci-static/resources/view/fchomo/client.js:968
msgid "Add a DNS policy"
msgstr "新增 DNS 策略"
-#: htdocs/luci-static/resources/view/fchomo/client.js:813
+#: htdocs/luci-static/resources/view/fchomo/client.js:820
msgid "Add a DNS server"
msgstr "新增 DNS 服务器"
@@ -100,15 +100,15 @@ msgstr "新增 节点"
msgid "Add a provider"
msgstr "新增 供应商"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1077
+#: htdocs/luci-static/resources/view/fchomo/node.js:1095
msgid "Add a proxy chain"
msgstr "新增 代理链"
-#: htdocs/luci-static/resources/view/fchomo/client.js:465
+#: htdocs/luci-static/resources/view/fchomo/client.js:472
msgid "Add a proxy group"
msgstr "新增 代理组"
-#: htdocs/luci-static/resources/view/fchomo/client.js:656
+#: htdocs/luci-static/resources/view/fchomo/client.js:663
msgid "Add a routing rule"
msgstr "新增 路由规则"
@@ -120,34 +120,34 @@ msgstr "新增 规则集"
msgid "Add a server"
msgstr "新增 服务器"
-#: htdocs/luci-static/resources/view/fchomo/client.js:726
+#: htdocs/luci-static/resources/view/fchomo/client.js:733
msgid "Add a sub rule"
msgstr "新增 子规则"
-#: htdocs/luci-static/resources/view/fchomo/node.js:924
+#: htdocs/luci-static/resources/view/fchomo/node.js:942
msgid "Add prefix"
msgstr "添加前缀"
-#: htdocs/luci-static/resources/view/fchomo/node.js:927
+#: htdocs/luci-static/resources/view/fchomo/node.js:945
msgid "Add suffix"
msgstr "添加后缀"
-#: htdocs/luci-static/resources/view/fchomo/client.js:827
-#: htdocs/luci-static/resources/view/fchomo/client.js:832
+#: htdocs/luci-static/resources/view/fchomo/client.js:834
+#: htdocs/luci-static/resources/view/fchomo/client.js:839
msgid "Address"
msgstr "地址"
-#: htdocs/luci-static/resources/view/fchomo/global.js:630
-#: htdocs/luci-static/resources/view/fchomo/global.js:674
+#: htdocs/luci-static/resources/view/fchomo/global.js:701
+#: htdocs/luci-static/resources/view/fchomo/global.js:745
msgid "All allowed"
msgstr "允许所有"
-#: htdocs/luci-static/resources/view/fchomo/global.js:660
-#: htdocs/luci-static/resources/view/fchomo/global.js:667
+#: htdocs/luci-static/resources/view/fchomo/global.js:731
+#: htdocs/luci-static/resources/view/fchomo/global.js:738
msgid "All ports"
msgstr "所有端口"
-#: htdocs/luci-static/resources/view/fchomo/global.js:486
+#: htdocs/luci-static/resources/view/fchomo/global.js:557
msgid ""
"Allow access from private network.To access the API on a private "
"network from a public website, it must be enabled."
@@ -158,11 +158,11 @@ msgstr ""
msgid "Allowed IPs"
msgstr "允许的 IP"
-#: htdocs/luci-static/resources/view/fchomo/global.js:58
+#: htdocs/luci-static/resources/view/fchomo/global.js:69
msgid "Already at the latest version."
msgstr "已是最新版本。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:55
+#: htdocs/luci-static/resources/view/fchomo/global.js:66
msgid "Already in updating."
msgstr "已在更新中。"
@@ -171,7 +171,7 @@ msgstr "已在更新中。"
msgid "Alter ID"
msgstr "额外 ID"
-#: htdocs/luci-static/resources/view/fchomo/global.js:144
+#: htdocs/luci-static/resources/view/fchomo/global.js:192
msgid "Application version"
msgstr "应用版本"
@@ -183,7 +183,7 @@ msgstr "认证超时"
msgid "Authenticated length"
msgstr "认证长度"
-#: htdocs/luci-static/resources/view/fchomo/global.js:304
+#: htdocs/luci-static/resources/view/fchomo/global.js:375
msgid "Auto"
msgstr "自动"
@@ -191,11 +191,11 @@ msgstr "自动"
msgid "Auto configure firewall"
msgstr "自动配置防火墙"
-#: htdocs/luci-static/resources/view/fchomo/global.js:212
+#: htdocs/luci-static/resources/view/fchomo/global.js:283
msgid "Auto update"
msgstr "自动更新"
-#: htdocs/luci-static/resources/view/fchomo/global.js:213
+#: htdocs/luci-static/resources/view/fchomo/global.js:284
msgid "Auto update resources."
msgstr "自动更新资源文件。"
@@ -203,7 +203,7 @@ msgstr "自动更新资源文件。"
msgid "Baidu"
msgstr "百度"
-#: htdocs/luci-static/resources/view/fchomo/global.js:409
+#: htdocs/luci-static/resources/view/fchomo/global.js:480
msgid "Based on google/gvisor."
msgstr "基于 google/gvisor。"
@@ -220,25 +220,25 @@ msgstr "二进制文件"
msgid "Binary format only supports domain / ipcidr"
msgstr "二进制格式仅支持 domain/ipcidr"
-#: htdocs/luci-static/resources/view/fchomo/client.js:550
-#: htdocs/luci-static/resources/view/fchomo/global.js:591
+#: htdocs/luci-static/resources/view/fchomo/client.js:557
+#: htdocs/luci-static/resources/view/fchomo/global.js:662
#: htdocs/luci-static/resources/view/fchomo/node.js:775
-#: htdocs/luci-static/resources/view/fchomo/node.js:986
+#: htdocs/luci-static/resources/view/fchomo/node.js:1004
msgid "Bind interface"
msgstr "绑定接口"
-#: htdocs/luci-static/resources/view/fchomo/client.js:551
+#: htdocs/luci-static/resources/view/fchomo/client.js:558
#: htdocs/luci-static/resources/view/fchomo/node.js:776
-#: htdocs/luci-static/resources/view/fchomo/node.js:987
+#: htdocs/luci-static/resources/view/fchomo/node.js:1005
msgid "Bind outbound interface."
msgstr "绑定出站接口。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:592
+#: htdocs/luci-static/resources/view/fchomo/global.js:663
msgid ""
"Bind outbound traffic to specific interface. Leave empty to auto detect."
msgstr "绑定出站流量至指定接口。留空自动检测。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:632
+#: htdocs/luci-static/resources/view/fchomo/global.js:703
msgid "Black list"
msgstr "黑名单"
@@ -246,27 +246,27 @@ msgstr "黑名单"
msgid "Block DNS queries"
msgstr "封锁 DNS 请求"
-#: htdocs/luci-static/resources/view/fchomo/client.js:764
+#: htdocs/luci-static/resources/view/fchomo/client.js:771
msgid "Boot DNS server"
msgstr "启动 DNS 服务器"
-#: htdocs/luci-static/resources/view/fchomo/client.js:771
+#: htdocs/luci-static/resources/view/fchomo/client.js:778
msgid "Boot DNS server (Node)"
msgstr "启动 DNS 服务器 (节点)"
-#: htdocs/luci-static/resources/view/fchomo/global.js:675
+#: htdocs/luci-static/resources/view/fchomo/global.js:746
msgid "Bypass CN"
msgstr "绕过 CN 流量"
-#: htdocs/luci-static/resources/view/fchomo/global.js:481
+#: htdocs/luci-static/resources/view/fchomo/global.js:552
msgid "CORS Allow origins"
msgstr "CORS 允许的来源"
-#: htdocs/luci-static/resources/view/fchomo/global.js:485
+#: htdocs/luci-static/resources/view/fchomo/global.js:556
msgid "CORS Allow private network"
msgstr "CORS 允许私有网络"
-#: htdocs/luci-static/resources/view/fchomo/global.js:482
+#: htdocs/luci-static/resources/view/fchomo/global.js:553
msgid "CORS allowed origins, *
will be used if empty."
msgstr "CORS 允许的来源,留空则使用 *
。"
@@ -287,33 +287,38 @@ msgstr "证书指纹。用于实现 SSL证书固定 并防止 MitM。"
msgid "Certificate path"
msgstr "证书路径"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1119
-#: htdocs/luci-static/resources/view/fchomo/node.js:1125
+#: htdocs/luci-static/resources/view/fchomo/node.js:1137
+#: htdocs/luci-static/resources/view/fchomo/node.js:1143
msgid "Chain head"
msgstr "链头"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1166
-#: htdocs/luci-static/resources/view/fchomo/node.js:1173
+#: htdocs/luci-static/resources/view/fchomo/node.js:1184
+#: htdocs/luci-static/resources/view/fchomo/node.js:1191
msgid "Chain tail"
msgstr "链尾"
-#: htdocs/luci-static/resources/view/fchomo/global.js:194
+#: htdocs/luci-static/resources/view/fchomo/global.js:134
+#: htdocs/luci-static/resources/view/fchomo/global.js:242
msgid "Check"
msgstr "检查"
-#: htdocs/luci-static/resources/view/fchomo/global.js:75
+#: htdocs/luci-static/resources/view/fchomo/global.js:249
+msgid "Check routerself NAT Behavior"
+msgstr "检测路由器自身 NAT 行为"
+
+#: htdocs/luci-static/resources/view/fchomo/global.js:86
msgid "Check update"
msgstr "检查更新"
-#: htdocs/luci-static/resources/view/fchomo/global.js:276
+#: htdocs/luci-static/resources/view/fchomo/global.js:347
msgid "China IPv4 list version"
msgstr "大陆 IPv4 库版本"
-#: htdocs/luci-static/resources/view/fchomo/global.js:279
+#: htdocs/luci-static/resources/view/fchomo/global.js:350
msgid "China IPv6 list version"
msgstr "大陆 IPv6 库版本"
-#: htdocs/luci-static/resources/view/fchomo/global.js:285
+#: htdocs/luci-static/resources/view/fchomo/global.js:356
msgid "China list version"
msgstr "大陆域名列表版本"
@@ -335,7 +340,7 @@ msgstr "客户端"
msgid "Client fingerprint"
msgstr "客户端指纹"
-#: htdocs/luci-static/resources/view/fchomo/global.js:149
+#: htdocs/luci-static/resources/view/fchomo/global.js:197
msgid "Client status"
msgstr "客户端状态"
@@ -343,21 +348,21 @@ msgstr "客户端状态"
msgid "Collecting data..."
msgstr "收集数据中..."
-#: htdocs/luci-static/resources/view/fchomo/global.js:662
-#: htdocs/luci-static/resources/view/fchomo/global.js:669
+#: htdocs/luci-static/resources/view/fchomo/global.js:733
+#: htdocs/luci-static/resources/view/fchomo/global.js:740
msgid "Common and STUN ports"
msgstr "常用端口和 STUN 端口"
-#: htdocs/luci-static/resources/view/fchomo/global.js:661
-#: htdocs/luci-static/resources/view/fchomo/global.js:668
+#: htdocs/luci-static/resources/view/fchomo/global.js:732
+#: htdocs/luci-static/resources/view/fchomo/global.js:739
msgid "Common ports only (bypass P2P traffic)"
msgstr "仅常用端口(绕过 P2P 流量)"
-#: htdocs/luci-static/resources/fchomo.js:640
+#: htdocs/luci-static/resources/fchomo.js:649
msgid "Complete"
msgstr "完成"
-#: htdocs/luci-static/resources/view/fchomo/node.js:941
+#: htdocs/luci-static/resources/view/fchomo/node.js:959
msgid "Configuration Items"
msgstr "配置项"
@@ -366,17 +371,18 @@ msgstr "配置项"
msgid "Congestion controller"
msgstr "拥塞控制器"
-#: htdocs/luci-static/resources/view/fchomo/global.js:170
+#: htdocs/luci-static/resources/view/fchomo/global.js:218
msgid "Connection check"
msgstr "连接检查"
-#: htdocs/luci-static/resources/view/fchomo/node.js:867
+#: htdocs/luci-static/resources/view/fchomo/node.js:870
+#: htdocs/luci-static/resources/view/fchomo/node.js:891
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:273
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:294
msgid "Content will not be verified, Please make sure you enter it correctly."
msgstr "内容将不会被验证,请确保输入正确。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:859
+#: htdocs/luci-static/resources/view/fchomo/node.js:862
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:265
msgid "Contents"
msgstr "内容"
@@ -385,23 +391,23 @@ msgstr "内容"
msgid "Contents have been saved."
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:139
+#: htdocs/luci-static/resources/view/fchomo/global.js:187
msgid "Core version"
msgstr "核心版本"
-#: htdocs/luci-static/resources/view/fchomo/global.js:225
+#: htdocs/luci-static/resources/view/fchomo/global.js:296
msgid "Cron expression"
msgstr "Cron 表达式"
-#: htdocs/luci-static/resources/view/fchomo/global.js:691
+#: htdocs/luci-static/resources/view/fchomo/global.js:762
msgid "Custom Direct List"
msgstr "自定义直连列表"
-#: htdocs/luci-static/resources/view/fchomo/node.js:908
+#: htdocs/luci-static/resources/view/fchomo/node.js:926
msgid "Custom HTTP header."
msgstr "自定义 HTTP header。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:716
+#: htdocs/luci-static/resources/view/fchomo/global.js:787
msgid "Custom Proxy List"
msgstr "自定义代理列表"
@@ -414,31 +420,31 @@ msgstr "自定义内部 hosts。支持 yaml
或 json
msgid "DIRECT"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:944
-#: htdocs/luci-static/resources/view/fchomo/client.js:954
+#: htdocs/luci-static/resources/view/fchomo/client.js:958
+#: htdocs/luci-static/resources/view/fchomo/client.js:968
msgid "DNS policy"
msgstr "DNS 策略"
-#: htdocs/luci-static/resources/view/fchomo/global.js:374
+#: htdocs/luci-static/resources/view/fchomo/global.js:445
msgid "DNS port"
msgstr " DNS 端口"
-#: htdocs/luci-static/resources/view/fchomo/client.js:803
-#: htdocs/luci-static/resources/view/fchomo/client.js:813
-#: htdocs/luci-static/resources/view/fchomo/client.js:999
+#: htdocs/luci-static/resources/view/fchomo/client.js:810
+#: htdocs/luci-static/resources/view/fchomo/client.js:820
+#: htdocs/luci-static/resources/view/fchomo/client.js:1013
#: htdocs/luci-static/resources/view/fchomo/node.js:402
msgid "DNS server"
msgstr "DNS 服务器"
-#: htdocs/luci-static/resources/view/fchomo/client.js:750
+#: htdocs/luci-static/resources/view/fchomo/client.js:757
msgid "DNS settings"
msgstr "DNS 设置"
-#: htdocs/luci-static/resources/view/fchomo/global.js:243
+#: htdocs/luci-static/resources/view/fchomo/global.js:314
msgid "Dashboard version"
msgstr "面板版本"
-#: htdocs/luci-static/resources/view/fchomo/global.js:313
+#: htdocs/luci-static/resources/view/fchomo/global.js:384
msgid "Debug"
msgstr "调试"
@@ -450,7 +456,7 @@ msgstr "默认"
msgid "Default DNS (issued by WAN)"
msgstr "默认 DNS(由 WAN 下发)"
-#: htdocs/luci-static/resources/view/fchomo/client.js:778
+#: htdocs/luci-static/resources/view/fchomo/client.js:785
msgid "Default DNS server"
msgstr "默认 DNS 服务器"
@@ -462,38 +468,38 @@ msgstr "允许通过 WireGuard 转发的目的地址"
msgid "Dial fields"
msgstr "拨号字段"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1134
-#: htdocs/luci-static/resources/view/fchomo/node.js:1182
+#: htdocs/luci-static/resources/view/fchomo/node.js:1152
+#: htdocs/luci-static/resources/view/fchomo/node.js:1200
msgid "Different chain head/tail"
msgstr "不同的链头/链尾"
-#: htdocs/luci-static/resources/view/fchomo/global.js:297
+#: htdocs/luci-static/resources/view/fchomo/global.js:368
msgid "Direct"
msgstr "直连"
-#: htdocs/luci-static/resources/view/fchomo/global.js:634
+#: htdocs/luci-static/resources/view/fchomo/global.js:705
msgid "Direct IPv4 IP-s"
msgstr "直连 IPv4 地址"
-#: htdocs/luci-static/resources/view/fchomo/global.js:637
+#: htdocs/luci-static/resources/view/fchomo/global.js:708
msgid "Direct IPv6 IP-s"
msgstr "直连 IPv6 地址"
-#: htdocs/luci-static/resources/view/fchomo/global.js:640
+#: htdocs/luci-static/resources/view/fchomo/global.js:711
msgid "Direct MAC-s"
msgstr "直连 MAC 地址"
-#: htdocs/luci-static/resources/view/fchomo/global.js:305
+#: htdocs/luci-static/resources/view/fchomo/global.js:376
#: htdocs/luci-static/resources/view/fchomo/node.js:116
#: htdocs/luci-static/resources/view/fchomo/server.js:177
msgid "Disable"
msgstr "禁用"
-#: htdocs/luci-static/resources/view/fchomo/global.js:568
+#: htdocs/luci-static/resources/view/fchomo/global.js:639
msgid "Disable ECN of quic-go"
msgstr "禁用 quic-go 的 显式拥塞通知(ECN)"
-#: htdocs/luci-static/resources/view/fchomo/global.js:565
+#: htdocs/luci-static/resources/view/fchomo/global.js:636
msgid "Disable GSO of quic-go"
msgstr "禁用 quic-go 的 通用分段卸载(GSO)"
@@ -501,15 +507,15 @@ msgstr "禁用 quic-go 的 通用分段卸载(GSO)"
msgid "Disable SNI"
msgstr "禁用 SNI"
-#: htdocs/luci-static/resources/view/fchomo/client.js:546
+#: htdocs/luci-static/resources/view/fchomo/client.js:553
msgid "Disable UDP"
msgstr "禁用 UDP"
-#: htdocs/luci-static/resources/view/fchomo/client.js:969
-#: htdocs/luci-static/resources/view/fchomo/client.js:974
-#: htdocs/luci-static/resources/view/fchomo/client.js:1039
-#: htdocs/luci-static/resources/view/fchomo/client.js:1046
-#: htdocs/luci-static/resources/view/fchomo/client.js:1048
+#: htdocs/luci-static/resources/view/fchomo/client.js:983
+#: htdocs/luci-static/resources/view/fchomo/client.js:988
+#: htdocs/luci-static/resources/view/fchomo/client.js:1060
+#: htdocs/luci-static/resources/view/fchomo/client.js:1067
+#: htdocs/luci-static/resources/view/fchomo/client.js:1069
msgid "Domain"
msgstr "域名"
@@ -518,7 +524,7 @@ msgid "Donot send server name in ClientHello."
msgstr "不要在 ClientHello 中发送服务器名称。"
#: htdocs/luci-static/resources/view/fchomo/node.js:550
-#: htdocs/luci-static/resources/view/fchomo/node.js:974
+#: htdocs/luci-static/resources/view/fchomo/node.js:992
msgid "Donot verifying server certificate."
msgstr "不验证服务器证书。"
@@ -530,11 +536,11 @@ msgstr "下载带宽"
msgid "Download bandwidth in Mbps."
msgstr "下载带宽(单位:Mbps)。"
-#: htdocs/luci-static/resources/fchomo.js:546
+#: htdocs/luci-static/resources/fchomo.js:555
msgid "Download failed: %s"
msgstr "下载失败: %s"
-#: htdocs/luci-static/resources/fchomo.js:544
+#: htdocs/luci-static/resources/fchomo.js:553
msgid "Download successful."
msgstr "下载成功。"
@@ -542,15 +548,15 @@ msgstr "下载成功。"
msgid "Dual stack"
msgstr "双栈"
-#: htdocs/luci-static/resources/view/fchomo/client.js:924
+#: htdocs/luci-static/resources/view/fchomo/client.js:938
msgid "ECS override"
msgstr "强制覆盖 ECS"
-#: htdocs/luci-static/resources/view/fchomo/client.js:908
+#: htdocs/luci-static/resources/view/fchomo/client.js:922
msgid "EDNS Client Subnet"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:316
+#: htdocs/luci-static/resources/view/fchomo/global.js:387
msgid "ETag support"
msgstr "ETag 支持"
@@ -570,23 +576,23 @@ msgstr "编辑节点"
msgid "Edit ruleset"
msgstr "编辑规则集"
-#: htdocs/luci-static/resources/view/fchomo/node.js:857
+#: htdocs/luci-static/resources/view/fchomo/node.js:860
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:263
msgid "Editer"
msgstr "编辑器"
-#: htdocs/luci-static/resources/view/fchomo/client.js:454
-#: htdocs/luci-static/resources/view/fchomo/client.js:485
-#: htdocs/luci-static/resources/view/fchomo/client.js:666
-#: htdocs/luci-static/resources/view/fchomo/client.js:736
-#: htdocs/luci-static/resources/view/fchomo/client.js:823
-#: htdocs/luci-static/resources/view/fchomo/client.js:964
-#: htdocs/luci-static/resources/view/fchomo/global.js:303
-#: htdocs/luci-static/resources/view/fchomo/global.js:540
+#: htdocs/luci-static/resources/view/fchomo/client.js:461
+#: htdocs/luci-static/resources/view/fchomo/client.js:492
+#: htdocs/luci-static/resources/view/fchomo/client.js:673
+#: htdocs/luci-static/resources/view/fchomo/client.js:743
+#: htdocs/luci-static/resources/view/fchomo/client.js:830
+#: htdocs/luci-static/resources/view/fchomo/client.js:978
+#: htdocs/luci-static/resources/view/fchomo/global.js:374
+#: htdocs/luci-static/resources/view/fchomo/global.js:611
#: htdocs/luci-static/resources/view/fchomo/node.js:51
#: htdocs/luci-static/resources/view/fchomo/node.js:833
-#: htdocs/luci-static/resources/view/fchomo/node.js:1006
-#: htdocs/luci-static/resources/view/fchomo/node.js:1087
+#: htdocs/luci-static/resources/view/fchomo/node.js:1024
+#: htdocs/luci-static/resources/view/fchomo/node.js:1105
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:199
#: htdocs/luci-static/resources/view/fchomo/server.js:84
#: htdocs/luci-static/resources/view/fchomo/server.js:108
@@ -606,7 +612,7 @@ msgstr ""
msgid "Enable 0-RTT handshake"
msgstr "启用 0-RTT 握手"
-#: htdocs/luci-static/resources/view/fchomo/global.js:571
+#: htdocs/luci-static/resources/view/fchomo/global.js:642
msgid ""
"Enable IP4P "
"conversion for outbound connections"
@@ -635,7 +641,7 @@ msgid "Enable statistic"
msgstr "启用统计"
#: htdocs/luci-static/resources/view/fchomo/node.js:464
-#: htdocs/luci-static/resources/view/fchomo/node.js:959
+#: htdocs/luci-static/resources/view/fchomo/node.js:977
msgid ""
"Enable the SUoT protocol, requires server support. Conflict with Multiplex."
msgstr "启用 SUoT 协议,需要服务端支持。与多路复用冲突。"
@@ -647,30 +653,30 @@ msgid ""
"connections, losing the ability to masquerade with HTTP/3."
msgstr "启用混淆将使服务器与标准的 QUIC 连接不兼容,失去 HTTP/3 伪装的能力。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:430
+#: htdocs/luci-static/resources/view/fchomo/global.js:501
msgid "Endpoint-Independent NAT"
msgstr "端点独立 NAT"
#: htdocs/luci-static/resources/view/fchomo/client.js:305
-#: htdocs/luci-static/resources/view/fchomo/client.js:991
+#: htdocs/luci-static/resources/view/fchomo/client.js:1005
msgid "Entry"
msgstr "条目"
-#: htdocs/luci-static/resources/view/fchomo/global.js:310
+#: htdocs/luci-static/resources/view/fchomo/global.js:381
msgid "Error"
msgstr "错误"
-#: htdocs/luci-static/resources/view/fchomo/client.js:602
+#: htdocs/luci-static/resources/view/fchomo/client.js:609
msgid ""
"Exceeding this triggers a forced health check. 5
will be used "
"if empty."
msgstr "超过此限制将会触发强制健康检查。留空则使用 5
。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1056
+#: htdocs/luci-static/resources/view/fchomo/node.js:1074
msgid "Exclude matched node types."
msgstr "排除匹配的节点类型。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:639
+#: htdocs/luci-static/resources/view/fchomo/client.js:646
msgid ""
"Exclude matched node types. Available types see here."
@@ -678,46 +684,50 @@ msgstr ""
"排除匹配的节点类型。可用类型请参见此处。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:634
-#: htdocs/luci-static/resources/view/fchomo/node.js:1050
+#: htdocs/luci-static/resources/view/fchomo/client.js:641
+#: htdocs/luci-static/resources/view/fchomo/node.js:1068
msgid "Exclude nodes that meet keywords or regexps."
msgstr "排除匹配关键词或表达式的节点。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:594
-#: htdocs/luci-static/resources/view/fchomo/node.js:1037
+#: htdocs/luci-static/resources/view/fchomo/global.js:127
+msgid "Expand/Collapse result"
+msgstr "展开/收起 结果"
+
+#: htdocs/luci-static/resources/view/fchomo/client.js:601
+#: htdocs/luci-static/resources/view/fchomo/node.js:1055
msgid "Expected HTTP code. 204
will be used if empty."
msgstr "预期的 HTTP code。留空则使用 204
。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:596
-#: htdocs/luci-static/resources/view/fchomo/node.js:1039
+#: htdocs/luci-static/resources/view/fchomo/client.js:603
+#: htdocs/luci-static/resources/view/fchomo/node.js:1057
msgid "Expected status"
msgstr "预期状态"
-#: htdocs/luci-static/resources/fchomo.js:570
-#: htdocs/luci-static/resources/fchomo.js:573
-#: htdocs/luci-static/resources/fchomo.js:576
-#: htdocs/luci-static/resources/fchomo.js:657
-#: htdocs/luci-static/resources/fchomo.js:665
-#: htdocs/luci-static/resources/fchomo.js:673
-#: htdocs/luci-static/resources/fchomo.js:697
-#: htdocs/luci-static/resources/fchomo.js:714
-#: htdocs/luci-static/resources/fchomo.js:717
-#: htdocs/luci-static/resources/fchomo.js:727
-#: htdocs/luci-static/resources/fchomo.js:740
-#: htdocs/luci-static/resources/fchomo.js:742
-#: htdocs/luci-static/resources/fchomo.js:755
+#: htdocs/luci-static/resources/fchomo.js:579
+#: htdocs/luci-static/resources/fchomo.js:582
+#: htdocs/luci-static/resources/fchomo.js:585
+#: htdocs/luci-static/resources/fchomo.js:666
+#: htdocs/luci-static/resources/fchomo.js:674
+#: htdocs/luci-static/resources/fchomo.js:682
+#: htdocs/luci-static/resources/fchomo.js:706
+#: htdocs/luci-static/resources/fchomo.js:723
+#: htdocs/luci-static/resources/fchomo.js:726
+#: htdocs/luci-static/resources/fchomo.js:736
+#: htdocs/luci-static/resources/fchomo.js:749
+#: htdocs/luci-static/resources/fchomo.js:751
#: htdocs/luci-static/resources/fchomo.js:764
-#: htdocs/luci-static/resources/fchomo.js:771
+#: htdocs/luci-static/resources/fchomo.js:773
#: htdocs/luci-static/resources/fchomo.js:780
-#: htdocs/luci-static/resources/fchomo.js:792
-#: htdocs/luci-static/resources/fchomo.js:795
-#: htdocs/luci-static/resources/fchomo.js:805
+#: htdocs/luci-static/resources/fchomo.js:789
+#: htdocs/luci-static/resources/fchomo.js:801
+#: htdocs/luci-static/resources/fchomo.js:804
+#: htdocs/luci-static/resources/fchomo.js:814
#: htdocs/luci-static/resources/view/fchomo/client.js:27
-#: htdocs/luci-static/resources/view/fchomo/client.js:479
-#: htdocs/luci-static/resources/view/fchomo/client.js:838
+#: htdocs/luci-static/resources/view/fchomo/client.js:486
+#: htdocs/luci-static/resources/view/fchomo/client.js:845
#: htdocs/luci-static/resources/view/fchomo/node.js:542
-#: htdocs/luci-static/resources/view/fchomo/node.js:1134
-#: htdocs/luci-static/resources/view/fchomo/node.js:1182
+#: htdocs/luci-static/resources/view/fchomo/node.js:1152
+#: htdocs/luci-static/resources/view/fchomo/node.js:1200
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:218
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:241
msgid "Expecting: %s"
@@ -728,7 +738,7 @@ msgstr "请输入:%s"
msgid "Expecting: only support %s."
msgstr "请输入:仅支援 %s."
-#: htdocs/luci-static/resources/view/fchomo/global.js:559
+#: htdocs/luci-static/resources/view/fchomo/global.js:630
msgid "Experimental"
msgstr "实验性"
@@ -741,15 +751,15 @@ msgstr "实验性"
msgid "Factor"
msgstr "条件"
-#: htdocs/luci-static/resources/fchomo.js:598
+#: htdocs/luci-static/resources/fchomo.js:607
msgid "Failed to execute \"/etc/init.d/fchomo %s %s\" reason: %s"
msgstr "无法执行 \"/etc/init.d/fchomo %s %s\" 原因: %s"
-#: htdocs/luci-static/resources/fchomo.js:905
+#: htdocs/luci-static/resources/fchomo.js:914
msgid "Failed to upload %s, error: %s."
msgstr "上传 %s 失败,错误:%s。"
-#: htdocs/luci-static/resources/fchomo.js:924
+#: htdocs/luci-static/resources/fchomo.js:933
msgid "Failed to upload, error: %s."
msgstr "上传失败,错误:%s。"
@@ -757,33 +767,33 @@ msgstr "上传失败,错误:%s。"
msgid "Fallback"
msgstr "自动回退"
-#: htdocs/luci-static/resources/view/fchomo/client.js:785
-#: htdocs/luci-static/resources/view/fchomo/client.js:786
-#: htdocs/luci-static/resources/view/fchomo/client.js:797
+#: htdocs/luci-static/resources/view/fchomo/client.js:792
+#: htdocs/luci-static/resources/view/fchomo/client.js:793
+#: htdocs/luci-static/resources/view/fchomo/client.js:804
msgid "Fallback DNS server"
msgstr "後備 DNS 服务器"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1018
+#: htdocs/luci-static/resources/view/fchomo/client.js:1039
msgid "Fallback filter"
msgstr "後備过滤器"
-#: htdocs/luci-static/resources/view/fchomo/client.js:629
-#: htdocs/luci-static/resources/view/fchomo/node.js:1045
+#: htdocs/luci-static/resources/view/fchomo/client.js:636
+#: htdocs/luci-static/resources/view/fchomo/node.js:1063
msgid "Filter nodes that meet keywords or regexps."
msgstr "过滤匹配关键字或表达式的节点。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:779
-#: htdocs/luci-static/resources/view/fchomo/client.js:796
+#: htdocs/luci-static/resources/view/fchomo/client.js:786
+#: htdocs/luci-static/resources/view/fchomo/client.js:803
msgid "Final DNS server"
msgstr "兜底 DNS 服务器"
-#: htdocs/luci-static/resources/view/fchomo/client.js:779
-#: htdocs/luci-static/resources/view/fchomo/client.js:793
+#: htdocs/luci-static/resources/view/fchomo/client.js:786
+#: htdocs/luci-static/resources/view/fchomo/client.js:800
msgid "Final DNS server (Used to Domestic-IP response)"
msgstr "兜底 DNS 服务器 (用于 境内-IP 响应)"
-#: htdocs/luci-static/resources/view/fchomo/client.js:786
-#: htdocs/luci-static/resources/view/fchomo/client.js:794
+#: htdocs/luci-static/resources/view/fchomo/client.js:793
+#: htdocs/luci-static/resources/view/fchomo/client.js:801
msgid "Final DNS server (Used to Overseas-IP response)"
msgstr "兜底 DNS 服务器 (用于 境外-IP 响应)"
@@ -791,7 +801,7 @@ msgstr "兜底 DNS 服务器 (用于 境外-IP 响应)"
msgid "Flow"
msgstr "流控"
-#: htdocs/luci-static/resources/view/fchomo/client.js:618
+#: htdocs/luci-static/resources/view/fchomo/client.js:625
msgid ""
"For details, see %s."
@@ -799,9 +809,9 @@ msgstr ""
"实现细节请参阅 %s."
-#: htdocs/luci-static/resources/view/fchomo/client.js:595
-#: htdocs/luci-static/resources/view/fchomo/node.js:932
-#: htdocs/luci-static/resources/view/fchomo/node.js:1038
+#: htdocs/luci-static/resources/view/fchomo/client.js:602
+#: htdocs/luci-static/resources/view/fchomo/node.js:950
+#: htdocs/luci-static/resources/view/fchomo/node.js:1056
msgid ""
"For format see %s."
@@ -813,7 +823,7 @@ msgstr ""
msgid "Force DNS remote resolution."
msgstr "强制 DNS 远程解析。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:519
+#: htdocs/luci-static/resources/view/fchomo/global.js:590
msgid "Forced sniffing domain"
msgstr "强制嗅探域名"
@@ -821,8 +831,9 @@ msgstr "强制嗅探域名"
msgid "Format"
msgstr "格式"
-#: htdocs/luci-static/resources/view/fchomo/global.js:127
+#: htdocs/luci-static/resources/view/fchomo/global.js:175
#: htdocs/luci-static/resources/view/fchomo/log.js:97
+#: htdocs/luci-static/resources/view/fchomo/log.js:102
#: root/usr/share/luci/menu.d/luci-app-fchomo.json:3
msgid "FullCombo Mihomo"
msgstr ""
@@ -831,21 +842,21 @@ msgstr ""
msgid "GET"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:282
+#: htdocs/luci-static/resources/view/fchomo/global.js:353
msgid "GFW list version"
msgstr "GFW 域名列表版本"
-#: htdocs/luci-static/resources/view/fchomo/global.js:290
+#: htdocs/luci-static/resources/view/fchomo/global.js:361
msgid "General"
msgstr "常规"
-#: htdocs/luci-static/resources/view/fchomo/client.js:470
+#: htdocs/luci-static/resources/view/fchomo/client.js:477
#: htdocs/luci-static/resources/view/fchomo/node.js:40
#: htdocs/luci-static/resources/view/fchomo/node.js:823
msgid "General fields"
msgstr "常规字段"
-#: htdocs/luci-static/resources/view/fchomo/global.js:293
+#: htdocs/luci-static/resources/view/fchomo/global.js:364
msgid "General settings"
msgstr "常规设置"
@@ -862,29 +873,29 @@ msgstr "常规设置"
msgid "Generate"
msgstr "生成"
-#: htdocs/luci-static/resources/view/fchomo/global.js:418
+#: htdocs/luci-static/resources/view/fchomo/global.js:489
msgid "Generic segmentation offload"
msgstr "通用分段卸载(GSO)"
-#: htdocs/luci-static/resources/view/fchomo/global.js:267
+#: htdocs/luci-static/resources/view/fchomo/global.js:338
msgid "GeoIP version"
msgstr "GeoIP 版本"
-#: htdocs/luci-static/resources/view/fchomo/global.js:270
+#: htdocs/luci-static/resources/view/fchomo/global.js:341
msgid "GeoSite version"
msgstr "GeoSite 版本"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1028
+#: htdocs/luci-static/resources/view/fchomo/client.js:1049
msgid "Geoip code"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1025
+#: htdocs/luci-static/resources/view/fchomo/client.js:1046
msgid "Geoip enable"
msgstr "Geoip 启用"
-#: htdocs/luci-static/resources/view/fchomo/client.js:970
-#: htdocs/luci-static/resources/view/fchomo/client.js:979
-#: htdocs/luci-static/resources/view/fchomo/client.js:1037
+#: htdocs/luci-static/resources/view/fchomo/client.js:984
+#: htdocs/luci-static/resources/view/fchomo/client.js:993
+#: htdocs/luci-static/resources/view/fchomo/client.js:1058
msgid "Geosite"
msgstr ""
@@ -892,16 +903,16 @@ msgstr ""
msgid "GitHub"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:299
+#: htdocs/luci-static/resources/view/fchomo/global.js:370
#: root/usr/share/luci/menu.d/luci-app-fchomo.json:14
msgid "Global"
msgstr "全局"
-#: htdocs/luci-static/resources/view/fchomo/global.js:339
+#: htdocs/luci-static/resources/view/fchomo/global.js:410
msgid "Global Authentication"
msgstr "全局认证"
-#: htdocs/luci-static/resources/view/fchomo/global.js:442
+#: htdocs/luci-static/resources/view/fchomo/global.js:513
msgid "Global client fingerprint"
msgstr "全局客户端指纹"
@@ -917,7 +928,7 @@ msgstr "谷歌"
msgid "Grant access to fchomo configuration"
msgstr "授予 fchomo 访问 UCI 配置的权限"
-#: htdocs/luci-static/resources/view/fchomo/client.js:495
+#: htdocs/luci-static/resources/view/fchomo/client.js:502
msgid "Group"
msgstr "组"
@@ -931,7 +942,7 @@ msgstr ""
#: htdocs/luci-static/resources/view/fchomo/node.js:84
#: htdocs/luci-static/resources/view/fchomo/node.js:649
-#: htdocs/luci-static/resources/view/fchomo/node.js:907
+#: htdocs/luci-static/resources/view/fchomo/node.js:925
msgid "HTTP header"
msgstr "HTTP header"
@@ -939,7 +950,7 @@ msgstr "HTTP header"
msgid "HTTP request method"
msgstr "HTTP 请求方法"
-#: htdocs/luci-static/resources/view/fchomo/client.js:892
+#: htdocs/luci-static/resources/view/fchomo/client.js:906
msgid "HTTP/3"
msgstr ""
@@ -954,31 +965,31 @@ msgstr "身份验证失败时的 HTTP3 服务器响应。默认返回 404 页面
msgid "HTTPUpgrade"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:678
+#: htdocs/luci-static/resources/view/fchomo/global.js:749
msgid "Handle domain"
msgstr "处理域名"
-#: htdocs/luci-static/resources/view/fchomo/client.js:564
-#: htdocs/luci-static/resources/view/fchomo/node.js:1010
+#: htdocs/luci-static/resources/view/fchomo/client.js:571
+#: htdocs/luci-static/resources/view/fchomo/node.js:1028
msgid "Health check URL"
msgstr "健康检查 URL"
-#: htdocs/luci-static/resources/view/fchomo/client.js:593
-#: htdocs/luci-static/resources/view/fchomo/node.js:1036
+#: htdocs/luci-static/resources/view/fchomo/client.js:600
+#: htdocs/luci-static/resources/view/fchomo/node.js:1054
msgid "Health check expected status"
msgstr "健康检查预期状态"
-#: htdocs/luci-static/resources/view/fchomo/client.js:573
-#: htdocs/luci-static/resources/view/fchomo/node.js:1019
+#: htdocs/luci-static/resources/view/fchomo/client.js:580
+#: htdocs/luci-static/resources/view/fchomo/node.js:1037
msgid "Health check interval"
msgstr "健康检查间隔"
-#: htdocs/luci-static/resources/view/fchomo/client.js:580
-#: htdocs/luci-static/resources/view/fchomo/node.js:1025
+#: htdocs/luci-static/resources/view/fchomo/client.js:587
+#: htdocs/luci-static/resources/view/fchomo/node.js:1043
msgid "Health check timeout"
msgstr "健康检查超时"
-#: htdocs/luci-static/resources/view/fchomo/client.js:472
+#: htdocs/luci-static/resources/view/fchomo/client.js:479
#: htdocs/luci-static/resources/view/fchomo/node.js:825
msgid "Health fields"
msgstr "健康字段"
@@ -1009,12 +1020,12 @@ msgstr ""
msgid "Hysteria2"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1030
-#: htdocs/luci-static/resources/view/fchomo/client.js:1043
+#: htdocs/luci-static/resources/view/fchomo/client.js:1051
+#: htdocs/luci-static/resources/view/fchomo/client.js:1064
msgid "IP"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:1041
+#: htdocs/luci-static/resources/view/fchomo/client.js:1062
msgid "IP CIDR"
msgstr ""
@@ -1023,7 +1034,7 @@ msgid "IP override"
msgstr "IP 覆写"
#: htdocs/luci-static/resources/view/fchomo/node.js:787
-#: htdocs/luci-static/resources/view/fchomo/node.js:998
+#: htdocs/luci-static/resources/view/fchomo/node.js:1016
msgid "IP version"
msgstr "IP 版本"
@@ -1035,8 +1046,8 @@ msgstr "仅 IPv4"
msgid "IPv6 only"
msgstr "仅 IPv6"
-#: htdocs/luci-static/resources/view/fchomo/client.js:761
-#: htdocs/luci-static/resources/view/fchomo/global.js:319
+#: htdocs/luci-static/resources/view/fchomo/client.js:768
+#: htdocs/luci-static/resources/view/fchomo/global.js:390
msgid "IPv6 support"
msgstr "IPv6 支持"
@@ -1064,14 +1075,14 @@ msgstr "导入 rule-set 链接"
#: htdocs/luci-static/resources/view/fchomo/node.js:104
#: htdocs/luci-static/resources/view/fchomo/node.js:110
-#: htdocs/luci-static/resources/view/fchomo/node.js:964
-#: htdocs/luci-static/resources/view/fchomo/node.js:969
+#: htdocs/luci-static/resources/view/fchomo/node.js:982
+#: htdocs/luci-static/resources/view/fchomo/node.js:987
#: htdocs/luci-static/resources/view/fchomo/server.js:159
#: htdocs/luci-static/resources/view/fchomo/server.js:165
msgid "In Mbps."
msgstr "单位为 Mbps。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:885
+#: htdocs/luci-static/resources/view/fchomo/node.js:903
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:306
msgid "In bytes. %s
will be used if empty."
msgstr "单位为字节。留空则使用 %s
。"
@@ -1081,9 +1092,9 @@ msgstr "单位为字节。留空则使用 %s
。"
msgid "In millisecond."
msgstr "单位为毫秒。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:581
-#: htdocs/luci-static/resources/view/fchomo/client.js:610
-#: htdocs/luci-static/resources/view/fchomo/node.js:1026
+#: htdocs/luci-static/resources/view/fchomo/client.js:588
+#: htdocs/luci-static/resources/view/fchomo/client.js:617
+#: htdocs/luci-static/resources/view/fchomo/node.js:1044
msgid "In millisecond. %s
will be used if empty."
msgstr "单位为毫秒。留空则使用 %s
。"
@@ -1092,53 +1103,54 @@ msgstr "单位为毫秒。留空则使用 %s
。"
msgid "In seconds."
msgstr "单位为秒。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:574
-#: htdocs/luci-static/resources/view/fchomo/global.js:329
-#: htdocs/luci-static/resources/view/fchomo/global.js:334
-#: htdocs/luci-static/resources/view/fchomo/global.js:426
-#: htdocs/luci-static/resources/view/fchomo/node.js:891
-#: htdocs/luci-static/resources/view/fchomo/node.js:1020
+#: htdocs/luci-static/resources/view/fchomo/client.js:581
+#: htdocs/luci-static/resources/view/fchomo/global.js:400
+#: htdocs/luci-static/resources/view/fchomo/global.js:405
+#: htdocs/luci-static/resources/view/fchomo/global.js:497
+#: htdocs/luci-static/resources/view/fchomo/node.js:909
+#: htdocs/luci-static/resources/view/fchomo/node.js:1038
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:312
msgid "In seconds. %s
will be used if empty."
msgstr "单位为秒。留空则使用 %s
。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:353
+#: htdocs/luci-static/resources/view/fchomo/global.js:424
msgid "Inbound"
msgstr "入站"
-#: htdocs/luci-static/resources/view/fchomo/client.js:530
+#: htdocs/luci-static/resources/view/fchomo/client.js:537
msgid "Include all"
msgstr "引入所有"
-#: htdocs/luci-static/resources/view/fchomo/client.js:535
+#: htdocs/luci-static/resources/view/fchomo/client.js:542
msgid "Include all node"
msgstr "引入所有节点"
-#: htdocs/luci-static/resources/view/fchomo/client.js:540
+#: htdocs/luci-static/resources/view/fchomo/client.js:547
msgid "Include all provider"
msgstr "引入所有供应商"
-#: htdocs/luci-static/resources/view/fchomo/client.js:541
+#: htdocs/luci-static/resources/view/fchomo/client.js:548
msgid "Includes all Provider."
msgstr "引入所有供应商。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:531
+#: htdocs/luci-static/resources/view/fchomo/client.js:538
msgid "Includes all Proxy Node and Provider."
msgstr "引入所有代理节点及供应商。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:536
+#: htdocs/luci-static/resources/view/fchomo/client.js:543
msgid "Includes all Proxy Node."
msgstr "引入所有代理节点。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:312
+#: htdocs/luci-static/resources/view/fchomo/global.js:383
msgid "Info"
msgstr "信息"
+#: htdocs/luci-static/resources/view/fchomo/node.js:840
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:206
msgid "Inline"
msgstr "内嵌"
-#: htdocs/luci-static/resources/view/fchomo/global.js:584
+#: htdocs/luci-static/resources/view/fchomo/global.js:655
msgid "Interface Control"
msgstr "接口控制"
@@ -1150,21 +1162,21 @@ msgstr "保持缺省"
msgid "Key path"
msgstr "证书路径"
-#: htdocs/luci-static/resources/view/fchomo/client.js:475
-#: htdocs/luci-static/resources/view/fchomo/client.js:661
-#: htdocs/luci-static/resources/view/fchomo/client.js:731
-#: htdocs/luci-static/resources/view/fchomo/client.js:818
-#: htdocs/luci-static/resources/view/fchomo/client.js:959
+#: htdocs/luci-static/resources/view/fchomo/client.js:482
+#: htdocs/luci-static/resources/view/fchomo/client.js:668
+#: htdocs/luci-static/resources/view/fchomo/client.js:738
+#: htdocs/luci-static/resources/view/fchomo/client.js:825
+#: htdocs/luci-static/resources/view/fchomo/client.js:973
#: htdocs/luci-static/resources/view/fchomo/node.js:46
#: htdocs/luci-static/resources/view/fchomo/node.js:828
-#: htdocs/luci-static/resources/view/fchomo/node.js:1082
+#: htdocs/luci-static/resources/view/fchomo/node.js:1100
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:194
#: htdocs/luci-static/resources/view/fchomo/server.js:103
msgid "Label"
msgstr "标签"
-#: htdocs/luci-static/resources/view/fchomo/client.js:587
-#: htdocs/luci-static/resources/view/fchomo/node.js:1031
+#: htdocs/luci-static/resources/view/fchomo/client.js:594
+#: htdocs/luci-static/resources/view/fchomo/node.js:1049
msgid "Lazy"
msgstr "懒惰状态"
@@ -1176,7 +1188,7 @@ msgstr ""
"提供旧协议支持(VMess MD5 身份验证)仅出于兼容性目的,不建议使用 alterId > "
"1。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:411
+#: htdocs/luci-static/resources/view/fchomo/global.js:482
msgid "Less compatibility and sometimes better performance."
msgstr "有时性能更好。"
@@ -1189,16 +1201,16 @@ msgstr "支持的应用层协议协商列表,按顺序排列。"
msgid "Listen address"
msgstr "监听地址"
-#: htdocs/luci-static/resources/view/fchomo/global.js:586
+#: htdocs/luci-static/resources/view/fchomo/global.js:657
msgid "Listen interfaces"
msgstr "监听接口"
-#: htdocs/luci-static/resources/view/fchomo/client.js:756
+#: htdocs/luci-static/resources/view/fchomo/client.js:763
#: htdocs/luci-static/resources/view/fchomo/server.js:123
msgid "Listen port"
msgstr "监听端口"
-#: htdocs/luci-static/resources/view/fchomo/global.js:356
+#: htdocs/luci-static/resources/view/fchomo/global.js:427
msgid "Listen ports"
msgstr "监听端口"
@@ -1231,15 +1243,15 @@ msgstr "日志文件不存在。"
msgid "Log is empty."
msgstr "日志为空。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:308
+#: htdocs/luci-static/resources/view/fchomo/global.js:379
msgid "Log level"
msgstr "日志等级"
-#: htdocs/luci-static/resources/fchomo.js:570
+#: htdocs/luci-static/resources/fchomo.js:579
msgid "Lowercase only"
msgstr "仅限小写"
-#: htdocs/luci-static/resources/view/fchomo/global.js:414
+#: htdocs/luci-static/resources/view/fchomo/global.js:485
#: htdocs/luci-static/resources/view/fchomo/node.js:390
msgid "MTU"
msgstr ""
@@ -1248,31 +1260,31 @@ msgstr ""
msgid "Masquerade"
msgstr "伪装"
-#: htdocs/luci-static/resources/view/fchomo/client.js:975
+#: htdocs/luci-static/resources/view/fchomo/client.js:989
msgid "Match domain. Support wildcards."
msgstr "匹配域名。支持通配符。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1047
+#: htdocs/luci-static/resources/view/fchomo/client.js:1068
msgid "Match domain. Support wildcards."
msgstr "匹配域名。支持通配符。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:980
+#: htdocs/luci-static/resources/view/fchomo/client.js:994
msgid "Match geosite."
msgstr "匹配 geosite。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1038
+#: htdocs/luci-static/resources/view/fchomo/client.js:1059
msgid "Match geosite."
msgstr "匹配 geosite。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1029
+#: htdocs/luci-static/resources/view/fchomo/client.js:1050
msgid "Match response with geoip."
msgstr "匹配响应通过 geoip。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1042
+#: htdocs/luci-static/resources/view/fchomo/client.js:1063
msgid "Match response with ipcidr."
msgstr "匹配响应通过 ipcidr"
-#: htdocs/luci-static/resources/view/fchomo/client.js:985
+#: htdocs/luci-static/resources/view/fchomo/client.js:999
msgid "Match rule set."
msgstr "匹配规则集。"
@@ -1285,7 +1297,7 @@ msgstr "前置数据最大值"
msgid "Max UDP relay packet size"
msgstr "UDP 中继数据包最大尺寸"
-#: htdocs/luci-static/resources/view/fchomo/client.js:601
+#: htdocs/luci-static/resources/view/fchomo/client.js:608
msgid "Max count of failures"
msgstr "最大失败次数"
@@ -1320,12 +1332,14 @@ msgstr "最大流数量"
msgid "Mieru"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:426
-#: htdocs/luci-static/resources/view/fchomo/log.js:100
+#: htdocs/luci-static/resources/view/fchomo/client.js:433
+#: htdocs/luci-static/resources/view/fchomo/log.js:106
+#: htdocs/luci-static/resources/view/fchomo/log.js:111
msgid "Mihomo client"
msgstr "Mihomo 客户端"
-#: htdocs/luci-static/resources/view/fchomo/log.js:103
+#: htdocs/luci-static/resources/view/fchomo/log.js:115
+#: htdocs/luci-static/resources/view/fchomo/log.js:120
#: htdocs/luci-static/resources/view/fchomo/server.js:58
msgid "Mihomo server"
msgstr "Mihomo 服务端"
@@ -1341,15 +1355,15 @@ msgid "Minimum streams"
msgstr "最小流数量"
#: htdocs/luci-static/resources/fchomo.js:62
-#: htdocs/luci-static/resources/view/fchomo/global.js:400
+#: htdocs/luci-static/resources/view/fchomo/global.js:471
msgid "Mixed"
msgstr "混合"
-#: htdocs/luci-static/resources/view/fchomo/global.js:407
+#: htdocs/luci-static/resources/view/fchomo/global.js:478
msgid "Mixed system
TCP stack and gVisor
UDP stack."
msgstr "混合 系统
TCP 栈和 gVisor
UDP 栈。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:359
+#: htdocs/luci-static/resources/view/fchomo/global.js:430
msgid "Mixed port"
msgstr "混合端口"
@@ -1365,7 +1379,7 @@ msgstr "多路复用字段"
msgid "Multiplexing"
msgstr "多路复用"
-#: htdocs/luci-static/resources/view/fchomo/node.js:897
+#: htdocs/luci-static/resources/view/fchomo/node.js:915
msgid "Name of the Proxy group to download provider."
msgstr "用于下载供应商订阅的代理组名称。"
@@ -1377,16 +1391,16 @@ msgstr "用于下载规则集订阅的代理组名称。"
msgid "Native"
msgstr "原生"
-#: htdocs/luci-static/resources/view/fchomo/global.js:347
+#: htdocs/luci-static/resources/view/fchomo/global.js:418
msgid "No Authentication IP ranges"
msgstr "无需认证的 IP 范围"
-#: htdocs/luci-static/resources/view/fchomo/client.js:838
+#: htdocs/luci-static/resources/view/fchomo/client.js:845
msgid "No add'l params"
msgstr "无附加参数"
-#: htdocs/luci-static/resources/view/fchomo/client.js:588
-#: htdocs/luci-static/resources/view/fchomo/node.js:1032
+#: htdocs/luci-static/resources/view/fchomo/client.js:595
+#: htdocs/luci-static/resources/view/fchomo/node.js:1050
msgid "No testing is performed when this provider node is not in use."
msgstr "当此供应商的节点未使用时,不执行任何测试。"
@@ -1394,28 +1408,28 @@ msgstr "当此供应商的节点未使用时,不执行任何测试。"
msgid "No valid rule-set link found."
msgstr "未找到有效的规则集链接。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:502
+#: htdocs/luci-static/resources/view/fchomo/client.js:509
#: htdocs/luci-static/resources/view/fchomo/node.js:35
#: root/usr/share/luci/menu.d/luci-app-fchomo.json:38
msgid "Node"
msgstr "节点"
-#: htdocs/luci-static/resources/view/fchomo/client.js:633
-#: htdocs/luci-static/resources/view/fchomo/node.js:1049
+#: htdocs/luci-static/resources/view/fchomo/client.js:640
+#: htdocs/luci-static/resources/view/fchomo/node.js:1067
msgid "Node exclude filter"
msgstr "排除节点"
-#: htdocs/luci-static/resources/view/fchomo/client.js:638
-#: htdocs/luci-static/resources/view/fchomo/node.js:1055
+#: htdocs/luci-static/resources/view/fchomo/client.js:645
+#: htdocs/luci-static/resources/view/fchomo/node.js:1073
msgid "Node exclude type"
msgstr "排除节点类型"
-#: htdocs/luci-static/resources/view/fchomo/client.js:628
-#: htdocs/luci-static/resources/view/fchomo/node.js:1044
+#: htdocs/luci-static/resources/view/fchomo/client.js:635
+#: htdocs/luci-static/resources/view/fchomo/node.js:1062
msgid "Node filter"
msgstr "过滤节点"
-#: htdocs/luci-static/resources/view/fchomo/client.js:609
+#: htdocs/luci-static/resources/view/fchomo/client.js:616
msgid "Node switch tolerance"
msgstr "节点切换容差"
@@ -1423,11 +1437,11 @@ msgstr "节点切换容差"
msgid "None"
msgstr "无"
-#: htdocs/luci-static/resources/view/fchomo/global.js:473
+#: htdocs/luci-static/resources/view/fchomo/global.js:544
msgid "Not Installed"
msgstr "未安装"
-#: htdocs/luci-static/resources/fchomo.js:504
+#: htdocs/luci-static/resources/fchomo.js:513
msgid "Not Running"
msgstr "未在运行"
@@ -1445,28 +1459,28 @@ msgstr "混淆密码"
msgid "Obfuscate type"
msgstr "混淆类型"
-#: htdocs/luci-static/resources/view/fchomo/global.js:587
+#: htdocs/luci-static/resources/view/fchomo/global.js:658
msgid "Only process traffic from specific interfaces. Leave empty for all."
msgstr "只处理来自指定接口的流量。留空表示全部。"
-#: htdocs/luci-static/resources/fchomo.js:498
+#: htdocs/luci-static/resources/fchomo.js:507
msgid "Open Dashboard"
msgstr "打开面板"
-#: htdocs/luci-static/resources/view/fchomo/global.js:296
+#: htdocs/luci-static/resources/view/fchomo/global.js:367
msgid "Operation mode"
msgstr "运行模式"
-#: htdocs/luci-static/resources/view/fchomo/client.js:925
+#: htdocs/luci-static/resources/view/fchomo/client.js:939
msgid "Override ECS in original request."
msgstr "覆盖原始请求中的 ECS。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:515
-#: htdocs/luci-static/resources/view/fchomo/global.js:553
+#: htdocs/luci-static/resources/view/fchomo/global.js:586
+#: htdocs/luci-static/resources/view/fchomo/global.js:624
msgid "Override destination"
msgstr "覆盖目标地址"
-#: htdocs/luci-static/resources/view/fchomo/client.js:471
+#: htdocs/luci-static/resources/view/fchomo/client.js:478
#: htdocs/luci-static/resources/view/fchomo/node.js:824
msgid "Override fields"
msgstr "覆盖字段"
@@ -1475,15 +1489,15 @@ msgstr "覆盖字段"
msgid "Override the IP address of the server that DNS response."
msgstr "覆盖 DNS 回应的服务器的 IP 地址。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1008
+#: htdocs/luci-static/resources/view/fchomo/client.js:1022
msgid "Override the Proxy group of DNS server."
msgstr "覆盖 DNS 服务器所使用的代理组。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:516
+#: htdocs/luci-static/resources/view/fchomo/global.js:587
msgid "Override the connection destination address with the sniffed domain."
msgstr "使用嗅探到的域名覆盖连接目标。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:133
+#: htdocs/luci-static/resources/view/fchomo/global.js:181
msgid "Overview"
msgstr "概览"
@@ -1507,6 +1521,7 @@ msgstr "数据包编码"
msgid "Password"
msgstr "密码"
+#: htdocs/luci-static/resources/view/fchomo/node.js:883
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:286
msgid "Payload"
msgstr "Payload"
@@ -1515,7 +1530,7 @@ msgstr "Payload"
msgid "Peer pubkic key"
msgstr "对端公钥"
-#: htdocs/luci-static/resources/view/fchomo/global.js:431
+#: htdocs/luci-static/resources/view/fchomo/global.js:502
msgid ""
"Performance may degrade slightly, so it is not recommended to enable on when "
"it is not needed."
@@ -1531,7 +1546,8 @@ msgid ""
"standards."
msgstr "链接格式标准请参考 %s。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:858
+#: htdocs/luci-static/resources/view/fchomo/node.js:861
+#: htdocs/luci-static/resources/view/fchomo/node.js:882
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:264
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:285
msgid ""
@@ -1557,7 +1573,7 @@ msgstr "插件:"
msgid "Port"
msgstr "端口"
-#: htdocs/luci-static/resources/fchomo.js:699
+#: htdocs/luci-static/resources/fchomo.js:708
msgid "Port %s alrealy exists!"
msgstr "端口 %s 已存在!"
@@ -1565,7 +1581,7 @@ msgstr "端口 %s 已存在!"
msgid "Port range"
msgstr "端口范围"
-#: htdocs/luci-static/resources/view/fchomo/global.js:550
+#: htdocs/luci-static/resources/view/fchomo/global.js:621
msgid "Ports"
msgstr "端口"
@@ -1586,14 +1602,14 @@ msgstr "优先 IPv4"
msgid "Prefer IPv6"
msgstr "优先 IPv6"
-#: htdocs/luci-static/resources/view/fchomo/client.js:552
-#: htdocs/luci-static/resources/view/fchomo/client.js:558
-#: htdocs/luci-static/resources/view/fchomo/global.js:593
-#: htdocs/luci-static/resources/view/fchomo/global.js:610
+#: htdocs/luci-static/resources/view/fchomo/client.js:559
+#: htdocs/luci-static/resources/view/fchomo/client.js:565
+#: htdocs/luci-static/resources/view/fchomo/global.js:664
+#: htdocs/luci-static/resources/view/fchomo/global.js:681
#: htdocs/luci-static/resources/view/fchomo/node.js:777
#: htdocs/luci-static/resources/view/fchomo/node.js:783
-#: htdocs/luci-static/resources/view/fchomo/node.js:988
-#: htdocs/luci-static/resources/view/fchomo/node.js:994
+#: htdocs/luci-static/resources/view/fchomo/node.js:1006
+#: htdocs/luci-static/resources/view/fchomo/node.js:1012
msgid "Priority: Proxy Node > Proxy Group > Global."
msgstr "优先级: 代理节点 > 代理组 > 全局。"
@@ -1609,11 +1625,11 @@ msgstr "密钥密码"
msgid "Private key"
msgstr "私钥"
-#: htdocs/luci-static/resources/view/fchomo/global.js:302
+#: htdocs/luci-static/resources/view/fchomo/global.js:373
msgid "Process matching mode"
msgstr "进程匹配模式"
-#: htdocs/luci-static/resources/view/fchomo/global.js:544
+#: htdocs/luci-static/resources/view/fchomo/global.js:615
#: htdocs/luci-static/resources/view/fchomo/node.js:695
msgid "Protocol"
msgstr "协议"
@@ -1628,57 +1644,57 @@ msgid ""
"default in v2ray and cannot be disabled)."
msgstr "协议参数。 如启用会随机浪费流量(在 v2ray 中默认启用并且无法禁用)。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:516
+#: htdocs/luci-static/resources/view/fchomo/client.js:523
#: htdocs/luci-static/resources/view/fchomo/node.js:796
#: htdocs/luci-static/resources/view/fchomo/node.js:806
-#: htdocs/luci-static/resources/view/fchomo/node.js:1093
+#: htdocs/luci-static/resources/view/fchomo/node.js:1111
msgid "Provider"
msgstr "供应商"
-#: htdocs/luci-static/resources/view/fchomo/node.js:878
+#: htdocs/luci-static/resources/view/fchomo/node.js:896
msgid "Provider URL"
msgstr "供应商订阅 URL"
-#: htdocs/luci-static/resources/view/fchomo/client.js:446
-#: htdocs/luci-static/resources/view/fchomo/client.js:465
+#: htdocs/luci-static/resources/view/fchomo/client.js:453
+#: htdocs/luci-static/resources/view/fchomo/client.js:472
msgid "Proxy Group"
msgstr "代理组"
-#: htdocs/luci-static/resources/view/fchomo/global.js:643
+#: htdocs/luci-static/resources/view/fchomo/global.js:714
msgid "Proxy IPv4 IP-s"
msgstr "代理 IPv4 地址"
-#: htdocs/luci-static/resources/view/fchomo/global.js:646
+#: htdocs/luci-static/resources/view/fchomo/global.js:717
msgid "Proxy IPv6 IP-s"
msgstr "代理 IPv6 地址"
-#: htdocs/luci-static/resources/view/fchomo/global.js:649
+#: htdocs/luci-static/resources/view/fchomo/global.js:720
msgid "Proxy MAC-s"
msgstr "代理 MAC 地址"
#: htdocs/luci-static/resources/view/fchomo/node.js:25
-#: htdocs/luci-static/resources/view/fchomo/node.js:1092
+#: htdocs/luci-static/resources/view/fchomo/node.js:1110
msgid "Proxy Node"
msgstr "代理节点"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1067
-#: htdocs/luci-static/resources/view/fchomo/node.js:1077
+#: htdocs/luci-static/resources/view/fchomo/node.js:1085
+#: htdocs/luci-static/resources/view/fchomo/node.js:1095
msgid "Proxy chain"
msgstr "代理链"
#: htdocs/luci-static/resources/view/fchomo/client.js:361
-#: htdocs/luci-static/resources/view/fchomo/client.js:875
-#: htdocs/luci-static/resources/view/fchomo/client.js:1007
-#: htdocs/luci-static/resources/view/fchomo/node.js:896
+#: htdocs/luci-static/resources/view/fchomo/client.js:882
+#: htdocs/luci-static/resources/view/fchomo/client.js:1021
+#: htdocs/luci-static/resources/view/fchomo/node.js:914
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:317
msgid "Proxy group"
msgstr "代理组"
-#: htdocs/luci-static/resources/view/fchomo/global.js:379
+#: htdocs/luci-static/resources/view/fchomo/global.js:450
msgid "Proxy mode"
msgstr "代理模式"
-#: htdocs/luci-static/resources/view/fchomo/global.js:652
+#: htdocs/luci-static/resources/view/fchomo/global.js:723
msgid "Proxy routerself"
msgstr "代理路由器自身"
@@ -1691,7 +1707,7 @@ msgstr ""
msgid "QUIC congestion controller."
msgstr "QUIC 拥塞控制器。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:449
+#: htdocs/luci-static/resources/view/fchomo/client.js:456
#: htdocs/luci-static/resources/view/fchomo/server.js:79
msgid "Quick Reload"
msgstr "快速重载"
@@ -1708,28 +1724,28 @@ msgstr "REALITY 公钥"
msgid "REALITY short ID"
msgstr "REALITY 标识符"
-#: htdocs/luci-static/resources/view/fchomo/global.js:504
+#: htdocs/luci-static/resources/view/fchomo/global.js:575
msgid "Random will be used if empty."
msgstr "留空将使用随机令牌。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:1126
-#: htdocs/luci-static/resources/view/fchomo/node.js:1174
+#: htdocs/luci-static/resources/view/fchomo/node.js:1144
+#: htdocs/luci-static/resources/view/fchomo/node.js:1192
msgid "Recommended to use UoT node.such as %s
."
msgstr "建议使用 UoT 节点。例如%s
。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:364
+#: htdocs/luci-static/resources/view/fchomo/global.js:435
msgid "Redir port"
msgstr "Redir 端口"
-#: htdocs/luci-static/resources/view/fchomo/global.js:380
+#: htdocs/luci-static/resources/view/fchomo/global.js:451
msgid "Redirect TCP"
msgstr "Redirect TCP"
-#: htdocs/luci-static/resources/view/fchomo/global.js:382
+#: htdocs/luci-static/resources/view/fchomo/global.js:453
msgid "Redirect TCP + TProxy UDP"
msgstr "Redirect TCP + TProxy UDP"
-#: htdocs/luci-static/resources/view/fchomo/global.js:384
+#: htdocs/luci-static/resources/view/fchomo/global.js:455
msgid "Redirect TCP + Tun UDP"
msgstr "Redirect TCP + Tun UDP"
@@ -1737,14 +1753,14 @@ msgstr "Redirect TCP + Tun UDP"
msgid "Refresh every %s seconds."
msgstr "每 %s 秒刷新。"
-#: htdocs/luci-static/resources/fchomo.js:491
-#: htdocs/luci-static/resources/view/fchomo/client.js:450
-#: htdocs/luci-static/resources/view/fchomo/global.js:166
+#: htdocs/luci-static/resources/fchomo.js:500
+#: htdocs/luci-static/resources/view/fchomo/client.js:457
+#: htdocs/luci-static/resources/view/fchomo/global.js:214
#: htdocs/luci-static/resources/view/fchomo/server.js:80
msgid "Reload"
msgstr "重载"
-#: htdocs/luci-static/resources/view/fchomo/global.js:165
+#: htdocs/luci-static/resources/view/fchomo/global.js:213
msgid "Reload All"
msgstr "重载所有"
@@ -1757,11 +1773,11 @@ msgstr "远程"
msgid "Remote DNS resolve"
msgstr "远程 DNS 解析"
-#: htdocs/luci-static/resources/fchomo.js:629
+#: htdocs/luci-static/resources/fchomo.js:638
msgid "Remove"
msgstr "移除"
-#: htdocs/luci-static/resources/fchomo.js:634
+#: htdocs/luci-static/resources/fchomo.js:643
#: htdocs/luci-static/resources/view/fchomo/node.js:814
#: htdocs/luci-static/resources/view/fchomo/node.js:816
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:185
@@ -1769,11 +1785,11 @@ msgstr "移除"
msgid "Remove idles"
msgstr "移除闲置"
-#: htdocs/luci-static/resources/view/fchomo/node.js:930
+#: htdocs/luci-static/resources/view/fchomo/node.js:948
msgid "Replace name"
msgstr "名称替换"
-#: htdocs/luci-static/resources/view/fchomo/node.js:931
+#: htdocs/luci-static/resources/view/fchomo/node.js:949
msgid "Replace node name."
msgstr "替换节点名称"
@@ -1790,7 +1806,7 @@ msgstr "请求超时"
msgid "Reserved field bytes"
msgstr "保留字段字节"
-#: htdocs/luci-static/resources/view/fchomo/global.js:202
+#: htdocs/luci-static/resources/view/fchomo/global.js:273
msgid "Resources management"
msgstr "资源管理"
@@ -1798,57 +1814,57 @@ msgstr "资源管理"
msgid "Restls script"
msgstr "Restls 剧本"
-#: htdocs/luci-static/resources/view/fchomo/global.js:656
+#: htdocs/luci-static/resources/view/fchomo/global.js:727
msgid "Routing Control"
msgstr "路由控制"
-#: htdocs/luci-static/resources/view/fchomo/global.js:676
+#: htdocs/luci-static/resources/view/fchomo/global.js:747
msgid "Routing GFW"
msgstr "路由 GFW 流量"
-#: htdocs/luci-static/resources/view/fchomo/client.js:557
-#: htdocs/luci-static/resources/view/fchomo/global.js:609
+#: htdocs/luci-static/resources/view/fchomo/client.js:564
+#: htdocs/luci-static/resources/view/fchomo/global.js:680
#: htdocs/luci-static/resources/view/fchomo/node.js:782
-#: htdocs/luci-static/resources/view/fchomo/node.js:993
+#: htdocs/luci-static/resources/view/fchomo/node.js:1011
msgid "Routing mark"
msgstr "路由标记"
-#: htdocs/luci-static/resources/view/fchomo/global.js:672
+#: htdocs/luci-static/resources/view/fchomo/global.js:743
msgid "Routing mode"
msgstr "路由模式"
-#: htdocs/luci-static/resources/view/fchomo/global.js:673
+#: htdocs/luci-static/resources/view/fchomo/global.js:744
msgid "Routing mode of the traffic enters mihomo via firewall rules."
msgstr "流量通过防火墙规则进入 mihomo 的路由模式。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:679
+#: htdocs/luci-static/resources/view/fchomo/global.js:750
msgid "Routing mode will be handle domain."
msgstr "路由模式将处理域名。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:658
-#: htdocs/luci-static/resources/view/fchomo/global.js:665
+#: htdocs/luci-static/resources/view/fchomo/global.js:729
+#: htdocs/luci-static/resources/view/fchomo/global.js:736
msgid "Routing ports"
msgstr "路由端口"
-#: htdocs/luci-static/resources/view/fchomo/client.js:646
-#: htdocs/luci-static/resources/view/fchomo/client.js:656
+#: htdocs/luci-static/resources/view/fchomo/client.js:653
+#: htdocs/luci-static/resources/view/fchomo/client.js:663
msgid "Routing rule"
msgstr "路由规则"
-#: htdocs/luci-static/resources/view/fchomo/global.js:603
+#: htdocs/luci-static/resources/view/fchomo/global.js:674
msgid "Routing rule priority"
msgstr "路由规则优先权"
-#: htdocs/luci-static/resources/view/fchomo/global.js:597
+#: htdocs/luci-static/resources/view/fchomo/global.js:668
msgid "Routing table ID"
msgstr "路由表 ID"
-#: htdocs/luci-static/resources/view/fchomo/global.js:298
+#: htdocs/luci-static/resources/view/fchomo/global.js:369
msgid "Rule"
msgstr "规则"
-#: htdocs/luci-static/resources/view/fchomo/client.js:971
-#: htdocs/luci-static/resources/view/fchomo/client.js:984
+#: htdocs/luci-static/resources/view/fchomo/client.js:985
+#: htdocs/luci-static/resources/view/fchomo/client.js:998
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:112
msgid "Rule set"
msgstr "规则集"
@@ -1865,7 +1881,7 @@ msgstr "规则集"
msgid "Ruleset-URI-Scheme"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:504
+#: htdocs/luci-static/resources/fchomo.js:513
msgid "Running"
msgstr "正在运行"
@@ -1881,7 +1897,7 @@ msgstr ""
msgid "SSH"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:672
+#: htdocs/luci-static/resources/view/fchomo/client.js:679
msgid "SUB-RULE"
msgstr "SUB-RULE"
@@ -1902,7 +1918,7 @@ msgstr "相同 目标地址 请求。相同节点"
msgid "Same srcaddr and dstaddr requests. Same node"
msgstr "相同 来源地址 和 目标地址 请求。相同节点"
-#: htdocs/luci-static/resources/view/fchomo/global.js:421
+#: htdocs/luci-static/resources/view/fchomo/global.js:492
msgid "Segment maximum size"
msgstr "分段最大尺寸"
@@ -1910,7 +1926,7 @@ msgstr "分段最大尺寸"
msgid "Select"
msgstr "手动选择"
-#: htdocs/luci-static/resources/view/fchomo/global.js:464
+#: htdocs/luci-static/resources/view/fchomo/global.js:535
msgid "Select Dashboard"
msgstr "选择面板"
@@ -1927,11 +1943,11 @@ msgstr "服务器地址"
msgid "Server hostname"
msgstr "服务器主机名称"
-#: htdocs/luci-static/resources/view/fchomo/global.js:157
+#: htdocs/luci-static/resources/view/fchomo/global.js:205
msgid "Server status"
msgstr "服务端状态"
-#: htdocs/luci-static/resources/view/fchomo/global.js:136
+#: htdocs/luci-static/resources/view/fchomo/global.js:184
msgid "Service status"
msgstr "服务状态"
@@ -1956,7 +1972,7 @@ msgstr "Shadowsocks 密码"
msgid "Show connections in the dashboard for breaking connections easier."
msgstr "在面板中显示连接以便于打断连接。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:309
+#: htdocs/luci-static/resources/view/fchomo/global.js:380
msgid "Silent"
msgstr "静音"
@@ -1964,25 +1980,25 @@ msgstr "静音"
msgid "Simple round-robin all nodes"
msgstr "简单轮替所有节点"
-#: htdocs/luci-static/resources/view/fchomo/node.js:884
+#: htdocs/luci-static/resources/view/fchomo/node.js:902
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:305
msgid "Size limit"
msgstr "大小限制"
#: htdocs/luci-static/resources/view/fchomo/node.js:549
-#: htdocs/luci-static/resources/view/fchomo/node.js:973
+#: htdocs/luci-static/resources/view/fchomo/node.js:991
msgid "Skip cert verify"
msgstr "跳过证书验证"
-#: htdocs/luci-static/resources/view/fchomo/global.js:522
+#: htdocs/luci-static/resources/view/fchomo/global.js:593
msgid "Skiped sniffing domain"
msgstr "跳过嗅探域名"
-#: htdocs/luci-static/resources/view/fchomo/global.js:528
+#: htdocs/luci-static/resources/view/fchomo/global.js:599
msgid "Skiped sniffing dst address"
msgstr "跳过嗅探目标地址"
-#: htdocs/luci-static/resources/view/fchomo/global.js:525
+#: htdocs/luci-static/resources/view/fchomo/global.js:596
msgid "Skiped sniffing src address"
msgstr "跳过嗅探来源地址"
@@ -1990,41 +2006,41 @@ msgstr "跳过嗅探来源地址"
msgid "Snell"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:532
+#: htdocs/luci-static/resources/view/fchomo/global.js:603
msgid "Sniff protocol"
msgstr "嗅探协议"
-#: htdocs/luci-static/resources/view/fchomo/global.js:509
+#: htdocs/luci-static/resources/view/fchomo/global.js:580
msgid "Sniffer"
msgstr "嗅探器"
-#: htdocs/luci-static/resources/view/fchomo/global.js:512
+#: htdocs/luci-static/resources/view/fchomo/global.js:583
msgid "Sniffer settings"
msgstr "嗅探器设置"
-#: htdocs/luci-static/resources/view/fchomo/global.js:659
-#: htdocs/luci-static/resources/view/fchomo/global.js:666
+#: htdocs/luci-static/resources/view/fchomo/global.js:730
+#: htdocs/luci-static/resources/view/fchomo/global.js:737
msgid ""
"Specify target ports to be proxied. Multiple ports must be separated by "
"commas."
msgstr "指定需要被代理的目标端口。多个端口必须用逗号隔开。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:395
+#: htdocs/luci-static/resources/view/fchomo/global.js:466
msgid "Stack"
msgstr "堆栈"
-#: htdocs/luci-static/resources/view/fchomo/client.js:617
-#: htdocs/luci-static/resources/view/fchomo/client.js:619
+#: htdocs/luci-static/resources/view/fchomo/client.js:624
+#: htdocs/luci-static/resources/view/fchomo/client.js:626
msgid "Strategy"
msgstr "策略"
-#: htdocs/luci-static/resources/view/fchomo/client.js:695
-#: htdocs/luci-static/resources/view/fchomo/client.js:716
-#: htdocs/luci-static/resources/view/fchomo/client.js:726
+#: htdocs/luci-static/resources/view/fchomo/client.js:702
+#: htdocs/luci-static/resources/view/fchomo/client.js:723
+#: htdocs/luci-static/resources/view/fchomo/client.js:733
msgid "Sub rule"
msgstr "子规则"
-#: htdocs/luci-static/resources/view/fchomo/client.js:740
+#: htdocs/luci-static/resources/view/fchomo/client.js:747
msgid "Sub rule group"
msgstr "子规则组"
@@ -2032,11 +2048,11 @@ msgstr "子规则组"
msgid "Successfully imported %s rule-set of total %s."
msgstr "已成功导入 %s 个规则集 (共 %s 个)。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:49
+#: htdocs/luci-static/resources/view/fchomo/global.js:60
msgid "Successfully updated."
msgstr "更新成功。"
-#: htdocs/luci-static/resources/fchomo.js:921
+#: htdocs/luci-static/resources/fchomo.js:930
msgid "Successfully uploaded."
msgstr "已成功上传。"
@@ -2048,7 +2064,7 @@ msgstr ""
"支持规则集类型为: %s
并且格式为: %s
的规则集链接。"
""
-#: htdocs/luci-static/resources/view/fchomo/global.js:397
+#: htdocs/luci-static/resources/view/fchomo/global.js:468
msgid "System"
msgstr "系统"
@@ -2060,7 +2076,7 @@ msgstr "系统 DNS"
msgid "TCP"
msgstr "TCP"
-#: htdocs/luci-static/resources/view/fchomo/global.js:325
+#: htdocs/luci-static/resources/view/fchomo/global.js:396
msgid "TCP concurrency"
msgstr "TCP 并发"
@@ -2068,20 +2084,20 @@ msgstr "TCP 并发"
msgid "TCP only"
msgstr "仅 TCP"
-#: htdocs/luci-static/resources/view/fchomo/global.js:333
+#: htdocs/luci-static/resources/view/fchomo/global.js:404
msgid "TCP-Keep-Alive idle timeout"
msgstr "TCP-Keep-Alive 闲置超时"
-#: htdocs/luci-static/resources/view/fchomo/global.js:328
+#: htdocs/luci-static/resources/view/fchomo/global.js:399
msgid "TCP-Keep-Alive interval"
msgstr "TCP-Keep-Alive 间隔"
#: htdocs/luci-static/resources/view/fchomo/node.js:761
-#: htdocs/luci-static/resources/view/fchomo/node.js:946
+#: htdocs/luci-static/resources/view/fchomo/node.js:964
msgid "TFO"
msgstr "TCP 快速打开 (TFO)"
-#: htdocs/luci-static/resources/view/fchomo/global.js:436
+#: htdocs/luci-static/resources/view/fchomo/global.js:507
#: htdocs/luci-static/resources/view/fchomo/node.js:419
#: htdocs/luci-static/resources/view/fchomo/node.js:477
#: htdocs/luci-static/resources/view/fchomo/server.js:309
@@ -2116,17 +2132,17 @@ msgstr "让客户端使用 BBR 流控算法。"
msgid "The %s address used by local machine in the Wireguard network."
msgstr "WireGuard 网络中使用的本机 %s 地址。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:226
+#: htdocs/luci-static/resources/view/fchomo/global.js:297
msgid "The default value is 2:00 every day."
msgstr "默认值为每天 2:00。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1030
+#: htdocs/luci-static/resources/view/fchomo/client.js:1051
msgid "The matching %s
will be deemed as not-poisoned."
msgstr "匹配的 %s
将被视为未被污染。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:1039
-#: htdocs/luci-static/resources/view/fchomo/client.js:1043
-#: htdocs/luci-static/resources/view/fchomo/client.js:1048
+#: htdocs/luci-static/resources/view/fchomo/client.js:1060
+#: htdocs/luci-static/resources/view/fchomo/client.js:1064
+#: htdocs/luci-static/resources/view/fchomo/client.js:1069
msgid "The matching %s
will be deemed as poisoned."
msgstr "匹配的 %s
将被视为已被污染。"
@@ -2139,7 +2155,7 @@ msgid "The server public key, in PEM format."
msgstr "服务端公钥,需要 PEM 格式。"
#: htdocs/luci-static/resources/view/fchomo/node.js:552
-#: htdocs/luci-static/resources/view/fchomo/node.js:976
+#: htdocs/luci-static/resources/view/fchomo/node.js:994
msgid ""
"This is DANGEROUS, your traffic is almost like "
"PLAIN TEXT! Use at your own risk!"
@@ -2154,22 +2170,29 @@ msgstr ""
"这是 TUIC 的 SUoT 协议移植, 旨在提供 TUIC 不提供的基于 QUIC 流的 UDP 中继模"
"式。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:387
+#: htdocs/luci-static/resources/view/fchomo/global.js:256
+msgid ""
+"To check NAT Behavior you need to install stuntman-client"
+"b> first"
+msgstr ""
+"检测 NAT 行为需要先安装 stuntman-client first"
+
+#: htdocs/luci-static/resources/view/fchomo/global.js:458
msgid ""
"To enable Tun support, you need to install ip-full
and "
"kmod-tun
"
msgstr ""
"要启用 Tun 支持,您需要安装 ip-full
和 kmod-tun
。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:682
+#: htdocs/luci-static/resources/view/fchomo/global.js:753
msgid "To enable, you need to install dnsmasq-full
."
msgstr "要启用,您需要安装 dnsmasq-full
。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:616
+#: htdocs/luci-static/resources/view/fchomo/global.js:687
msgid "Tproxy Fwmark"
msgstr "Tproxy 标记"
-#: htdocs/luci-static/resources/view/fchomo/global.js:369
+#: htdocs/luci-static/resources/view/fchomo/global.js:440
msgid "Tproxy port"
msgstr "Tproxy 端口"
@@ -2190,29 +2213,29 @@ msgstr "传输层类型"
msgid "Trojan"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:621
+#: htdocs/luci-static/resources/view/fchomo/global.js:692
msgid "Tun Fwmark"
msgstr "Tun 标记"
-#: htdocs/luci-static/resources/view/fchomo/global.js:385
+#: htdocs/luci-static/resources/view/fchomo/global.js:456
msgid "Tun TCP/UDP"
msgstr "Tun TCP/UDP"
-#: htdocs/luci-static/resources/view/fchomo/global.js:392
+#: htdocs/luci-static/resources/view/fchomo/global.js:463
msgid "Tun settings"
msgstr "Tun 设置"
-#: htdocs/luci-static/resources/view/fchomo/global.js:396
+#: htdocs/luci-static/resources/view/fchomo/global.js:467
msgid "Tun stack."
msgstr "Tun 堆栈"
#: htdocs/luci-static/resources/view/fchomo/client.js:223
#: htdocs/luci-static/resources/view/fchomo/client.js:313
-#: htdocs/luci-static/resources/view/fchomo/client.js:489
-#: htdocs/luci-static/resources/view/fchomo/client.js:968
+#: htdocs/luci-static/resources/view/fchomo/client.js:496
+#: htdocs/luci-static/resources/view/fchomo/client.js:982
#: htdocs/luci-static/resources/view/fchomo/node.js:55
#: htdocs/luci-static/resources/view/fchomo/node.js:837
-#: htdocs/luci-static/resources/view/fchomo/node.js:1091
+#: htdocs/luci-static/resources/view/fchomo/node.js:1109
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:203
#: htdocs/luci-static/resources/view/fchomo/server.js:112
msgid "Type"
@@ -2220,12 +2243,12 @@ msgstr "类型"
#: htdocs/luci-static/resources/view/fchomo/client.js:274
#: htdocs/luci-static/resources/view/fchomo/node.js:458
-#: htdocs/luci-static/resources/view/fchomo/node.js:954
+#: htdocs/luci-static/resources/view/fchomo/node.js:972
#: htdocs/luci-static/resources/view/fchomo/server.js:367
msgid "UDP"
msgstr "UDP"
-#: htdocs/luci-static/resources/view/fchomo/global.js:425
+#: htdocs/luci-static/resources/view/fchomo/global.js:496
msgid "UDP NAT expiration time"
msgstr "UDP NAT 过期时间"
@@ -2256,7 +2279,7 @@ msgstr "自动选择"
msgid "UUID"
msgstr "UUID"
-#: htdocs/luci-static/resources/fchomo.js:549
+#: htdocs/luci-static/resources/fchomo.js:558
msgid "Unable to download unsupported type: %s"
msgstr "无法下载不支持的类型: %s"
@@ -2264,16 +2287,16 @@ msgstr "无法下载不支持的类型: %s"
msgid "Unable to save contents: %s"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:322
+#: htdocs/luci-static/resources/view/fchomo/global.js:393
msgid "Unified delay"
msgstr "统一延迟"
-#: htdocs/luci-static/resources/view/fchomo/global.js:141
-#: htdocs/luci-static/resources/view/fchomo/global.js:146
+#: htdocs/luci-static/resources/view/fchomo/global.js:189
+#: htdocs/luci-static/resources/view/fchomo/global.js:194
msgid "Unknown"
msgstr "未知"
-#: htdocs/luci-static/resources/view/fchomo/global.js:61
+#: htdocs/luci-static/resources/view/fchomo/global.js:72
msgid "Unknown error."
msgstr "未知错误。"
@@ -2282,15 +2305,15 @@ msgid "Unknown error: %s"
msgstr "未知错误:%s"
#: htdocs/luci-static/resources/view/fchomo/node.js:463
-#: htdocs/luci-static/resources/view/fchomo/node.js:958
+#: htdocs/luci-static/resources/view/fchomo/node.js:976
msgid "UoT"
msgstr "UDP over TCP (UoT)"
-#: htdocs/luci-static/resources/view/fchomo/global.js:52
+#: htdocs/luci-static/resources/view/fchomo/global.js:63
msgid "Update failed."
msgstr "更新失败。"
-#: htdocs/luci-static/resources/view/fchomo/node.js:890
+#: htdocs/luci-static/resources/view/fchomo/node.js:908
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:311
msgid "Update interval"
msgstr "更新间隔"
@@ -2307,7 +2330,7 @@ msgstr "上传带宽(单位:Mbps)。"
msgid "Upload certificate"
msgstr "上传证书"
-#: htdocs/luci-static/resources/view/fchomo/global.js:206
+#: htdocs/luci-static/resources/view/fchomo/global.js:277
msgid "Upload initial package"
msgstr "上传初始资源包"
@@ -2315,17 +2338,17 @@ msgstr "上传初始资源包"
msgid "Upload key"
msgstr "上传密钥"
-#: htdocs/luci-static/resources/view/fchomo/global.js:208
+#: htdocs/luci-static/resources/view/fchomo/global.js:279
#: htdocs/luci-static/resources/view/fchomo/server.js:346
#: htdocs/luci-static/resources/view/fchomo/server.js:361
msgid "Upload..."
msgstr "上传..."
-#: htdocs/luci-static/resources/view/fchomo/client.js:765
+#: htdocs/luci-static/resources/view/fchomo/client.js:772
msgid "Used to resolve the domain of the DNS server. Must be IP."
msgstr "用于解析 DNS 服务器的域名。必须是 IP。"
-#: htdocs/luci-static/resources/view/fchomo/client.js:772
+#: htdocs/luci-static/resources/view/fchomo/client.js:779
msgid "Used to resolve the domain of the Proxy node."
msgstr "用于解析代理节点的域名。"
@@ -2333,7 +2356,7 @@ msgstr "用于解析代理节点的域名。"
msgid "Used to verify the hostname on the returned certificates."
msgstr "用于验证返回的证书上的主机名。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:342
+#: htdocs/luci-static/resources/view/fchomo/global.js:413
msgid "User Authentication"
msgstr "用户认证"
@@ -2342,7 +2365,7 @@ msgstr "用户认证"
msgid "Username"
msgstr "用户名"
-#: htdocs/luci-static/resources/view/fchomo/global.js:629
+#: htdocs/luci-static/resources/view/fchomo/global.js:700
msgid "Users filter mode"
msgstr "使用者过滤模式"
@@ -2363,8 +2386,8 @@ msgstr ""
msgid "VMess"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:842
-#: htdocs/luci-static/resources/view/fchomo/node.js:1097
+#: htdocs/luci-static/resources/view/fchomo/node.js:843
+#: htdocs/luci-static/resources/view/fchomo/node.js:1115
#: htdocs/luci-static/resources/view/fchomo/ruleset.js:246
msgid "Value"
msgstr "可视化值"
@@ -2378,7 +2401,7 @@ msgstr "版本"
msgid "Version hint"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/global.js:311
+#: htdocs/luci-static/resources/view/fchomo/global.js:382
msgid "Warning"
msgstr "警告"
@@ -2392,7 +2415,7 @@ msgstr ""
msgid "When used as a server, HomeProxy is a better choice."
msgstr "用作服务端时,HomeProxy 是更好的选择。"
-#: htdocs/luci-static/resources/view/fchomo/global.js:631
+#: htdocs/luci-static/resources/view/fchomo/global.js:702
msgid "White list"
msgstr "白名单"
@@ -2424,7 +2447,7 @@ msgstr "Yaml 格式文本"
msgid "YouTube"
msgstr "油管"
-#: htdocs/luci-static/resources/fchomo.js:903
+#: htdocs/luci-static/resources/fchomo.js:912
msgid "Your %s was successfully uploaded. Size: %sB."
msgstr "您的 %s 已成功上传。大小:%sB。"
@@ -2470,7 +2493,7 @@ msgstr ""
msgid "cubic"
msgstr "cubic"
-#: htdocs/luci-static/resources/view/fchomo/node.js:968
+#: htdocs/luci-static/resources/view/fchomo/node.js:986
msgid "down"
msgstr "Hysteria 下载速率"
@@ -2484,7 +2507,7 @@ msgstr ""
msgid "gRPC service name"
msgstr "gRPC 服务名称"
-#: htdocs/luci-static/resources/view/fchomo/global.js:399
+#: htdocs/luci-static/resources/view/fchomo/global.js:470
msgid "gVisor"
msgstr "gVisor"
@@ -2497,7 +2520,7 @@ msgid "metacubexd"
msgstr "metacubexd"
#: htdocs/luci-static/resources/view/fchomo/node.js:765
-#: htdocs/luci-static/resources/view/fchomo/node.js:950
+#: htdocs/luci-static/resources/view/fchomo/node.js:968
msgid "mpTCP"
msgstr "多路径 TCP (mpTCP)"
@@ -2506,12 +2529,12 @@ msgstr "多路径 TCP (mpTCP)"
msgid "new_reno"
msgstr "new_reno"
-#: htdocs/luci-static/resources/view/fchomo/client.js:396
+#: htdocs/luci-static/resources/view/fchomo/client.js:403
msgid "no-resolve"
msgstr "no-resolve"
-#: htdocs/luci-static/resources/fchomo.js:740
-#: htdocs/luci-static/resources/fchomo.js:771
+#: htdocs/luci-static/resources/fchomo.js:749
+#: htdocs/luci-static/resources/fchomo.js:780
msgid "non-empty value"
msgstr "非空值"
@@ -2523,11 +2546,11 @@ msgstr "非空值"
msgid "none"
msgstr "无"
-#: htdocs/luci-static/resources/view/fchomo/global.js:92
+#: htdocs/luci-static/resources/view/fchomo/global.js:103
msgid "not found"
msgstr "未找到"
-#: htdocs/luci-static/resources/view/fchomo/client.js:479
+#: htdocs/luci-static/resources/view/fchomo/client.js:486
msgid "not included \",\""
msgstr "不包含 \",\""
@@ -2539,7 +2562,7 @@ msgstr ""
msgid "obfs-simple"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/node.js:933
+#: htdocs/luci-static/resources/view/fchomo/node.js:951
msgid "override.proxy-name"
msgstr ""
@@ -2567,27 +2590,27 @@ msgstr ""
msgid "smux"
msgstr ""
-#: htdocs/luci-static/resources/view/fchomo/client.js:379
+#: htdocs/luci-static/resources/view/fchomo/client.js:386
msgid "src"
msgstr "src"
-#: htdocs/luci-static/resources/view/fchomo/global.js:196
+#: htdocs/luci-static/resources/view/fchomo/global.js:244
msgid "unchecked"
msgstr "未检查"
-#: htdocs/luci-static/resources/fchomo.js:573
+#: htdocs/luci-static/resources/fchomo.js:582
msgid "unique UCI identifier"
msgstr "独立 UCI 标识"
-#: htdocs/luci-static/resources/fchomo.js:576
+#: htdocs/luci-static/resources/fchomo.js:585
msgid "unique identifier"
msgstr "独立标识"
-#: htdocs/luci-static/resources/fchomo.js:780
+#: htdocs/luci-static/resources/fchomo.js:789
msgid "unique value"
msgstr "独立值"
-#: htdocs/luci-static/resources/view/fchomo/node.js:963
+#: htdocs/luci-static/resources/view/fchomo/node.js:981
msgid "up"
msgstr "Hysteria 上传速率"
@@ -2609,8 +2632,8 @@ msgstr ""
msgid "v3"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:714
-#: htdocs/luci-static/resources/fchomo.js:717
+#: htdocs/luci-static/resources/fchomo.js:723
+#: htdocs/luci-static/resources/fchomo.js:726
msgid "valid JSON format"
msgstr "有效的 JSON 格式"
@@ -2618,24 +2641,24 @@ msgstr "有效的 JSON 格式"
msgid "valid SHA256 string with %d characters"
msgstr "包含 %d 个字符的有效 SHA256 字符串"
-#: htdocs/luci-static/resources/fchomo.js:792
-#: htdocs/luci-static/resources/fchomo.js:795
+#: htdocs/luci-static/resources/fchomo.js:801
+#: htdocs/luci-static/resources/fchomo.js:804
msgid "valid URL"
msgstr "有效网址"
-#: htdocs/luci-static/resources/fchomo.js:727
+#: htdocs/luci-static/resources/fchomo.js:736
msgid "valid base64 key with %d characters"
msgstr "包含 %d 个字符的有效 base64 密钥"
-#: htdocs/luci-static/resources/fchomo.js:742
+#: htdocs/luci-static/resources/fchomo.js:751
msgid "valid key length with %d characters"
msgstr "包含 %d 个字符的有效密钥"
-#: htdocs/luci-static/resources/fchomo.js:697
+#: htdocs/luci-static/resources/fchomo.js:706
msgid "valid port value"
msgstr "有效端口值"
-#: htdocs/luci-static/resources/fchomo.js:805
+#: htdocs/luci-static/resources/fchomo.js:814
msgid "valid uuid"
msgstr "有效 uuid"
@@ -2659,6 +2682,6 @@ msgstr ""
msgid "zero"
msgstr ""
-#: htdocs/luci-static/resources/fchomo.js:551
+#: htdocs/luci-static/resources/fchomo.js:560
msgid "🡇"
msgstr ""
diff --git a/luci-app-fchomo/root/etc/fchomo/scripts/natcheck.sh b/luci-app-fchomo/root/etc/fchomo/scripts/natcheck.sh
new file mode 100755
index 00000000..df87a1dc
--- /dev/null
+++ b/luci-app-fchomo/root/etc/fchomo/scripts/natcheck.sh
@@ -0,0 +1,44 @@
+#!/bin/sh
+#
+# Depends: coreutils-timeout
+#
+# Author: muink
+# Ref: https://github.com/muink/luci-app-natmapt/blob/master/root/usr/libexec/natmap/natcheck.sh
+#
+# Args:
+[ "$#" -ge 3 ] || exit 1
+stun="$1" && shift
+l4proto="$1" && shift
+port="$1" && shift
+
+echo "$stun" | grep -qE "^[A-Za-z0-9.-]+:[0-9]+$" || exit 1
+echo "$l4proto" | grep -qE "^(udp|tcp)$" || exit 1
+echo "$port" | grep -qE "^[0-9]*$" || exit 1
+
+PROG="$(command -v stunclient)"
+
+result="$(timeout 30 $PROG --protocol $l4proto --mode full ${port:+--localport $port} ${stun%:*} ${stun#*:} 2>/dev/null)"
+
+render() {
+echo "$1" | sed -E "\
+ s,\b((S|s)uccess)\b,\1,g;\
+ s,\b((F|f)ail)\b,\1,g;\
+ s|(Nat behavior:\s*)\b(Unknown Behavior)\b|\1\2|g;\
+ s|(Nat behavior:\s*)\b(Direct Mapping)\b|\1\2|g;\
+ s|(Nat behavior:\s*)\b(Endpoint Independent Mapping)\b|\1\2|g;\
+ s|(Nat behavior:\s*)\b(Address Dependent Mapping)\b|\1\2|g;\
+ s|(Nat behavior:\s*)\b(Address and Port Dependent Mapping)\b|\1\2|g;\
+ s|(Nat behavior:\s*)\b(Unknown NAT Behavior)\b|\1\2|g;\
+ s|(Nat filtering:\s*)\b(Unknown Filtering)\b|\1\2|g;\
+ s|(Nat filtering:\s*)\b(Direct Mapping (Filtering))\b|\1\2|g;\
+ s|(Nat filtering:\s*)\b(Endpoint Independent Filtering)\b|\1\2|g;\
+ s|(Nat filtering:\s*)\b(Address Dependent Filtering)\b|\1\2|g;\
+ s|(Nat filtering:\s*)\b(Address and Port Dependent Filtering)\b|\1\2|g;\
+ s|(Nat filtering:\s*)\b(Unknown NAT Filtering)\b|\1\2|g;\
+ s|(:\s*)(.*)$|\1\2
|g"
+}
+
+cat <<- EOF
+$(echo ${l4proto} | tr 'a-z' 'A-Z') TEST:
+$(render "${result:-Test timeout}")
+EOF
diff --git a/luci-app-fchomo/root/usr/share/rpcd/acl.d/luci-app-fchomo.json b/luci-app-fchomo/root/usr/share/rpcd/acl.d/luci-app-fchomo.json
index 1483865c..d1d962c1 100644
--- a/luci-app-fchomo/root/usr/share/rpcd/acl.d/luci-app-fchomo.json
+++ b/luci-app-fchomo/root/usr/share/rpcd/acl.d/luci-app-fchomo.json
@@ -3,6 +3,7 @@
"description": "Grant access to fchomo configuration",
"read": {
"file": {
+ "/etc/fchomo/scripts/natcheck.sh": [ "exec" ],
"/etc/init.d/fchomo reload *": [ "exec" ],
"/var/run/fchomo/fchomo.log": [ "read" ],
"/var/run/fchomo/mihomo-c.log": [ "read" ],
diff --git a/luci-app-fchomo/root/usr/share/rpcd/ucode/luci.fchomo b/luci-app-fchomo/root/usr/share/rpcd/ucode/luci.fchomo
index a0e8c638..f1fb3eee 100755
--- a/luci-app-fchomo/root/usr/share/rpcd/ucode/luci.fchomo
+++ b/luci-app-fchomo/root/usr/share/rpcd/ucode/luci.fchomo
@@ -94,6 +94,7 @@ const methods = {
features.hm_has_dnsmasq_full = system(`[ -n "$(${use_apk ? 'apk list -qI' : 'opkg list-installed'} dnsmasq-full)" ]`) == 0 || null;
features.hm_has_ip_full = access('/usr/libexec/ip-full');
+ features.hm_has_stunclient = access('/usr/bin/stunclient');
features.hm_has_tcp_brutal = hasKernelModule('brutal.ko');
features.hm_has_tproxy = hasKernelModule('nft_tproxy.ko') || access('/etc/modules.d/nft-tproxy');
features.hm_has_tun = hasKernelModule('tun.ko') || access('/etc/modules.d/30-tun');