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 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。支持 yamljson 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 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-fullkmod-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');