From 40fd2535d517a9131e4f7ed22b1fece44a3b75c4 Mon Sep 17 00:00:00 2001 From: sbwml Date: Sat, 31 Aug 2024 11:30:08 +0800 Subject: [PATCH] luci-app-homeproxy: sync upstream last commit: https://github.com/immortalwrt/homeproxy/commit/c05700366a98e07bcd1714096a284588750439b3 --- .../htdocs/luci-static/resources/homeproxy.js | 25 +- .../resources/view/homeproxy/client.js | 9 + .../resources/view/homeproxy/node.js | 8 + .../resources/view/homeproxy/server.js | 72 +- luci-app-homeproxy/po/templates/homeproxy.pot | 1426 +++++++++-------- luci-app-homeproxy/po/zh_Hans/homeproxy.po | 1421 ++++++++-------- luci-app-homeproxy/root/etc/config/homeproxy | 1 + .../etc/homeproxy/scripts/generate_client.uc | 9 +- .../etc/homeproxy/scripts/generate_server.uc | 1 + 9 files changed, 1568 insertions(+), 1404 deletions(-) diff --git a/luci-app-homeproxy/htdocs/luci-static/resources/homeproxy.js b/luci-app-homeproxy/htdocs/luci-static/resources/homeproxy.js index 2d274d9d9..f80fb6430 100644 --- a/luci-app-homeproxy/htdocs/luci-static/resources/homeproxy.js +++ b/luci-app-homeproxy/htdocs/luci-static/resources/homeproxy.js @@ -169,11 +169,26 @@ return baseclass.extend({ return L.resolveDefault(callGetSingBoxFeatures(), {}); }, - generateUUIDv4: function() { - /* Thanks to https://stackoverflow.com/a/2117523 */ - return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, (c) => - (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) - ); + generateRand: function(type, length) { + var byteArr; + if (['base64', 'hex'].includes(type)) + byteArr = crypto.getRandomValues(new Uint8Array(length)); + switch (type) { + case 'base64': + /* Thanks to https://stackoverflow.com/questions/9267899 */ + return btoa(String.fromCharCode.apply(null, byteArr)); + case 'hex': + return Array.from(byteArr, (byte) => + (byte & 255).toString(16).padStart(2, '0') + ).join(''); + case 'uuid': + /* Thanks to https://stackoverflow.com/a/2117523 */ + return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, (c) => + (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) + ); + default: + return null; + }; }, loadDefaultLabel: function(uciconfig, ucisection) { diff --git a/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/client.js b/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/client.js index f4dbf5197..b5a9aecdf 100644 --- a/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/client.js +++ b/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/client.js @@ -313,6 +313,15 @@ return view.extend({ so.depends('tcpip_stack', 'gvisor'); so.rmempty = false; + so = ss.option(form.Value, 'udp_timeout', _('UDP NAT expiration time'), + _('In seconds. 300 is used by default.')); + so.datatype = 'uinteger'; + so.default = '300'; + so.depends('homeproxy.config.proxy_mode', 'redirect_tproxy'); + so.depends('homeproxy.config.proxy_mode', 'redirect_tun'); + so.depends('homeproxy.config.proxy_mode', 'tun'); + so.rmempty = false; + so = ss.option(form.Flag, 'bypass_cn_traffic', _('Bypass CN traffic'), _('Bypass mainland China traffic via firewall rules by default.')); so.default = so.disabled; diff --git a/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/node.js b/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/node.js index ea5fd8519..58d1434b6 100644 --- a/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/node.js +++ b/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/node.js @@ -468,6 +468,14 @@ function renderNodeSettings(section, data, features, main_node, routing_mode) { o.datatype = 'port'; o.depends('type', 'direct'); + o = s.option(form.ListValue, 'proxy_protocol', _('Proxy protocol'), + _('Write proxy protocol in the connection header.')); + o.value('', _('Disable')); + o.value('1', _('v1')); + o.value('2', _('v2')); + o.depends('type', 'direct'); + o.modalonly = true; + /* Hysteria (2) config start */ o = s.option(form.ListValue, 'hysteria_protocol', _('Protocol')); o.value('udp'); diff --git a/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/server.js b/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/server.js index 43d99a83b..9eab6d849 100644 --- a/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/server.js +++ b/luci-app-homeproxy/htdocs/luci-static/resources/view/homeproxy/server.js @@ -9,6 +9,7 @@ 'require poll'; 'require rpc'; 'require uci'; +'require ui'; 'require view'; 'require homeproxy as hp'; @@ -41,6 +42,46 @@ function renderStatus(isRunning) { return renderHTML; } +function handleGenKey(option) { + var section_id = this.section.section; + var type = this.section.getOption('type').formvalue(section_id); + var widget = this.map.findElement('id', 'widget.cbid.homeproxy.%s.%s'.format(section_id, option)); + var password, required_method; + + if (option === 'uuid') + required_method = 'uuid'; + else if (type === 'shadowsocks') + required_method = this.section.getOption('shadowsocks_encrypt_method')?.formvalue(section_id); + + switch (required_method) { + case 'aes-128-gcm': + case '2022-blake3-aes-128-gcm': + password = hp.generateRand('base64', 16); + break; + case 'aes-192-gcm': + password = hp.generateRand('base64', 24); + break; + case 'aes-256-gcm': + case 'chacha20-ietf-poly1305': + case 'xchacha20-ietf-poly1305': + case '2022-blake3-aes-256-gcm': + case '2022-blake3-chacha20-poly1305': + password = hp.generateRand('base64', 32); + break; + case 'none': + password = ''; + break; + case 'uuid': + password = hp.generateRand('uuid'); + break; + default: + password = hp.generateRand('hex', 16); + break; + } + + return widget.value = password; +} + return view.extend({ load: function() { return Promise.all([ @@ -139,6 +180,17 @@ return view.extend({ o.depends('type', 'shadowsocks'); o.depends('type', 'trojan'); o.depends('type', 'tuic'); + o.renderWidget = function() { + var node = form.Value.prototype.renderWidget.apply(this, arguments); + + (node.querySelector('.control-group') || node).appendChild(E('button', { + 'class': 'cbi-button cbi-button-apply', + 'title': _('Generate'), + 'click': ui.createHandlerFn(this, handleGenKey, this.option) + }, [ _('Generate') ])); + + return node; + } o.validate = function(section_id, value) { if (section_id) { var type = this.map.lookupOption('type', section_id)[0].formvalue(section_id); @@ -265,6 +317,17 @@ return view.extend({ o.depends('type', 'tuic'); o.depends('type', 'vless'); o.depends('type', 'vmess'); + o.renderWidget = function() { + var node = form.Value.prototype.renderWidget.apply(this, arguments); + + (node.querySelector('.control-group') || node).appendChild(E('button', { + 'class': 'cbi-button cbi-button-apply', + 'title': _('Generate'), + 'click': ui.createHandlerFn(this, handleGenKey, this.option) + }, [ _('Generate') ])); + + return node; + } o.validate = hp.validateUUID; o.modalonly = true; @@ -277,7 +340,7 @@ return view.extend({ o.depends('type', 'tuic'); o.modalonly = true; - o = s.option(form.ListValue, 'tuic_auth_timeout', _('Auth timeout'), + o = s.option(form.Value, 'tuic_auth_timeout', _('Auth timeout'), _('How long the server should wait for the client to send the authentication command (in seconds).')); o.datatype = 'uinteger'; o.default = '3'; @@ -716,6 +779,13 @@ return view.extend({ o.depends({'network': 'tcp', '!reverse': true}); o.modalonly = true; + o = s.option(form.Value, 'udp_timeout', _('UDP NAT expiration time'), + _('In seconds. 300 is used by default.')); + o.datatype = 'uinteger'; + o.default = '300'; + o.depends({'network': 'tcp', '!reverse': true}); + o.modalonly = true; + o = s.option(form.Flag, 'sniff_override', _('Override destination'), _('Override the connection destination address with the sniffed domain.')); o.rmempty = false; diff --git a/luci-app-homeproxy/po/templates/homeproxy.pot b/luci-app-homeproxy/po/templates/homeproxy.pot index 295134ad0..18a81c652 100644 --- a/luci-app-homeproxy/po/templates/homeproxy.pot +++ b/luci-app-homeproxy/po/templates/homeproxy.pot @@ -5,50 +5,50 @@ msgstr "Content-Type: text/plain; charset=UTF-8" msgid "%s log" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1391 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1399 msgid "%s nodes removed" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:560 -#: htdocs/luci-static/resources/view/homeproxy/client.js:894 +#: htdocs/luci-static/resources/view/homeproxy/client.js:569 +#: htdocs/luci-static/resources/view/homeproxy/client.js:903 msgid "-- Please choose --" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:465 +#: htdocs/luci-static/resources/view/homeproxy/client.js:474 msgid "4 or 6. Not limited if empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1021 -#: htdocs/luci-static/resources/view/homeproxy/server.js:675 -#: htdocs/luci-static/resources/view/homeproxy/server.js:693 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1029 +#: htdocs/luci-static/resources/view/homeproxy/server.js:738 +#: htdocs/luci-static/resources/view/homeproxy/server.js:756 msgid "Save your configuration before uploading files!" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:584 +#: htdocs/luci-static/resources/view/homeproxy/server.js:647 msgid "API token" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:598 +#: htdocs/luci-static/resources/view/homeproxy/node.js:606 msgid "Accept any if empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1057 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1066 msgid "Access Control" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:569 +#: htdocs/luci-static/resources/view/homeproxy/server.js:632 msgid "Access key ID" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:574 +#: htdocs/luci-static/resources/view/homeproxy/server.js:637 msgid "Access key secret" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:763 +#: htdocs/luci-static/resources/view/homeproxy/client.js:772 msgid "Add a DNS rule" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:668 +#: htdocs/luci-static/resources/view/homeproxy/client.js:677 msgid "Add a DNS server" msgstr "" @@ -56,36 +56,36 @@ msgstr "" msgid "Add a node" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:355 +#: htdocs/luci-static/resources/view/homeproxy/client.js:364 msgid "Add a routing node" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:431 +#: htdocs/luci-static/resources/view/homeproxy/client.js:440 msgid "Add a routing rule" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:978 +#: htdocs/luci-static/resources/view/homeproxy/client.js:987 msgid "Add a rule set" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:88 +#: htdocs/luci-static/resources/view/homeproxy/server.js:129 msgid "Add a server" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:682 +#: htdocs/luci-static/resources/view/homeproxy/client.js:691 #: htdocs/luci-static/resources/view/homeproxy/node.js:413 msgid "Address" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:686 +#: htdocs/luci-static/resources/view/homeproxy/client.js:695 msgid "Address resolver" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:718 +#: htdocs/luci-static/resources/view/homeproxy/client.js:727 msgid "Address strategy" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:562 +#: htdocs/luci-static/resources/view/homeproxy/server.js:625 msgid "Alibaba Cloud DNS" msgstr "" @@ -98,21 +98,21 @@ msgstr "" msgid "All ports" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:974 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1317 +#: htdocs/luci-static/resources/view/homeproxy/node.js:982 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1325 msgid "Allow insecure" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:975 +#: htdocs/luci-static/resources/view/homeproxy/node.js:983 msgid "Allow insecure connection at TLS client." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1318 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1326 msgid "Allow insecure connection by default when add nodes from subscriptions." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:805 -#: htdocs/luci-static/resources/view/homeproxy/server.js:400 +#: htdocs/luci-static/resources/view/homeproxy/node.js:813 +#: htdocs/luci-static/resources/view/homeproxy/server.js:463 msgid "Allowed payload size is in the request." msgstr "" @@ -124,37 +124,37 @@ msgstr "" msgid "Already in updating." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:671 -#: htdocs/luci-static/resources/view/homeproxy/server.js:309 +#: htdocs/luci-static/resources/view/homeproxy/node.js:679 +#: htdocs/luci-static/resources/view/homeproxy/server.js:372 msgid "Alter ID" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:599 +#: htdocs/luci-static/resources/view/homeproxy/server.js:662 msgid "Alternative HTTP port" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:605 +#: htdocs/luci-static/resources/view/homeproxy/server.js:668 msgid "Alternative TLS port" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1354 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1362 msgid "An error occurred during updating subscriptions: %s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:920 +#: htdocs/luci-static/resources/view/homeproxy/client.js:929 msgid "Any" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:642 -#: htdocs/luci-static/resources/view/homeproxy/client.js:748 -#: htdocs/luci-static/resources/view/homeproxy/client.js:962 +#: htdocs/luci-static/resources/view/homeproxy/client.js:651 +#: htdocs/luci-static/resources/view/homeproxy/client.js:757 +#: htdocs/luci-static/resources/view/homeproxy/client.js:971 msgid "" "Append a edns0-subnet OPT extra record with the specified IP " "prefix to every query by default.
If value is an IP address instead of " "prefix, /32 or /128 will be appended automatically." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1007 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1015 msgid "Append self-signed certificate" msgstr "" @@ -171,37 +171,37 @@ msgstr "" msgid "Are you sure to allow insecure?" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:280 +#: htdocs/luci-static/resources/view/homeproxy/server.js:343 msgid "Auth timeout" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:695 +#: htdocs/luci-static/resources/view/homeproxy/node.js:703 msgid "Authenticated length" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:490 -#: htdocs/luci-static/resources/view/homeproxy/server.js:200 +#: htdocs/luci-static/resources/view/homeproxy/node.js:498 +#: htdocs/luci-static/resources/view/homeproxy/server.js:252 msgid "Authentication payload" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:483 -#: htdocs/luci-static/resources/view/homeproxy/server.js:193 +#: htdocs/luci-static/resources/view/homeproxy/node.js:491 +#: htdocs/luci-static/resources/view/homeproxy/server.js:245 msgid "Authentication type" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:79 +#: htdocs/luci-static/resources/view/homeproxy/server.js:120 msgid "Auto configure firewall" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1271 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1279 msgid "Auto update" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1272 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1280 msgid "Auto update subscriptions." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:629 +#: htdocs/luci-static/resources/view/homeproxy/node.js:637 msgid "BBR" msgstr "" @@ -209,8 +209,8 @@ msgstr "" msgid "BaiDu" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:485 -#: htdocs/luci-static/resources/view/homeproxy/server.js:195 +#: htdocs/luci-static/resources/view/homeproxy/node.js:493 +#: htdocs/luci-static/resources/view/homeproxy/server.js:247 msgid "Base64" msgstr "" @@ -218,44 +218,44 @@ msgstr "" msgid "Based on google/gvisor." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1000 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1009 msgid "Binary file" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:382 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1070 +#: htdocs/luci-static/resources/view/homeproxy/client.js:391 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1079 msgid "Bind interface" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1071 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1080 msgid "" "Bind outbound traffic to specific interface. Leave empty to auto detect." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1307 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1315 msgid "Blacklist mode" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:333 -#: htdocs/luci-static/resources/view/homeproxy/client.js:588 -#: htdocs/luci-static/resources/view/homeproxy/client.js:922 +#: htdocs/luci-static/resources/view/homeproxy/client.js:342 +#: htdocs/luci-static/resources/view/homeproxy/client.js:597 +#: htdocs/luci-static/resources/view/homeproxy/client.js:931 msgid "Block" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:618 -#: htdocs/luci-static/resources/view/homeproxy/client.js:940 +#: htdocs/luci-static/resources/view/homeproxy/client.js:627 +#: htdocs/luci-static/resources/view/homeproxy/client.js:949 msgid "Block DNS queries" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:468 -#: htdocs/luci-static/resources/view/homeproxy/client.js:481 -#: htdocs/luci-static/resources/view/homeproxy/client.js:799 -#: htdocs/luci-static/resources/view/homeproxy/client.js:809 -#: htdocs/luci-static/resources/view/homeproxy/server.js:732 +#: htdocs/luci-static/resources/view/homeproxy/client.js:477 +#: htdocs/luci-static/resources/view/homeproxy/client.js:490 +#: htdocs/luci-static/resources/view/homeproxy/client.js:808 +#: htdocs/luci-static/resources/view/homeproxy/client.js:818 +#: htdocs/luci-static/resources/view/homeproxy/server.js:802 msgid "Both" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:316 +#: htdocs/luci-static/resources/view/homeproxy/client.js:325 msgid "Bypass CN traffic" msgstr "" @@ -263,11 +263,11 @@ msgstr "" msgid "Bypass mainland China" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:317 +#: htdocs/luci-static/resources/view/homeproxy/client.js:326 msgid "Bypass mainland China traffic via firewall rules by default." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:548 +#: htdocs/luci-static/resources/view/homeproxy/server.js:611 msgid "CA provider" msgstr "" @@ -275,16 +275,16 @@ msgstr "" msgid "CNNIC Public DNS (210.2.4.8)" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:627 +#: htdocs/luci-static/resources/view/homeproxy/node.js:635 msgid "CUBIC" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1171 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1179 msgid "Cancel" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1013 -#: htdocs/luci-static/resources/view/homeproxy/server.js:664 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1021 +#: htdocs/luci-static/resources/view/homeproxy/server.js:727 msgid "Certificate path" msgstr "" @@ -312,8 +312,8 @@ msgstr "" msgid "China list version" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:999 -#: htdocs/luci-static/resources/view/homeproxy/server.js:506 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1007 +#: htdocs/luci-static/resources/view/homeproxy/server.js:569 msgid "Cipher suites" msgstr "" @@ -329,7 +329,7 @@ msgstr "" msgid "Client Settings" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:592 +#: htdocs/luci-static/resources/view/homeproxy/node.js:600 msgid "Client version" msgstr "" @@ -337,12 +337,12 @@ msgstr "" msgid "CloudFlare Public DNS (1.1.1.1)" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:563 +#: htdocs/luci-static/resources/view/homeproxy/server.js:626 msgid "Cloudflare" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/client.js:122 -#: htdocs/luci-static/resources/view/homeproxy/server.js:69 +#: htdocs/luci-static/resources/view/homeproxy/server.js:110 #: htdocs/luci-static/resources/view/homeproxy/status.js:128 msgid "Collecting data..." msgstr "" @@ -351,8 +351,8 @@ msgstr "" msgid "Common ports only (bypass P2P traffic)" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:625 -#: htdocs/luci-static/resources/view/homeproxy/server.js:271 +#: htdocs/luci-static/resources/view/homeproxy/node.js:633 +#: htdocs/luci-static/resources/view/homeproxy/server.js:334 msgid "Congestion control algorithm" msgstr "" @@ -364,208 +364,209 @@ msgstr "" msgid "Custom routing" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:816 +#: htdocs/luci-static/resources/view/homeproxy/client.js:825 msgid "DNS" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:754 +#: htdocs/luci-static/resources/view/homeproxy/client.js:763 msgid "DNS Rules" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:659 +#: htdocs/luci-static/resources/view/homeproxy/client.js:668 msgid "DNS Servers" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:601 +#: htdocs/luci-static/resources/view/homeproxy/client.js:610 msgid "DNS Settings" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:561 +#: htdocs/luci-static/resources/view/homeproxy/server.js:624 msgid "DNS provider" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:763 +#: htdocs/luci-static/resources/view/homeproxy/client.js:772 msgid "DNS rule" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/client.js:158 -#: htdocs/luci-static/resources/view/homeproxy/client.js:668 +#: htdocs/luci-static/resources/view/homeproxy/client.js:677 msgid "DNS server" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:556 +#: htdocs/luci-static/resources/view/homeproxy/server.js:619 msgid "DNS01 challenge" msgstr "" #: htdocs/luci-static/resources/homeproxy.js:17 -#: htdocs/luci-static/resources/view/homeproxy/client.js:459 -#: htdocs/luci-static/resources/view/homeproxy/client.js:791 -#: htdocs/luci-static/resources/view/homeproxy/node.js:637 +#: htdocs/luci-static/resources/view/homeproxy/client.js:468 +#: htdocs/luci-static/resources/view/homeproxy/client.js:800 +#: htdocs/luci-static/resources/view/homeproxy/node.js:645 msgid "Default" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:616 -#: htdocs/luci-static/resources/view/homeproxy/client.js:693 -#: htdocs/luci-static/resources/view/homeproxy/client.js:938 +#: htdocs/luci-static/resources/view/homeproxy/client.js:625 +#: htdocs/luci-static/resources/view/homeproxy/client.js:702 +#: htdocs/luci-static/resources/view/homeproxy/client.js:947 msgid "Default DNS (issued by WAN)" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:611 +#: htdocs/luci-static/resources/view/homeproxy/client.js:620 msgid "Default DNS server" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:606 +#: htdocs/luci-static/resources/view/homeproxy/client.js:615 msgid "Default DNS strategy" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:725 +#: htdocs/luci-static/resources/view/homeproxy/client.js:734 msgid "Default domain strategy for resolving the domain names." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:326 +#: htdocs/luci-static/resources/view/homeproxy/client.js:335 msgid "Default outbound" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1325 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1333 msgid "Default packet encoding" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:527 +#: htdocs/luci-static/resources/view/homeproxy/server.js:590 msgid "Default server name" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:332 -#: htdocs/luci-static/resources/view/homeproxy/client.js:395 -#: htdocs/luci-static/resources/view/homeproxy/client.js:587 -#: htdocs/luci-static/resources/view/homeproxy/client.js:735 -#: htdocs/luci-static/resources/view/homeproxy/client.js:921 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1039 +#: htdocs/luci-static/resources/view/homeproxy/client.js:341 +#: htdocs/luci-static/resources/view/homeproxy/client.js:404 +#: htdocs/luci-static/resources/view/homeproxy/client.js:596 +#: htdocs/luci-static/resources/view/homeproxy/client.js:744 +#: htdocs/luci-static/resources/view/homeproxy/client.js:930 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1048 #: htdocs/luci-static/resources/view/homeproxy/node.js:394 msgid "Direct" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1169 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1178 msgid "Direct Domain List" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1086 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1131 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1095 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1140 msgid "Direct IPv4 IP-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1089 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1134 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1098 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1143 msgid "Direct IPv6 IP-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1092 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1101 msgid "Direct MAC-s" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/client.js:142 #: htdocs/luci-static/resources/view/homeproxy/client.js:150 -#: htdocs/luci-static/resources/view/homeproxy/client.js:331 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1080 -#: htdocs/luci-static/resources/view/homeproxy/node.js:484 -#: htdocs/luci-static/resources/view/homeproxy/node.js:496 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1053 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1306 -#: htdocs/luci-static/resources/view/homeproxy/server.js:194 -#: htdocs/luci-static/resources/view/homeproxy/server.js:206 +#: htdocs/luci-static/resources/view/homeproxy/client.js:340 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1089 +#: htdocs/luci-static/resources/view/homeproxy/node.js:473 +#: htdocs/luci-static/resources/view/homeproxy/node.js:492 +#: htdocs/luci-static/resources/view/homeproxy/node.js:504 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1061 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1314 +#: htdocs/luci-static/resources/view/homeproxy/server.js:246 +#: htdocs/luci-static/resources/view/homeproxy/server.js:258 msgid "Disable" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:629 +#: htdocs/luci-static/resources/view/homeproxy/client.js:638 msgid "Disable DNS cache" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:589 +#: htdocs/luci-static/resources/view/homeproxy/server.js:652 msgid "Disable HTTP challenge" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:532 -#: htdocs/luci-static/resources/view/homeproxy/server.js:237 +#: htdocs/luci-static/resources/view/homeproxy/node.js:540 +#: htdocs/luci-static/resources/view/homeproxy/server.js:289 msgid "Disable Path MTU discovery" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:594 +#: htdocs/luci-static/resources/view/homeproxy/server.js:657 msgid "Disable TLS ALPN challenge" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:952 +#: htdocs/luci-static/resources/view/homeproxy/client.js:961 msgid "Disable cache and save cache in this query." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:632 +#: htdocs/luci-static/resources/view/homeproxy/client.js:641 msgid "Disable cache expire" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:951 +#: htdocs/luci-static/resources/view/homeproxy/client.js:960 msgid "Disable dns cache" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1035 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1043 msgid "Disable dynamic record sizing" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:533 -#: htdocs/luci-static/resources/view/homeproxy/server.js:238 +#: htdocs/luci-static/resources/view/homeproxy/node.js:541 +#: htdocs/luci-static/resources/view/homeproxy/server.js:290 msgid "" "Disables Path MTU Discovery (RFC 8899). Packets will then be at most 1252 " "(IPv4) / 1232 (IPv6) bytes in size." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:492 -#: htdocs/luci-static/resources/view/homeproxy/client.js:828 +#: htdocs/luci-static/resources/view/homeproxy/client.js:501 +#: htdocs/luci-static/resources/view/homeproxy/client.js:837 msgid "Domain keyword" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:483 -#: htdocs/luci-static/resources/view/homeproxy/client.js:819 +#: htdocs/luci-static/resources/view/homeproxy/client.js:492 +#: htdocs/luci-static/resources/view/homeproxy/client.js:828 msgid "Domain name" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:496 -#: htdocs/luci-static/resources/view/homeproxy/client.js:832 +#: htdocs/luci-static/resources/view/homeproxy/client.js:505 +#: htdocs/luci-static/resources/view/homeproxy/client.js:841 msgid "Domain regex" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:376 -#: htdocs/luci-static/resources/view/homeproxy/server.js:723 +#: htdocs/luci-static/resources/view/homeproxy/client.js:385 +#: htdocs/luci-static/resources/view/homeproxy/server.js:793 msgid "Domain strategy" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:488 -#: htdocs/luci-static/resources/view/homeproxy/client.js:824 +#: htdocs/luci-static/resources/view/homeproxy/client.js:497 +#: htdocs/luci-static/resources/view/homeproxy/client.js:833 msgid "Domain suffix" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:521 +#: htdocs/luci-static/resources/view/homeproxy/server.js:584 msgid "Domains" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:923 -#: htdocs/luci-static/resources/view/homeproxy/server.js:438 +#: htdocs/luci-static/resources/view/homeproxy/node.js:931 +#: htdocs/luci-static/resources/view/homeproxy/server.js:501 msgid "Download bandwidth" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:924 -#: htdocs/luci-static/resources/view/homeproxy/server.js:439 +#: htdocs/luci-static/resources/view/homeproxy/node.js:932 +#: htdocs/luci-static/resources/view/homeproxy/server.js:502 msgid "Download bandwidth in Mbps." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1313 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1321 msgid "" "Drop/keep nodes that contain the specific keywords. Regex is supported." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1305 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1313 msgid "Drop/keep specific nodes from subscriptions." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:612 +#: htdocs/luci-static/resources/view/homeproxy/server.js:675 msgid "" "EAB (External Account Binding) contains information necessary to bind or map " "an ACME account to some other account known by the CA.
External account " @@ -573,91 +574,91 @@ msgid "" "a non-ACME system, such as a CA customer database." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1030 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1038 msgid "" "ECH (Encrypted Client Hello) is a TLS extension that allows a client to " "encrypt the first part of its ClientHello message." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1045 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1053 msgid "ECH config" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:641 -#: htdocs/luci-static/resources/view/homeproxy/client.js:747 -#: htdocs/luci-static/resources/view/homeproxy/client.js:961 +#: htdocs/luci-static/resources/view/homeproxy/client.js:650 +#: htdocs/luci-static/resources/view/homeproxy/client.js:756 +#: htdocs/luci-static/resources/view/homeproxy/client.js:970 msgid "EDNS Client subnet" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:804 -#: htdocs/luci-static/resources/view/homeproxy/server.js:399 +#: htdocs/luci-static/resources/view/homeproxy/node.js:812 +#: htdocs/luci-static/resources/view/homeproxy/server.js:462 msgid "Early data" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:811 -#: htdocs/luci-static/resources/view/homeproxy/server.js:406 +#: htdocs/luci-static/resources/view/homeproxy/node.js:819 +#: htdocs/luci-static/resources/view/homeproxy/server.js:469 msgid "Early data header name" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:407 +#: htdocs/luci-static/resources/view/homeproxy/server.js:470 msgid "Early data is sent in path instead of header by default." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1147 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1155 msgid "Edit nodes" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:533 +#: htdocs/luci-static/resources/view/homeproxy/server.js:596 msgid "Email" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:364 -#: htdocs/luci-static/resources/view/homeproxy/client.js:446 -#: htdocs/luci-static/resources/view/homeproxy/client.js:677 -#: htdocs/luci-static/resources/view/homeproxy/client.js:778 -#: htdocs/luci-static/resources/view/homeproxy/client.js:987 -#: htdocs/luci-static/resources/view/homeproxy/server.js:75 -#: htdocs/luci-static/resources/view/homeproxy/server.js:98 +#: htdocs/luci-static/resources/view/homeproxy/client.js:373 +#: htdocs/luci-static/resources/view/homeproxy/client.js:455 +#: htdocs/luci-static/resources/view/homeproxy/client.js:686 +#: htdocs/luci-static/resources/view/homeproxy/client.js:787 +#: htdocs/luci-static/resources/view/homeproxy/client.js:996 +#: htdocs/luci-static/resources/view/homeproxy/server.js:116 +#: htdocs/luci-static/resources/view/homeproxy/server.js:139 msgid "Enable" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:650 -#: htdocs/luci-static/resources/view/homeproxy/server.js:288 +#: htdocs/luci-static/resources/view/homeproxy/node.js:658 +#: htdocs/luci-static/resources/view/homeproxy/server.js:351 msgid "" "Enable 0-RTT QUIC connection handshake on the client side. This is not " "impacting much on the performance, as the protocol is fully multiplexed.
Disabling this is highly recommended, as it is vulnerable to replay attacks." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:649 -#: htdocs/luci-static/resources/view/homeproxy/server.js:287 +#: htdocs/luci-static/resources/view/homeproxy/node.js:657 +#: htdocs/luci-static/resources/view/homeproxy/server.js:350 msgid "Enable 0-RTT handshake" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:515 +#: htdocs/luci-static/resources/view/homeproxy/server.js:578 msgid "Enable ACME" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1029 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1037 msgid "Enable ECH" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1040 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1048 msgid "Enable PQ signature schemes" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:917 -#: htdocs/luci-static/resources/view/homeproxy/server.js:432 +#: htdocs/luci-static/resources/view/homeproxy/node.js:925 +#: htdocs/luci-static/resources/view/homeproxy/server.js:495 msgid "Enable TCP Brutal" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:918 -#: htdocs/luci-static/resources/view/homeproxy/server.js:433 +#: htdocs/luci-static/resources/view/homeproxy/node.js:926 +#: htdocs/luci-static/resources/view/homeproxy/server.js:496 msgid "Enable TCP Brutal congestion control algorithm" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1111 -#: htdocs/luci-static/resources/view/homeproxy/server.js:714 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1119 +#: htdocs/luci-static/resources/view/homeproxy/server.js:777 msgid "Enable UDP fragmentation." msgstr "" @@ -665,88 +666,88 @@ msgstr "" msgid "Enable endpoint-independent NAT" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:912 -#: htdocs/luci-static/resources/view/homeproxy/server.js:426 +#: htdocs/luci-static/resources/view/homeproxy/node.js:920 +#: htdocs/luci-static/resources/view/homeproxy/server.js:489 msgid "Enable padding" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:703 +#: htdocs/luci-static/resources/view/homeproxy/server.js:766 msgid "Enable tcp fast open for listener." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1116 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1124 msgid "" "Enable the SUoT protocol, requires server support. Conflict with multiplex." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:540 -#: htdocs/luci-static/resources/view/homeproxy/node.js:677 -#: htdocs/luci-static/resources/view/homeproxy/server.js:256 +#: htdocs/luci-static/resources/view/homeproxy/node.js:548 +#: htdocs/luci-static/resources/view/homeproxy/node.js:685 +#: htdocs/luci-static/resources/view/homeproxy/server.js:308 msgid "Encrypt method" msgstr "" -#: htdocs/luci-static/resources/homeproxy.js:206 -#: htdocs/luci-static/resources/homeproxy.js:240 -#: htdocs/luci-static/resources/homeproxy.js:248 -#: htdocs/luci-static/resources/homeproxy.js:257 -#: htdocs/luci-static/resources/homeproxy.js:266 -#: htdocs/luci-static/resources/homeproxy.js:268 +#: htdocs/luci-static/resources/homeproxy.js:221 +#: htdocs/luci-static/resources/homeproxy.js:255 +#: htdocs/luci-static/resources/homeproxy.js:263 +#: htdocs/luci-static/resources/homeproxy.js:272 +#: htdocs/luci-static/resources/homeproxy.js:281 +#: htdocs/luci-static/resources/homeproxy.js:283 #: htdocs/luci-static/resources/view/homeproxy/client.js:75 #: htdocs/luci-static/resources/view/homeproxy/client.js:176 #: htdocs/luci-static/resources/view/homeproxy/client.js:178 #: htdocs/luci-static/resources/view/homeproxy/client.js:206 #: htdocs/luci-static/resources/view/homeproxy/client.js:244 #: htdocs/luci-static/resources/view/homeproxy/client.js:249 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1015 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1020 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1023 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1162 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1191 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1024 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1029 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1032 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1171 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1200 #: htdocs/luci-static/resources/view/homeproxy/node.js:452 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1074 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1234 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1294 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1297 -#: htdocs/luci-static/resources/view/homeproxy/server.js:159 -#: htdocs/luci-static/resources/view/homeproxy/server.js:539 -#: htdocs/luci-static/resources/view/homeproxy/server.js:541 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1082 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1242 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1302 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1305 +#: htdocs/luci-static/resources/view/homeproxy/server.js:211 +#: htdocs/luci-static/resources/view/homeproxy/server.js:602 +#: htdocs/luci-static/resources/view/homeproxy/server.js:604 msgid "Expecting: %s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:611 +#: htdocs/luci-static/resources/view/homeproxy/server.js:674 msgid "External Account Binding" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:623 +#: htdocs/luci-static/resources/view/homeproxy/server.js:686 msgid "External account MAC key" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:618 +#: htdocs/luci-static/resources/view/homeproxy/server.js:681 msgid "External account key ID" msgstr "" -#: htdocs/luci-static/resources/homeproxy.js:230 +#: htdocs/luci-static/resources/homeproxy.js:245 msgid "Failed to upload %s, error: %s." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1312 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1320 msgid "Filter keywords" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1304 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1312 msgid "Filter nodes" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:665 -#: htdocs/luci-static/resources/view/homeproxy/server.js:303 +#: htdocs/luci-static/resources/view/homeproxy/node.js:673 +#: htdocs/luci-static/resources/view/homeproxy/server.js:366 msgid "Flow" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:998 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1007 msgid "Format" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:773 +#: htdocs/luci-static/resources/view/homeproxy/node.js:781 msgid "GET" msgstr "" @@ -758,20 +759,27 @@ msgstr "" msgid "GFWList" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1104 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1113 msgid "Gaming mode IPv4 IP-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1106 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1115 msgid "Gaming mode IPv6 IP-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1109 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1118 msgid "Gaming mode MAC-s" msgstr "" +#: htdocs/luci-static/resources/view/homeproxy/server.js:188 +#: htdocs/luci-static/resources/view/homeproxy/server.js:190 +#: htdocs/luci-static/resources/view/homeproxy/server.js:325 +#: htdocs/luci-static/resources/view/homeproxy/server.js:327 +msgid "Generate" +msgstr "" + #: htdocs/luci-static/resources/view/homeproxy/client.js:282 -#: htdocs/luci-static/resources/view/homeproxy/node.js:827 +#: htdocs/luci-static/resources/view/homeproxy/node.js:835 msgid "Generic segmentation offload" msgstr "" @@ -779,23 +787,23 @@ msgstr "" msgid "Global" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:688 +#: htdocs/luci-static/resources/view/homeproxy/node.js:696 msgid "Global padding" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1111 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1120 msgid "Global proxy IPv4 IP-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1114 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1123 msgid "Global proxy IPv6 IP-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1117 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1126 msgid "Global proxy MAC-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:73 +#: htdocs/luci-static/resources/view/homeproxy/server.js:114 msgid "Global settings" msgstr "" @@ -811,36 +819,36 @@ msgstr "" msgid "Grant access to homeproxy configuration" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:473 -#: htdocs/luci-static/resources/view/homeproxy/client.js:813 +#: htdocs/luci-static/resources/view/homeproxy/client.js:482 +#: htdocs/luci-static/resources/view/homeproxy/client.js:822 #: htdocs/luci-static/resources/view/homeproxy/node.js:395 -#: htdocs/luci-static/resources/view/homeproxy/node.js:707 -#: htdocs/luci-static/resources/view/homeproxy/server.js:104 -#: htdocs/luci-static/resources/view/homeproxy/server.js:321 +#: htdocs/luci-static/resources/view/homeproxy/node.js:715 +#: htdocs/luci-static/resources/view/homeproxy/server.js:145 +#: htdocs/luci-static/resources/view/homeproxy/server.js:384 msgid "HTTP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:250 +#: htdocs/luci-static/resources/view/homeproxy/server.js:302 msgid "" "HTTP3 server behavior when authentication fails.
A 404 page will be " "returned if empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:708 -#: htdocs/luci-static/resources/view/homeproxy/server.js:322 +#: htdocs/luci-static/resources/view/homeproxy/node.js:716 +#: htdocs/luci-static/resources/view/homeproxy/server.js:385 msgid "HTTPUpgrade" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:651 +#: htdocs/luci-static/resources/view/homeproxy/server.js:714 msgid "Handshake server address" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:657 +#: htdocs/luci-static/resources/view/homeproxy/server.js:720 msgid "Handshake server port" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:656 -#: htdocs/luci-static/resources/view/homeproxy/server.js:294 +#: htdocs/luci-static/resources/view/homeproxy/node.js:664 +#: htdocs/luci-static/resources/view/homeproxy/server.js:357 msgid "Heartbeat interval" msgstr "" @@ -852,62 +860,62 @@ msgstr "" msgid "HomeProxy" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:37 -#: htdocs/luci-static/resources/view/homeproxy/server.js:39 -#: htdocs/luci-static/resources/view/homeproxy/server.js:56 +#: htdocs/luci-static/resources/view/homeproxy/server.js:38 +#: htdocs/luci-static/resources/view/homeproxy/server.js:40 +#: htdocs/luci-static/resources/view/homeproxy/server.js:97 msgid "HomeProxy Server" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:757 -#: htdocs/luci-static/resources/view/homeproxy/node.js:762 -#: htdocs/luci-static/resources/view/homeproxy/node.js:796 -#: htdocs/luci-static/resources/view/homeproxy/server.js:355 -#: htdocs/luci-static/resources/view/homeproxy/server.js:360 -#: htdocs/luci-static/resources/view/homeproxy/server.js:391 +#: htdocs/luci-static/resources/view/homeproxy/node.js:765 +#: htdocs/luci-static/resources/view/homeproxy/node.js:770 +#: htdocs/luci-static/resources/view/homeproxy/node.js:804 +#: htdocs/luci-static/resources/view/homeproxy/server.js:418 +#: htdocs/luci-static/resources/view/homeproxy/server.js:423 +#: htdocs/luci-static/resources/view/homeproxy/server.js:454 msgid "Host" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:436 -#: htdocs/luci-static/resources/view/homeproxy/client.js:768 +#: htdocs/luci-static/resources/view/homeproxy/client.js:445 +#: htdocs/luci-static/resources/view/homeproxy/client.js:777 msgid "Host fields" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:597 +#: htdocs/luci-static/resources/view/homeproxy/node.js:605 msgid "Host key" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:602 +#: htdocs/luci-static/resources/view/homeproxy/node.js:610 msgid "Host key algorithms" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:281 +#: htdocs/luci-static/resources/view/homeproxy/server.js:344 msgid "" "How long the server should wait for the client to send the authentication " "command (in seconds)." msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:397 -#: htdocs/luci-static/resources/view/homeproxy/server.js:106 +#: htdocs/luci-static/resources/view/homeproxy/server.js:147 msgid "Hysteria" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:398 -#: htdocs/luci-static/resources/view/homeproxy/server.js:107 +#: htdocs/luci-static/resources/view/homeproxy/server.js:148 msgid "Hysteria2" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:511 -#: htdocs/luci-static/resources/view/homeproxy/client.js:856 +#: htdocs/luci-static/resources/view/homeproxy/client.js:520 +#: htdocs/luci-static/resources/view/homeproxy/client.js:865 msgid "IP CIDR" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:464 -#: htdocs/luci-static/resources/view/homeproxy/client.js:796 +#: htdocs/luci-static/resources/view/homeproxy/client.js:473 +#: htdocs/luci-static/resources/view/homeproxy/client.js:805 msgid "IP version" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:466 -#: htdocs/luci-static/resources/view/homeproxy/client.js:797 +#: htdocs/luci-static/resources/view/homeproxy/client.js:475 +#: htdocs/luci-static/resources/view/homeproxy/client.js:806 msgid "IPv4" msgstr "" @@ -915,8 +923,8 @@ msgstr "" msgid "IPv4 only" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:467 -#: htdocs/luci-static/resources/view/homeproxy/client.js:798 +#: htdocs/luci-static/resources/view/homeproxy/client.js:476 +#: htdocs/luci-static/resources/view/homeproxy/client.js:807 msgid "IPv6" msgstr "" @@ -928,77 +936,82 @@ msgstr "" msgid "IPv6 support" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:778 -#: htdocs/luci-static/resources/view/homeproxy/server.js:374 +#: htdocs/luci-static/resources/view/homeproxy/node.js:786 +#: htdocs/luci-static/resources/view/homeproxy/server.js:437 msgid "Idle timeout" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:749 +#: htdocs/luci-static/resources/view/homeproxy/node.js:757 msgid "" "If enabled, the client transport sends keepalive pings even with no active " "connections." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:724 +#: htdocs/luci-static/resources/view/homeproxy/server.js:794 msgid "" "If set, the requested domain name will be resolved to IP before routing." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:377 +#: htdocs/luci-static/resources/view/homeproxy/client.js:386 msgid "" "If set, the server domain name will be resolved to IP before connecting.
dns.strategy will be used if empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:734 -#: htdocs/luci-static/resources/view/homeproxy/server.js:343 +#: htdocs/luci-static/resources/view/homeproxy/node.js:742 +#: htdocs/luci-static/resources/view/homeproxy/server.js:406 msgid "" "If the transport doesn't see any activity after a duration of this time (in " "seconds), it pings the client to check if the connection is still active." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1008 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1016 msgid "" "If you have the root certificate, use this option instead of allowing " "insecure." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:243 +#: htdocs/luci-static/resources/view/homeproxy/server.js:295 msgid "Ignore client bandwidth" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1217 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1225 msgid "Import" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1164 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1243 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1245 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1172 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1251 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1253 msgid "Import share links" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:636 +#: htdocs/luci-static/resources/view/homeproxy/client.js:317 +#: htdocs/luci-static/resources/view/homeproxy/server.js:783 +msgid "In seconds. 300 is used by default." +msgstr "" + +#: htdocs/luci-static/resources/view/homeproxy/client.js:645 msgid "Independent cache per server" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1063 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1072 msgid "Interface Control" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:657 -#: htdocs/luci-static/resources/view/homeproxy/server.js:295 +#: htdocs/luci-static/resources/view/homeproxy/node.js:665 +#: htdocs/luci-static/resources/view/homeproxy/server.js:358 msgid "" "Interval for sending heartbeat packets for keeping the connection alive (in " "seconds)." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:576 -#: htdocs/luci-static/resources/view/homeproxy/client.js:909 +#: htdocs/luci-static/resources/view/homeproxy/client.js:585 +#: htdocs/luci-static/resources/view/homeproxy/client.js:918 msgid "Invert" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:577 -#: htdocs/luci-static/resources/view/homeproxy/client.js:910 +#: htdocs/luci-static/resources/view/homeproxy/client.js:586 +#: htdocs/luci-static/resources/view/homeproxy/client.js:919 msgid "Invert match result." msgstr "" @@ -1006,26 +1019,26 @@ msgstr "" msgid "It MUST support TCP query." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:682 +#: htdocs/luci-static/resources/view/homeproxy/server.js:745 msgid "Key path" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1077 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1086 msgid "LAN IP Policy" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:359 -#: htdocs/luci-static/resources/view/homeproxy/client.js:441 -#: htdocs/luci-static/resources/view/homeproxy/client.js:672 -#: htdocs/luci-static/resources/view/homeproxy/client.js:773 -#: htdocs/luci-static/resources/view/homeproxy/client.js:982 +#: htdocs/luci-static/resources/view/homeproxy/client.js:368 +#: htdocs/luci-static/resources/view/homeproxy/client.js:450 +#: htdocs/luci-static/resources/view/homeproxy/client.js:681 +#: htdocs/luci-static/resources/view/homeproxy/client.js:782 +#: htdocs/luci-static/resources/view/homeproxy/client.js:991 #: htdocs/luci-static/resources/view/homeproxy/node.js:388 -#: htdocs/luci-static/resources/view/homeproxy/server.js:92 +#: htdocs/luci-static/resources/view/homeproxy/server.js:133 msgid "Label" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:672 -#: htdocs/luci-static/resources/view/homeproxy/server.js:310 +#: htdocs/luci-static/resources/view/homeproxy/node.js:680 +#: htdocs/luci-static/resources/view/homeproxy/server.js:373 msgid "" "Legacy protocol support (VMess MD5 Authentication) is provided for " "compatibility purposes only, use of alterId > 1 is not recommended." @@ -1035,29 +1048,29 @@ msgstr "" msgid "Less compatibility and sometimes better performance." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:550 +#: htdocs/luci-static/resources/view/homeproxy/server.js:613 msgid "Let's Encrypt" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:834 +#: htdocs/luci-static/resources/view/homeproxy/node.js:842 msgid "" "List of IP (v4 or v6) addresses prefixes to be assigned to the interface." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:970 -#: htdocs/luci-static/resources/view/homeproxy/server.js:486 +#: htdocs/luci-static/resources/view/homeproxy/node.js:978 +#: htdocs/luci-static/resources/view/homeproxy/server.js:549 msgid "List of supported application level protocols, in order of preference." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:119 +#: htdocs/luci-static/resources/view/homeproxy/server.js:160 msgid "Listen address" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1065 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1074 msgid "Listen interfaces" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:124 +#: htdocs/luci-static/resources/view/homeproxy/server.js:165 msgid "Listen port" msgstr "" @@ -1065,11 +1078,11 @@ msgstr "" msgid "Loading" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:993 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1002 msgid "Local" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:833 +#: htdocs/luci-static/resources/view/homeproxy/node.js:841 msgid "Local address" msgstr "" @@ -1081,7 +1094,7 @@ msgstr "" msgid "Log is empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:867 +#: htdocs/luci-static/resources/view/homeproxy/node.js:875 msgid "MTU" msgstr "" @@ -1093,182 +1106,182 @@ msgstr "" msgid "Main node" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:905 +#: htdocs/luci-static/resources/view/homeproxy/client.js:914 msgid "Make ipcidr in rule sets match the source IP." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:571 +#: htdocs/luci-static/resources/view/homeproxy/client.js:580 msgid "Make IP CIDR in rule set used to match the source IP." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:637 +#: htdocs/luci-static/resources/view/homeproxy/client.js:646 msgid "" "Make each DNS server's cache independent for special purposes. If enabled, " "will slightly degrade performance." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:249 +#: htdocs/luci-static/resources/view/homeproxy/server.js:301 msgid "Masquerade" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:915 +#: htdocs/luci-static/resources/view/homeproxy/client.js:924 msgid "Match .outbounds[].server domains." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:857 +#: htdocs/luci-static/resources/view/homeproxy/client.js:866 msgid "Match IP CIDR with query response." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:512 +#: htdocs/luci-static/resources/view/homeproxy/client.js:521 msgid "Match IP CIDR." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:489 -#: htdocs/luci-static/resources/view/homeproxy/client.js:825 +#: htdocs/luci-static/resources/view/homeproxy/client.js:498 +#: htdocs/luci-static/resources/view/homeproxy/client.js:834 msgid "Match domain suffix." msgstr "" +#: htdocs/luci-static/resources/view/homeproxy/client.js:502 +#: htdocs/luci-static/resources/view/homeproxy/client.js:838 +msgid "Match domain using keyword." +msgstr "" + +#: htdocs/luci-static/resources/view/homeproxy/client.js:506 +#: htdocs/luci-static/resources/view/homeproxy/client.js:842 +msgid "Match domain using regular expression." +msgstr "" + #: htdocs/luci-static/resources/view/homeproxy/client.js:493 #: htdocs/luci-static/resources/view/homeproxy/client.js:829 -msgid "Match domain using keyword." -msgstr "" - -#: htdocs/luci-static/resources/view/homeproxy/client.js:497 -#: htdocs/luci-static/resources/view/homeproxy/client.js:833 -msgid "Match domain using regular expression." -msgstr "" - -#: htdocs/luci-static/resources/view/homeproxy/client.js:484 -#: htdocs/luci-static/resources/view/homeproxy/client.js:820 msgid "Match full domain." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:538 -#: htdocs/luci-static/resources/view/homeproxy/client.js:842 +#: htdocs/luci-static/resources/view/homeproxy/client.js:547 +#: htdocs/luci-static/resources/view/homeproxy/client.js:851 msgid "Match port range. Format as START:/:END/START:END." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:533 -#: htdocs/luci-static/resources/view/homeproxy/client.js:837 +#: htdocs/luci-static/resources/view/homeproxy/client.js:542 +#: htdocs/luci-static/resources/view/homeproxy/client.js:846 msgid "Match port." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:862 +#: htdocs/luci-static/resources/view/homeproxy/client.js:871 msgid "Match private IP with query response." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:517 +#: htdocs/luci-static/resources/view/homeproxy/client.js:526 msgid "Match private IP." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:506 -#: htdocs/luci-static/resources/view/homeproxy/client.js:852 +#: htdocs/luci-static/resources/view/homeproxy/client.js:515 +#: htdocs/luci-static/resources/view/homeproxy/client.js:861 msgid "Match private source IP." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:543 -#: htdocs/luci-static/resources/view/homeproxy/client.js:877 +#: htdocs/luci-static/resources/view/homeproxy/client.js:552 +#: htdocs/luci-static/resources/view/homeproxy/client.js:886 msgid "Match process name." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:547 -#: htdocs/luci-static/resources/view/homeproxy/client.js:881 +#: htdocs/luci-static/resources/view/homeproxy/client.js:556 +#: htdocs/luci-static/resources/view/homeproxy/client.js:890 msgid "Match process path." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:803 +#: htdocs/luci-static/resources/view/homeproxy/client.js:812 msgid "Match query type." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:555 -#: htdocs/luci-static/resources/view/homeproxy/client.js:889 +#: htdocs/luci-static/resources/view/homeproxy/client.js:564 +#: htdocs/luci-static/resources/view/homeproxy/client.js:898 msgid "Match rule set." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:501 -#: htdocs/luci-static/resources/view/homeproxy/client.js:847 +#: htdocs/luci-static/resources/view/homeproxy/client.js:510 +#: htdocs/luci-static/resources/view/homeproxy/client.js:856 msgid "Match source IP CIDR." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:570 +#: htdocs/luci-static/resources/view/homeproxy/client.js:579 msgid "Match source IP via rule set" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:528 -#: htdocs/luci-static/resources/view/homeproxy/client.js:872 +#: htdocs/luci-static/resources/view/homeproxy/client.js:537 +#: htdocs/luci-static/resources/view/homeproxy/client.js:881 msgid "Match source port range. Format as START:/:END/START:END." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:523 -#: htdocs/luci-static/resources/view/homeproxy/client.js:867 +#: htdocs/luci-static/resources/view/homeproxy/client.js:532 +#: htdocs/luci-static/resources/view/homeproxy/client.js:876 msgid "Match source port." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:551 -#: htdocs/luci-static/resources/view/homeproxy/client.js:885 +#: htdocs/luci-static/resources/view/homeproxy/client.js:560 +#: htdocs/luci-static/resources/view/homeproxy/client.js:894 msgid "Match user name." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:506 -#: htdocs/luci-static/resources/view/homeproxy/server.js:179 +#: htdocs/luci-static/resources/view/homeproxy/node.js:514 +#: htdocs/luci-static/resources/view/homeproxy/server.js:231 msgid "Max download speed" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:507 -#: htdocs/luci-static/resources/view/homeproxy/server.js:180 +#: htdocs/luci-static/resources/view/homeproxy/node.js:515 +#: htdocs/luci-static/resources/view/homeproxy/server.js:232 msgid "Max download speed in Mbps." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:646 +#: htdocs/luci-static/resources/view/homeproxy/server.js:709 msgid "Max time difference" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:513 -#: htdocs/luci-static/resources/view/homeproxy/server.js:186 +#: htdocs/luci-static/resources/view/homeproxy/node.js:521 +#: htdocs/luci-static/resources/view/homeproxy/server.js:238 msgid "Max upload speed" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:514 -#: htdocs/luci-static/resources/view/homeproxy/server.js:187 +#: htdocs/luci-static/resources/view/homeproxy/node.js:522 +#: htdocs/luci-static/resources/view/homeproxy/server.js:239 msgid "Max upload speed in Mbps." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:991 -#: htdocs/luci-static/resources/view/homeproxy/server.js:498 +#: htdocs/luci-static/resources/view/homeproxy/node.js:999 +#: htdocs/luci-static/resources/view/homeproxy/server.js:561 msgid "Maximum TLS version" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:894 +#: htdocs/luci-static/resources/view/homeproxy/node.js:902 msgid "Maximum connections" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:906 +#: htdocs/luci-static/resources/view/homeproxy/node.js:914 msgid "" "Maximum multiplexed streams in a connection before opening a new connection." "
Conflict with Maximum connections and Minimum " "streams." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:905 +#: htdocs/luci-static/resources/view/homeproxy/node.js:913 msgid "Maximum streams" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:772 -#: htdocs/luci-static/resources/view/homeproxy/server.js:370 +#: htdocs/luci-static/resources/view/homeproxy/node.js:780 +#: htdocs/luci-static/resources/view/homeproxy/server.js:433 msgid "Method" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:983 -#: htdocs/luci-static/resources/view/homeproxy/server.js:490 +#: htdocs/luci-static/resources/view/homeproxy/node.js:991 +#: htdocs/luci-static/resources/view/homeproxy/server.js:553 msgid "Minimum TLS version" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:900 +#: htdocs/luci-static/resources/view/homeproxy/node.js:908 msgid "" "Minimum multiplexed streams in a connection before opening a new connection." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:899 +#: htdocs/luci-static/resources/view/homeproxy/node.js:907 msgid "Minimum streams" msgstr "" @@ -1280,77 +1293,77 @@ msgstr "" msgid "Mixed system TCP stack and gVisor UDP stack." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:451 -#: htdocs/luci-static/resources/view/homeproxy/client.js:783 +#: htdocs/luci-static/resources/view/homeproxy/client.js:460 +#: htdocs/luci-static/resources/view/homeproxy/client.js:792 msgid "Mode" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1106 -#: htdocs/luci-static/resources/view/homeproxy/server.js:708 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1114 +#: htdocs/luci-static/resources/view/homeproxy/server.js:771 msgid "MultiPath TCP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:876 -#: htdocs/luci-static/resources/view/homeproxy/server.js:418 +#: htdocs/luci-static/resources/view/homeproxy/node.js:884 +#: htdocs/luci-static/resources/view/homeproxy/server.js:481 msgid "Multiplex" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:885 +#: htdocs/luci-static/resources/view/homeproxy/node.js:893 msgid "Multiplex protocol." msgstr "" #: htdocs/luci-static/resources/view/homeproxy/client.js:57 -#: htdocs/luci-static/resources/view/homeproxy/server.js:39 +#: htdocs/luci-static/resources/view/homeproxy/server.js:40 msgid "NOT RUNNING" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1331 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1339 msgid "NOTE: Save current settings before updating subscriptions." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:638 +#: htdocs/luci-static/resources/view/homeproxy/node.js:646 msgid "Native" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:108 +#: htdocs/luci-static/resources/view/homeproxy/server.js:149 msgid "NaïveProxy" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:478 -#: htdocs/luci-static/resources/view/homeproxy/client.js:806 -#: htdocs/luci-static/resources/view/homeproxy/server.js:729 +#: htdocs/luci-static/resources/view/homeproxy/client.js:487 +#: htdocs/luci-static/resources/view/homeproxy/client.js:815 +#: htdocs/luci-static/resources/view/homeproxy/server.js:799 msgid "Network" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:628 +#: htdocs/luci-static/resources/view/homeproxy/node.js:636 msgid "New Reno" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:704 -#: htdocs/luci-static/resources/view/homeproxy/node.js:721 -#: htdocs/luci-static/resources/view/homeproxy/server.js:318 -#: htdocs/luci-static/resources/view/homeproxy/server.js:335 +#: htdocs/luci-static/resources/view/homeproxy/node.js:712 +#: htdocs/luci-static/resources/view/homeproxy/node.js:729 +#: htdocs/luci-static/resources/view/homeproxy/server.js:381 +#: htdocs/luci-static/resources/view/homeproxy/server.js:398 msgid "No TCP transport, plain HTTP is merged into the HTTP transport." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:719 -#: htdocs/luci-static/resources/view/homeproxy/server.js:333 +#: htdocs/luci-static/resources/view/homeproxy/node.js:727 +#: htdocs/luci-static/resources/view/homeproxy/server.js:396 msgid "No additional encryption support: It's basically duplicate encryption." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1347 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1355 msgid "No subscription available" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1372 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1380 msgid "No subscription node" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1203 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1211 msgid "No valid share link found." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:369 +#: htdocs/luci-static/resources/view/homeproxy/client.js:378 #: htdocs/luci-static/resources/view/homeproxy/node.js:363 msgid "Node" msgstr "" @@ -1359,29 +1372,29 @@ msgstr "" msgid "Node Settings" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1153 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1161 msgid "Nodes" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:692 -#: htdocs/luci-static/resources/view/homeproxy/node.js:666 -#: htdocs/luci-static/resources/view/homeproxy/node.js:705 -#: htdocs/luci-static/resources/view/homeproxy/server.js:304 -#: htdocs/luci-static/resources/view/homeproxy/server.js:319 +#: htdocs/luci-static/resources/view/homeproxy/client.js:701 +#: htdocs/luci-static/resources/view/homeproxy/node.js:674 +#: htdocs/luci-static/resources/view/homeproxy/node.js:713 +#: htdocs/luci-static/resources/view/homeproxy/server.js:367 +#: htdocs/luci-static/resources/view/homeproxy/server.js:382 msgid "None" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:501 -#: htdocs/luci-static/resources/view/homeproxy/server.js:211 +#: htdocs/luci-static/resources/view/homeproxy/node.js:509 +#: htdocs/luci-static/resources/view/homeproxy/server.js:263 msgid "Obfuscate password" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:495 -#: htdocs/luci-static/resources/view/homeproxy/server.js:205 +#: htdocs/luci-static/resources/view/homeproxy/node.js:503 +#: htdocs/luci-static/resources/view/homeproxy/server.js:257 msgid "Obfuscate type" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1066 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1075 msgid "Only process traffic from specific interfaces. Leave empty for all." msgstr "" @@ -1389,20 +1402,20 @@ msgstr "" msgid "Only proxy mainland China" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:435 -#: htdocs/luci-static/resources/view/homeproxy/client.js:767 +#: htdocs/luci-static/resources/view/homeproxy/client.js:444 +#: htdocs/luci-static/resources/view/homeproxy/client.js:776 msgid "Other fields" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:389 -#: htdocs/luci-static/resources/view/homeproxy/client.js:581 -#: htdocs/luci-static/resources/view/homeproxy/client.js:729 -#: htdocs/luci-static/resources/view/homeproxy/client.js:914 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1033 +#: htdocs/luci-static/resources/view/homeproxy/client.js:398 +#: htdocs/luci-static/resources/view/homeproxy/client.js:590 +#: htdocs/luci-static/resources/view/homeproxy/client.js:738 +#: htdocs/luci-static/resources/view/homeproxy/client.js:923 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1042 msgid "Outbound" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:370 +#: htdocs/luci-static/resources/view/homeproxy/client.js:379 msgid "Outbound node" msgstr "" @@ -1410,8 +1423,8 @@ msgstr "" msgid "Override address" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:321 -#: htdocs/luci-static/resources/view/homeproxy/server.js:719 +#: htdocs/luci-static/resources/view/homeproxy/client.js:330 +#: htdocs/luci-static/resources/view/homeproxy/server.js:789 msgid "Override destination" msgstr "" @@ -1419,8 +1432,8 @@ msgstr "" msgid "Override port" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:322 -#: htdocs/luci-static/resources/view/homeproxy/server.js:720 +#: htdocs/luci-static/resources/view/homeproxy/client.js:331 +#: htdocs/luci-static/resources/view/homeproxy/server.js:790 msgid "Override the connection destination address with the sniffed domain." msgstr "" @@ -1432,28 +1445,28 @@ msgstr "" msgid "Override the connection destination port." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:774 +#: htdocs/luci-static/resources/view/homeproxy/node.js:782 msgid "PUT" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:817 +#: htdocs/luci-static/resources/view/homeproxy/node.js:825 msgid "Packet encoding" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:429 -#: htdocs/luci-static/resources/view/homeproxy/server.js:135 +#: htdocs/luci-static/resources/view/homeproxy/server.js:176 msgid "Password" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1004 -#: htdocs/luci-static/resources/view/homeproxy/node.js:767 -#: htdocs/luci-static/resources/view/homeproxy/node.js:800 -#: htdocs/luci-static/resources/view/homeproxy/server.js:365 -#: htdocs/luci-static/resources/view/homeproxy/server.js:395 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1013 +#: htdocs/luci-static/resources/view/homeproxy/node.js:775 +#: htdocs/luci-static/resources/view/homeproxy/node.js:808 +#: htdocs/luci-static/resources/view/homeproxy/server.js:428 +#: htdocs/luci-static/resources/view/homeproxy/server.js:458 msgid "Path" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:848 +#: htdocs/luci-static/resources/view/homeproxy/node.js:856 msgid "Peer pubkic key" msgstr "" @@ -1463,21 +1476,21 @@ msgid "" "it is not needed." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:786 -#: htdocs/luci-static/resources/view/homeproxy/server.js:382 +#: htdocs/luci-static/resources/view/homeproxy/node.js:794 +#: htdocs/luci-static/resources/view/homeproxy/server.js:445 msgid "Ping timeout" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:558 +#: htdocs/luci-static/resources/view/homeproxy/node.js:566 msgid "Plugin" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:565 +#: htdocs/luci-static/resources/view/homeproxy/node.js:573 msgid "Plugin opts" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:532 -#: htdocs/luci-static/resources/view/homeproxy/client.js:836 +#: htdocs/luci-static/resources/view/homeproxy/client.js:541 +#: htdocs/luci-static/resources/view/homeproxy/client.js:845 #: htdocs/luci-static/resources/view/homeproxy/node.js:418 msgid "Port" msgstr "" @@ -1486,17 +1499,17 @@ msgstr "" msgid "Port %s alrealy exists!" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:437 -#: htdocs/luci-static/resources/view/homeproxy/client.js:769 +#: htdocs/luci-static/resources/view/homeproxy/client.js:446 +#: htdocs/luci-static/resources/view/homeproxy/client.js:778 msgid "Port fields" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:537 -#: htdocs/luci-static/resources/view/homeproxy/client.js:841 +#: htdocs/luci-static/resources/view/homeproxy/client.js:546 +#: htdocs/luci-static/resources/view/homeproxy/client.js:850 msgid "Port range" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:855 +#: htdocs/luci-static/resources/view/homeproxy/node.js:863 msgid "Pre-shared key" msgstr "" @@ -1508,80 +1521,80 @@ msgstr "" msgid "Prefer IPv6" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:516 -#: htdocs/luci-static/resources/view/homeproxy/client.js:861 +#: htdocs/luci-static/resources/view/homeproxy/client.js:525 +#: htdocs/luci-static/resources/view/homeproxy/client.js:870 msgid "Private IP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:606 -#: htdocs/luci-static/resources/view/homeproxy/node.js:840 +#: htdocs/luci-static/resources/view/homeproxy/node.js:614 +#: htdocs/luci-static/resources/view/homeproxy/node.js:848 msgid "Private key" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:611 +#: htdocs/luci-static/resources/view/homeproxy/node.js:619 msgid "Private key passphrase" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:505 -#: htdocs/luci-static/resources/view/homeproxy/client.js:851 +#: htdocs/luci-static/resources/view/homeproxy/client.js:514 +#: htdocs/luci-static/resources/view/homeproxy/client.js:860 msgid "Private source IP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:542 -#: htdocs/luci-static/resources/view/homeproxy/client.js:876 +#: htdocs/luci-static/resources/view/homeproxy/client.js:551 +#: htdocs/luci-static/resources/view/homeproxy/client.js:885 msgid "Process name" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:546 -#: htdocs/luci-static/resources/view/homeproxy/client.js:880 +#: htdocs/luci-static/resources/view/homeproxy/client.js:555 +#: htdocs/luci-static/resources/view/homeproxy/client.js:889 msgid "Process path" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:471 -#: htdocs/luci-static/resources/view/homeproxy/client.js:811 -#: htdocs/luci-static/resources/view/homeproxy/node.js:472 -#: htdocs/luci-static/resources/view/homeproxy/node.js:884 -#: htdocs/luci-static/resources/view/homeproxy/server.js:168 +#: htdocs/luci-static/resources/view/homeproxy/client.js:480 +#: htdocs/luci-static/resources/view/homeproxy/client.js:820 +#: htdocs/luci-static/resources/view/homeproxy/node.js:480 +#: htdocs/luci-static/resources/view/homeproxy/node.js:892 +#: htdocs/luci-static/resources/view/homeproxy/server.js:220 msgid "Protocol" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:696 +#: htdocs/luci-static/resources/view/homeproxy/node.js:704 msgid "Protocol parameter. Enable length block encryption." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:689 +#: htdocs/luci-static/resources/view/homeproxy/node.js:697 msgid "" "Protocol parameter. Will waste traffic randomly if enabled (enabled by " "default in v2ray and cannot be disabled)." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1140 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1149 msgid "Proxy Domain List" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1095 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1124 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1104 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1133 msgid "Proxy IPv4 IP-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1098 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1127 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1107 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1136 msgid "Proxy IPv6 IP-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1101 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1110 msgid "Proxy MAC-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1082 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1091 msgid "Proxy all except listed" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1079 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1088 msgid "Proxy filter mode" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1081 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1090 msgid "Proxy listed only" msgstr "" @@ -1589,73 +1602,77 @@ msgstr "" msgid "Proxy mode" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:475 -#: htdocs/luci-static/resources/view/homeproxy/client.js:815 -#: htdocs/luci-static/resources/view/homeproxy/node.js:639 -#: htdocs/luci-static/resources/view/homeproxy/node.js:709 -#: htdocs/luci-static/resources/view/homeproxy/server.js:323 +#: htdocs/luci-static/resources/view/homeproxy/node.js:471 +msgid "Proxy protocol" +msgstr "" + +#: htdocs/luci-static/resources/view/homeproxy/client.js:484 +#: htdocs/luci-static/resources/view/homeproxy/client.js:824 +#: htdocs/luci-static/resources/view/homeproxy/node.js:647 +#: htdocs/luci-static/resources/view/homeproxy/node.js:717 +#: htdocs/luci-static/resources/view/homeproxy/server.js:386 msgid "QUIC" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:626 -#: htdocs/luci-static/resources/view/homeproxy/server.js:272 +#: htdocs/luci-static/resources/view/homeproxy/node.js:634 +#: htdocs/luci-static/resources/view/homeproxy/server.js:335 msgid "QUIC congestion control algorithm." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:526 -#: htdocs/luci-static/resources/view/homeproxy/server.js:223 +#: htdocs/luci-static/resources/view/homeproxy/node.js:534 +#: htdocs/luci-static/resources/view/homeproxy/server.js:275 msgid "QUIC connection receive window" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:230 +#: htdocs/luci-static/resources/view/homeproxy/server.js:282 msgid "QUIC maximum concurrent bidirectional streams" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:520 -#: htdocs/luci-static/resources/view/homeproxy/server.js:216 +#: htdocs/luci-static/resources/view/homeproxy/node.js:528 +#: htdocs/luci-static/resources/view/homeproxy/server.js:268 msgid "QUIC stream receive window" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:802 +#: htdocs/luci-static/resources/view/homeproxy/client.js:811 msgid "Query type" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:652 +#: htdocs/luci-static/resources/view/homeproxy/client.js:661 msgid "RDRC timeout" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1085 -#: htdocs/luci-static/resources/view/homeproxy/server.js:630 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1093 +#: htdocs/luci-static/resources/view/homeproxy/server.js:693 msgid "REALITY" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:636 +#: htdocs/luci-static/resources/view/homeproxy/server.js:699 msgid "REALITY private key" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1090 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1098 msgid "REALITY public key" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1095 -#: htdocs/luci-static/resources/view/homeproxy/server.js:641 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1103 +#: htdocs/luci-static/resources/view/homeproxy/server.js:704 msgid "REALITY short ID" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/client.js:55 -#: htdocs/luci-static/resources/view/homeproxy/server.js:37 +#: htdocs/luci-static/resources/view/homeproxy/server.js:38 msgid "RUNNING" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:593 +#: htdocs/luci-static/resources/view/homeproxy/node.js:601 msgid "Random version will be used if empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:414 +#: htdocs/luci-static/resources/view/homeproxy/client.js:423 msgid "Recursive outbound detected!" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:711 +#: htdocs/luci-static/resources/view/homeproxy/client.js:720 msgid "Recursive resolver detected!" msgstr "" @@ -1675,27 +1692,27 @@ msgstr "" msgid "Refresh every %s seconds." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:579 +#: htdocs/luci-static/resources/view/homeproxy/server.js:642 msgid "Region ID" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:994 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1003 msgid "Remote" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1369 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1377 msgid "Remove %s nodes" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1359 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1367 msgid "Remove all nodes from subscriptions" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:862 +#: htdocs/luci-static/resources/view/homeproxy/node.js:870 msgid "Reserved field bytes" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:724 +#: htdocs/luci-static/resources/view/homeproxy/client.js:733 msgid "Resolve strategy" msgstr "" @@ -1703,19 +1720,19 @@ msgstr "" msgid "Resources management" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:956 +#: htdocs/luci-static/resources/view/homeproxy/client.js:965 msgid "Rewrite TTL" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:957 +#: htdocs/luci-static/resources/view/homeproxy/client.js:966 msgid "Rewrite TTL in DNS responses." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:346 +#: htdocs/luci-static/resources/view/homeproxy/client.js:355 msgid "Routing Nodes" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:422 +#: htdocs/luci-static/resources/view/homeproxy/client.js:431 msgid "Routing Rules" msgstr "" @@ -1727,7 +1744,7 @@ msgstr "" msgid "Routing mode" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:355 +#: htdocs/luci-static/resources/view/homeproxy/client.js:364 msgid "Routing node" msgstr "" @@ -1735,32 +1752,32 @@ msgstr "" msgid "Routing ports" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:431 +#: htdocs/luci-static/resources/view/homeproxy/client.js:440 msgid "Routing rule" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:554 -#: htdocs/luci-static/resources/view/homeproxy/client.js:888 -#: htdocs/luci-static/resources/view/homeproxy/client.js:969 +#: htdocs/luci-static/resources/view/homeproxy/client.js:563 +#: htdocs/luci-static/resources/view/homeproxy/client.js:897 #: htdocs/luci-static/resources/view/homeproxy/client.js:978 +#: htdocs/luci-static/resources/view/homeproxy/client.js:987 msgid "Rule set" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:904 +#: htdocs/luci-static/resources/view/homeproxy/client.js:913 msgid "Rule set IP CIDR as source IP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1011 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1020 msgid "Rule set URL" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:438 -#: htdocs/luci-static/resources/view/homeproxy/client.js:770 +#: htdocs/luci-static/resources/view/homeproxy/client.js:447 +#: htdocs/luci-static/resources/view/homeproxy/client.js:779 msgid "SRC-IP fields" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:439 -#: htdocs/luci-static/resources/view/homeproxy/client.js:771 +#: htdocs/luci-static/resources/view/homeproxy/client.js:448 +#: htdocs/luci-static/resources/view/homeproxy/client.js:780 msgid "SRC-Port fields" msgstr "" @@ -1768,17 +1785,17 @@ msgstr "" msgid "SSH" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:476 -#: htdocs/luci-static/resources/view/homeproxy/client.js:817 +#: htdocs/luci-static/resources/view/homeproxy/client.js:485 +#: htdocs/luci-static/resources/view/homeproxy/client.js:826 msgid "STUN" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1122 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1130 msgid "SUoT version" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:497 -#: htdocs/luci-static/resources/view/homeproxy/server.js:207 +#: htdocs/luci-static/resources/view/homeproxy/node.js:505 +#: htdocs/luci-static/resources/view/homeproxy/server.js:259 msgid "Salamander" msgstr "" @@ -1786,16 +1803,16 @@ msgstr "" msgid "Same as main node" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1333 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1341 msgid "Save current settings" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1330 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1338 msgid "Save subscriptions settings" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:932 -#: htdocs/luci-static/resources/view/homeproxy/server.js:88 +#: htdocs/luci-static/resources/view/homeproxy/client.js:941 +#: htdocs/luci-static/resources/view/homeproxy/server.js:129 msgid "Server" msgstr "" @@ -1803,13 +1820,13 @@ msgstr "" msgid "Server Settings" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:528 +#: htdocs/luci-static/resources/view/homeproxy/server.js:591 msgid "" "Server name to use when choosing a certificate if the ClientHello's " "ServerName field is empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:83 +#: htdocs/luci-static/resources/view/homeproxy/server.js:124 msgid "Server settings" msgstr "" @@ -1821,64 +1838,64 @@ msgstr "" msgid "ShadowTLS" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:572 +#: htdocs/luci-static/resources/view/homeproxy/node.js:580 msgid "ShadowTLS version" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:400 -#: htdocs/luci-static/resources/view/homeproxy/server.js:110 +#: htdocs/luci-static/resources/view/homeproxy/server.js:151 msgid "Shadowsocks" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:472 -#: htdocs/luci-static/resources/view/homeproxy/client.js:812 +#: htdocs/luci-static/resources/view/homeproxy/client.js:481 +#: htdocs/luci-static/resources/view/homeproxy/client.js:821 msgid "" "Sniffed protocol, see Sniff for details." msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:402 -#: htdocs/luci-static/resources/view/homeproxy/server.js:111 +#: htdocs/luci-static/resources/view/homeproxy/server.js:152 msgid "Socks" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:582 +#: htdocs/luci-static/resources/view/homeproxy/node.js:590 msgid "Socks version" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:583 +#: htdocs/luci-static/resources/view/homeproxy/node.js:591 msgid "Socks4" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:584 +#: htdocs/luci-static/resources/view/homeproxy/node.js:592 msgid "Socks4A" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:585 +#: htdocs/luci-static/resources/view/homeproxy/node.js:593 msgid "Socks5" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:500 -#: htdocs/luci-static/resources/view/homeproxy/client.js:846 +#: htdocs/luci-static/resources/view/homeproxy/client.js:509 +#: htdocs/luci-static/resources/view/homeproxy/client.js:855 msgid "Source IP CIDR" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:999 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1008 msgid "Source file" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:522 -#: htdocs/luci-static/resources/view/homeproxy/client.js:866 +#: htdocs/luci-static/resources/view/homeproxy/client.js:531 +#: htdocs/luci-static/resources/view/homeproxy/client.js:875 msgid "Source port" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:527 -#: htdocs/luci-static/resources/view/homeproxy/client.js:871 +#: htdocs/luci-static/resources/view/homeproxy/client.js:536 +#: htdocs/luci-static/resources/view/homeproxy/client.js:880 msgid "Source port range" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:726 -#: htdocs/luci-static/resources/view/homeproxy/node.js:779 +#: htdocs/luci-static/resources/view/homeproxy/node.js:734 +#: htdocs/luci-static/resources/view/homeproxy/node.js:787 msgid "" "Specifies the period of time (in seconds) after which a health check will be " "performed using a ping frame if no frames have been received on the " @@ -1887,15 +1904,15 @@ msgid "" "will be executed every interval." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:340 -#: htdocs/luci-static/resources/view/homeproxy/server.js:375 +#: htdocs/luci-static/resources/view/homeproxy/server.js:403 +#: htdocs/luci-static/resources/view/homeproxy/server.js:438 msgid "" "Specifies the time (in seconds) until idle clients should be closed with a " "GOAWAY frame. PING frames are not considered as activity." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:730 -#: htdocs/luci-static/resources/view/homeproxy/node.js:787 +#: htdocs/luci-static/resources/view/homeproxy/node.js:738 +#: htdocs/luci-static/resources/view/homeproxy/node.js:795 msgid "" "Specifies the timeout duration (in seconds) after sending a PING frame, " "within which a response must be received.
If a response to the PING " @@ -1909,34 +1926,34 @@ msgid "" "commas." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:646 +#: htdocs/luci-static/resources/view/homeproxy/client.js:655 msgid "Store RDRC" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:647 +#: htdocs/luci-static/resources/view/homeproxy/client.js:656 msgid "" "Store rejected DNS response cache.
The check results of Address " "filter DNS rule items will be cached until expiration." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:486 -#: htdocs/luci-static/resources/view/homeproxy/server.js:196 +#: htdocs/luci-static/resources/view/homeproxy/node.js:494 +#: htdocs/luci-static/resources/view/homeproxy/server.js:248 msgid "String" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1258 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1266 msgid "Sub (%s)" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1287 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1295 msgid "Subscription URL-s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1269 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1277 msgid "Subscriptions" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1205 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1213 msgid "Successfully imported %s nodes of total %s." msgstr "" @@ -1944,8 +1961,8 @@ msgstr "" msgid "Successfully updated." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1165 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1288 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1173 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1296 msgid "" "Support Hysteria, Shadowsocks, Trojan, v2rayN (VMess), and XTLS (VLESS) " "online configuration delivery standard." @@ -1955,20 +1972,20 @@ msgstr "" msgid "System" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:617 -#: htdocs/luci-static/resources/view/homeproxy/client.js:694 -#: htdocs/luci-static/resources/view/homeproxy/client.js:939 +#: htdocs/luci-static/resources/view/homeproxy/client.js:626 +#: htdocs/luci-static/resources/view/homeproxy/client.js:703 +#: htdocs/luci-static/resources/view/homeproxy/client.js:948 msgid "System DNS" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:479 -#: htdocs/luci-static/resources/view/homeproxy/client.js:807 -#: htdocs/luci-static/resources/view/homeproxy/server.js:730 +#: htdocs/luci-static/resources/view/homeproxy/client.js:488 +#: htdocs/luci-static/resources/view/homeproxy/client.js:816 +#: htdocs/luci-static/resources/view/homeproxy/server.js:800 msgid "TCP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1102 -#: htdocs/luci-static/resources/view/homeproxy/server.js:702 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1110 +#: htdocs/luci-static/resources/view/homeproxy/server.js:765 msgid "TCP fast open" msgstr "" @@ -1980,51 +1997,51 @@ msgstr "" msgid "TCP/IP stack." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:474 -#: htdocs/luci-static/resources/view/homeproxy/client.js:814 -#: htdocs/luci-static/resources/view/homeproxy/node.js:937 -#: htdocs/luci-static/resources/view/homeproxy/server.js:453 +#: htdocs/luci-static/resources/view/homeproxy/client.js:483 +#: htdocs/luci-static/resources/view/homeproxy/client.js:823 +#: htdocs/luci-static/resources/view/homeproxy/node.js:945 +#: htdocs/luci-static/resources/view/homeproxy/server.js:516 msgid "TLS" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:969 -#: htdocs/luci-static/resources/view/homeproxy/server.js:485 +#: htdocs/luci-static/resources/view/homeproxy/node.js:977 +#: htdocs/luci-static/resources/view/homeproxy/server.js:548 msgid "TLS ALPN" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:964 -#: htdocs/luci-static/resources/view/homeproxy/server.js:480 +#: htdocs/luci-static/resources/view/homeproxy/node.js:972 +#: htdocs/luci-static/resources/view/homeproxy/server.js:543 msgid "TLS SNI" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:717 -#: htdocs/luci-static/resources/view/homeproxy/server.js:331 +#: htdocs/luci-static/resources/view/homeproxy/node.js:725 +#: htdocs/luci-static/resources/view/homeproxy/server.js:394 msgid "TLS is not enforced. If TLS is not configured, plain HTTP 1.1 is used." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:687 +#: htdocs/luci-static/resources/view/homeproxy/client.js:696 msgid "" "Tag of a another server to resolve the domain name in the address. Required " "if address contains domain." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:730 +#: htdocs/luci-static/resources/view/homeproxy/client.js:739 msgid "Tag of an outbound for connecting to the dns server." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1034 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1043 msgid "Tag of the outbound to download rule set." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:933 +#: htdocs/luci-static/resources/view/homeproxy/client.js:942 msgid "Tag of the target dns server." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:582 +#: htdocs/luci-static/resources/view/homeproxy/client.js:591 msgid "Tag of the target outbound." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:244 +#: htdocs/luci-static/resources/view/homeproxy/server.js:296 msgid "" "Tell the client to use the BBR flow control algorithm instead of Hysteria CC." msgstr "" @@ -2034,41 +2051,41 @@ msgstr "" msgid "Tencent Public DNS (119.29.29.29)" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:549 +#: htdocs/luci-static/resources/view/homeproxy/server.js:612 msgid "The ACME CA provider to use." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:607 +#: htdocs/luci-static/resources/view/homeproxy/client.js:616 msgid "The DNS strategy for resolving the domain name in the address." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:527 -#: htdocs/luci-static/resources/view/homeproxy/server.js:224 +#: htdocs/luci-static/resources/view/homeproxy/node.js:535 +#: htdocs/luci-static/resources/view/homeproxy/server.js:276 msgid "The QUIC connection-level flow control window for receiving data." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:521 -#: htdocs/luci-static/resources/view/homeproxy/server.js:217 +#: htdocs/luci-static/resources/view/homeproxy/node.js:529 +#: htdocs/luci-static/resources/view/homeproxy/server.js:269 msgid "The QUIC stream-level flow control window for receiving data." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:683 +#: htdocs/luci-static/resources/view/homeproxy/client.js:692 msgid "The address of the dns server. Support UDP, TCP, DoT, DoH and RCode." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:600 +#: htdocs/luci-static/resources/view/homeproxy/server.js:663 msgid "" "The alternate port to use for the ACME HTTP challenge; if non-empty, this " "port will be used instead of 80 to spin up a listener for the HTTP challenge." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:606 +#: htdocs/luci-static/resources/view/homeproxy/server.js:669 msgid "" "The alternate port to use for the ACME TLS-ALPN challenge; the system must " "forward 443 to this port for challenge to succeed." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:452 +#: htdocs/luci-static/resources/view/homeproxy/client.js:461 msgid "" "The default rule uses the following matching logic:
(domain || " "domain_suffix || domain_keyword || domain_regex || ip_cidr || " @@ -2079,7 +2096,7 @@ msgid "" "than as a single rule sub-item." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:784 +#: htdocs/luci-static/resources/view/homeproxy/client.js:793 msgid "" "The default rule uses the following matching logic:
(domain || " "domain_suffix || domain_keyword || domain_regex) &&
(port " @@ -2089,103 +2106,103 @@ msgid "" "considered merged rather than as a single rule sub-item." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:719 +#: htdocs/luci-static/resources/view/homeproxy/client.js:728 msgid "" "The domain strategy for resolving the domain name in the address. dns." "strategy will be used if empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1000 -#: htdocs/luci-static/resources/view/homeproxy/server.js:507 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1008 +#: htdocs/luci-static/resources/view/homeproxy/server.js:570 msgid "" "The elliptic curves that will be used in an ECDHE handshake, in preference " "order. If empty, the default will be used." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:534 +#: htdocs/luci-static/resources/view/homeproxy/server.js:597 msgid "" "The email address to use when creating or selecting an existing ACME server " "account." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:992 -#: htdocs/luci-static/resources/view/homeproxy/server.js:499 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1000 +#: htdocs/luci-static/resources/view/homeproxy/server.js:562 msgid "The maximum TLS version that is acceptable." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:231 +#: htdocs/luci-static/resources/view/homeproxy/server.js:283 msgid "" "The maximum number of QUIC concurrent bidirectional streams that a peer is " "allowed to open." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:647 +#: htdocs/luci-static/resources/view/homeproxy/server.js:710 msgid "The maximum time difference between the server and the client." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:984 -#: htdocs/luci-static/resources/view/homeproxy/server.js:491 +#: htdocs/luci-static/resources/view/homeproxy/node.js:992 +#: htdocs/luci-static/resources/view/homeproxy/server.js:554 msgid "The minimum TLS version that is acceptable." msgstr "" #: htdocs/luci-static/resources/view/homeproxy/client.js:110 -#: htdocs/luci-static/resources/view/homeproxy/server.js:57 +#: htdocs/luci-static/resources/view/homeproxy/server.js:98 msgid "The modern ImmortalWrt proxy platform for ARM64/AMD64." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:383 +#: htdocs/luci-static/resources/view/homeproxy/client.js:392 msgid "The network interface to bind to." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1014 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1022 msgid "The path to the server certificate, in PEM format." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:125 +#: htdocs/luci-static/resources/view/homeproxy/server.js:166 msgid "The port must be unique." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:683 +#: htdocs/luci-static/resources/view/homeproxy/server.js:746 msgid "The server private key, in PEM format." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:665 +#: htdocs/luci-static/resources/view/homeproxy/server.js:728 msgid "The server public key, in PEM format." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:390 +#: htdocs/luci-static/resources/view/homeproxy/client.js:399 msgid "" "The tag of the upstream outbound.
Other dial fields will be ignored when " "enabled." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:737 -#: htdocs/luci-static/resources/view/homeproxy/server.js:383 +#: htdocs/luci-static/resources/view/homeproxy/node.js:745 +#: htdocs/luci-static/resources/view/homeproxy/server.js:446 msgid "" "The timeout (in seconds) that after performing a keepalive check, the client " "will wait for activity. If no activity is detected, the connection will be " "closed." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:977 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1320 +#: htdocs/luci-static/resources/view/homeproxy/node.js:985 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1328 msgid "" "This is DANGEROUS, your traffic is almost like " "PLAIN TEXT! Use at your own risk!" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:644 +#: htdocs/luci-static/resources/view/homeproxy/node.js:652 msgid "" "This is the TUIC port of the UDP over TCP protocol, designed to provide a " "QUIC stream based UDP relay mode that TUIC does not provide." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:653 +#: htdocs/luci-static/resources/view/homeproxy/client.js:662 msgid "" "Timeout of rejected DNS response cache. 7d is used by default." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:409 +#: htdocs/luci-static/resources/view/homeproxy/server.js:472 msgid "" "To be compatible with Xray-core, set this to Sec-WebSocket-Protocol." @@ -2197,18 +2214,18 @@ msgid "" "kmod-tun" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:703 -#: htdocs/luci-static/resources/view/homeproxy/server.js:317 +#: htdocs/luci-static/resources/view/homeproxy/node.js:711 +#: htdocs/luci-static/resources/view/homeproxy/server.js:380 msgid "Transport" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:404 -#: htdocs/luci-static/resources/view/homeproxy/server.js:112 +#: htdocs/luci-static/resources/view/homeproxy/server.js:153 msgid "Trojan" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:406 -#: htdocs/luci-static/resources/view/homeproxy/server.js:114 +#: htdocs/luci-static/resources/view/homeproxy/server.js:155 msgid "Tuic" msgstr "" @@ -2216,41 +2233,46 @@ msgstr "" msgid "Tun TCP/UDP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:992 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1001 #: htdocs/luci-static/resources/view/homeproxy/node.js:393 -#: htdocs/luci-static/resources/view/homeproxy/server.js:103 +#: htdocs/luci-static/resources/view/homeproxy/server.js:144 msgid "Type" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:480 -#: htdocs/luci-static/resources/view/homeproxy/client.js:808 -#: htdocs/luci-static/resources/view/homeproxy/server.js:731 +#: htdocs/luci-static/resources/view/homeproxy/client.js:489 +#: htdocs/luci-static/resources/view/homeproxy/client.js:817 +#: htdocs/luci-static/resources/view/homeproxy/server.js:801 msgid "UDP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1110 -#: htdocs/luci-static/resources/view/homeproxy/server.js:713 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1118 +#: htdocs/luci-static/resources/view/homeproxy/server.js:776 msgid "UDP Fragment" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1115 +#: htdocs/luci-static/resources/view/homeproxy/client.js:316 +#: htdocs/luci-static/resources/view/homeproxy/server.js:782 +msgid "UDP NAT expiration time" +msgstr "" + +#: htdocs/luci-static/resources/view/homeproxy/node.js:1123 msgid "UDP over TCP" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:643 +#: htdocs/luci-static/resources/view/homeproxy/node.js:651 msgid "UDP over stream" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:636 +#: htdocs/luci-static/resources/view/homeproxy/node.js:644 msgid "UDP packet relay mode." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:635 +#: htdocs/luci-static/resources/view/homeproxy/node.js:643 msgid "UDP relay mode" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:618 -#: htdocs/luci-static/resources/view/homeproxy/server.js:264 +#: htdocs/luci-static/resources/view/homeproxy/node.js:626 +#: htdocs/luci-static/resources/view/homeproxy/server.js:316 msgid "UUID" msgstr "" @@ -2262,11 +2284,11 @@ msgstr "" msgid "Unknown error: %s" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1078 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1086 msgid "Unsupported fingerprint!" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1344 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1352 msgid "Update %s subscriptions" msgstr "" @@ -2274,83 +2296,83 @@ msgstr "" msgid "Update failed." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1051 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1060 msgid "Update interval" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1052 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1061 msgid "Update interval of rule set.
1d will be used if empty." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1339 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1347 msgid "Update nodes from subscriptions" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1283 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1291 msgid "Update subscriptions via proxy." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1276 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1284 msgid "Update time" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1282 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1290 msgid "Update via proxy" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:929 -#: htdocs/luci-static/resources/view/homeproxy/server.js:444 +#: htdocs/luci-static/resources/view/homeproxy/node.js:937 +#: htdocs/luci-static/resources/view/homeproxy/server.js:507 msgid "Upload bandwidth" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:930 -#: htdocs/luci-static/resources/view/homeproxy/server.js:445 +#: htdocs/luci-static/resources/view/homeproxy/node.js:938 +#: htdocs/luci-static/resources/view/homeproxy/server.js:508 msgid "Upload bandwidth in Mbps." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1020 -#: htdocs/luci-static/resources/view/homeproxy/server.js:674 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1028 +#: htdocs/luci-static/resources/view/homeproxy/server.js:737 msgid "Upload certificate" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:692 +#: htdocs/luci-static/resources/view/homeproxy/server.js:755 msgid "Upload key" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1023 -#: htdocs/luci-static/resources/view/homeproxy/server.js:677 -#: htdocs/luci-static/resources/view/homeproxy/server.js:695 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1031 +#: htdocs/luci-static/resources/view/homeproxy/server.js:740 +#: htdocs/luci-static/resources/view/homeproxy/server.js:758 msgid "Upload..." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:516 +#: htdocs/luci-static/resources/view/homeproxy/server.js:579 msgid "Use ACME TLS certificate issuer." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:965 -#: htdocs/luci-static/resources/view/homeproxy/server.js:481 +#: htdocs/luci-static/resources/view/homeproxy/node.js:973 +#: htdocs/luci-static/resources/view/homeproxy/server.js:544 msgid "" "Used to verify the hostname on the returned certificates unless insecure is " "given." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:550 -#: htdocs/luci-static/resources/view/homeproxy/client.js:884 +#: htdocs/luci-static/resources/view/homeproxy/client.js:559 +#: htdocs/luci-static/resources/view/homeproxy/client.js:893 msgid "User" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:423 -#: htdocs/luci-static/resources/view/homeproxy/server.js:129 +#: htdocs/luci-static/resources/view/homeproxy/server.js:170 msgid "Username" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:409 -#: htdocs/luci-static/resources/view/homeproxy/server.js:115 +#: htdocs/luci-static/resources/view/homeproxy/server.js:156 msgid "VLESS" msgstr "" #: htdocs/luci-static/resources/view/homeproxy/node.js:410 -#: htdocs/luci-static/resources/view/homeproxy/server.js:116 +#: htdocs/luci-static/resources/view/homeproxy/server.js:157 msgid "VMess" msgstr "" @@ -2359,16 +2381,16 @@ msgstr "" msgid "WAN DNS (read from interface)" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1122 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1131 msgid "WAN IP Policy" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:710 -#: htdocs/luci-static/resources/view/homeproxy/server.js:324 +#: htdocs/luci-static/resources/view/homeproxy/node.js:718 +#: htdocs/luci-static/resources/view/homeproxy/server.js:387 msgid "WebSocket" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1308 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1316 msgid "Whitelist mode" msgstr "" @@ -2376,25 +2398,29 @@ msgstr "" msgid "WireGuard" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:849 +#: htdocs/luci-static/resources/view/homeproxy/node.js:857 msgid "WireGuard peer public key." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:856 +#: htdocs/luci-static/resources/view/homeproxy/node.js:864 msgid "WireGuard pre-shared key." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:841 +#: htdocs/luci-static/resources/view/homeproxy/node.js:849 msgid "WireGuard requires base64-encoded private keys." msgstr "" +#: htdocs/luci-static/resources/view/homeproxy/node.js:472 +msgid "Write proxy protocol in the connection header." +msgstr "" + #: htdocs/luci-static/resources/view/homeproxy/client.js:167 #: htdocs/luci-static/resources/view/homeproxy/client.js:190 msgid "Xinfeng Public DNS (114.114.114.114)" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:820 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1328 +#: htdocs/luci-static/resources/view/homeproxy/node.js:828 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1336 msgid "Xudp (Xray-core)" msgstr "" @@ -2402,23 +2428,23 @@ msgstr "" msgid "You can only have two servers set at maximum." msgstr "" -#: htdocs/luci-static/resources/homeproxy.js:228 +#: htdocs/luci-static/resources/homeproxy.js:243 msgid "Your %s was successfully uploaded. Size: %sB." msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:551 +#: htdocs/luci-static/resources/view/homeproxy/server.js:614 msgid "ZeroSSL" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1025 -#: htdocs/luci-static/resources/view/homeproxy/server.js:679 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1033 +#: htdocs/luci-static/resources/view/homeproxy/server.js:742 msgid "certificate" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:985 #: htdocs/luci-static/resources/view/homeproxy/node.js:993 -#: htdocs/luci-static/resources/view/homeproxy/server.js:492 -#: htdocs/luci-static/resources/view/homeproxy/server.js:500 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1001 +#: htdocs/luci-static/resources/view/homeproxy/server.js:555 +#: htdocs/luci-static/resources/view/homeproxy/server.js:563 msgid "default" msgstr "" @@ -2426,17 +2452,17 @@ msgstr "" msgid "failed" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:706 -#: htdocs/luci-static/resources/view/homeproxy/server.js:320 +#: htdocs/luci-static/resources/view/homeproxy/node.js:714 +#: htdocs/luci-static/resources/view/homeproxy/server.js:383 msgid "gRPC" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:748 +#: htdocs/luci-static/resources/view/homeproxy/node.js:756 msgid "gRPC permit without stream" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:743 -#: htdocs/luci-static/resources/view/homeproxy/server.js:348 +#: htdocs/luci-static/resources/view/homeproxy/node.js:751 +#: htdocs/luci-static/resources/view/homeproxy/server.js:411 msgid "gRPC service name" msgstr "" @@ -2444,24 +2470,24 @@ msgstr "" msgid "gVisor" msgstr "" -#: htdocs/luci-static/resources/homeproxy.js:248 -#: htdocs/luci-static/resources/homeproxy.js:266 +#: htdocs/luci-static/resources/homeproxy.js:263 +#: htdocs/luci-static/resources/homeproxy.js:281 #: htdocs/luci-static/resources/view/homeproxy/client.js:176 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1015 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1024 #: htdocs/luci-static/resources/view/homeproxy/node.js:452 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1074 -#: htdocs/luci-static/resources/view/homeproxy/server.js:159 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1082 +#: htdocs/luci-static/resources/view/homeproxy/server.js:211 msgid "non-empty value" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:559 -#: htdocs/luci-static/resources/view/homeproxy/node.js:818 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1326 +#: htdocs/luci-static/resources/view/homeproxy/node.js:567 +#: htdocs/luci-static/resources/view/homeproxy/node.js:826 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1334 msgid "none" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:819 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1327 +#: htdocs/luci-static/resources/view/homeproxy/node.js:827 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1335 msgid "packet addr (v2ray-core v5+)" msgstr "" @@ -2469,7 +2495,7 @@ msgstr "" msgid "passed" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/server.js:697 +#: htdocs/luci-static/resources/view/homeproxy/server.js:760 msgid "private key" msgstr "" @@ -2481,11 +2507,11 @@ msgstr "" msgid "sing-box server" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1051 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1059 msgid "uTLS fingerprint" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1052 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1060 msgid "" "uTLS is a fork of \"crypto/tls\", which provides ClientHello fingerprinting " "resistance." @@ -2495,26 +2521,28 @@ msgstr "" msgid "unchecked" msgstr "" -#: htdocs/luci-static/resources/homeproxy.js:206 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1234 +#: htdocs/luci-static/resources/homeproxy.js:221 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1242 msgid "unique UCI identifier" msgstr "" -#: htdocs/luci-static/resources/homeproxy.js:257 +#: htdocs/luci-static/resources/homeproxy.js:272 msgid "unique value" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:573 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1123 +#: htdocs/luci-static/resources/view/homeproxy/node.js:474 +#: htdocs/luci-static/resources/view/homeproxy/node.js:581 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1131 msgid "v1" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:574 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1124 +#: htdocs/luci-static/resources/view/homeproxy/node.js:475 +#: htdocs/luci-static/resources/view/homeproxy/node.js:582 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1132 msgid "v2" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/node.js:575 +#: htdocs/luci-static/resources/view/homeproxy/node.js:583 msgid "v3" msgstr "" @@ -2522,10 +2550,10 @@ msgstr "" msgid "valid IP address" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1020 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1023 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1294 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1297 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1029 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1032 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1302 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1305 msgid "valid URL" msgstr "" @@ -2533,12 +2561,12 @@ msgstr "" msgid "valid address#port" msgstr "" -#: htdocs/luci-static/resources/homeproxy.js:240 +#: htdocs/luci-static/resources/homeproxy.js:255 msgid "valid base64 key with %d characters" msgstr "" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1162 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1191 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1171 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1200 msgid "valid hostname" msgstr "" @@ -2551,6 +2579,6 @@ msgstr "" msgid "valid port value" msgstr "" -#: htdocs/luci-static/resources/homeproxy.js:268 +#: htdocs/luci-static/resources/homeproxy.js:283 msgid "valid uuid" msgstr "" diff --git a/luci-app-homeproxy/po/zh_Hans/homeproxy.po b/luci-app-homeproxy/po/zh_Hans/homeproxy.po index 9822ec82d..735d1b976 100644 --- a/luci-app-homeproxy/po/zh_Hans/homeproxy.po +++ b/luci-app-homeproxy/po/zh_Hans/homeproxy.po @@ -12,50 +12,50 @@ msgstr "" msgid "%s log" msgstr "%s 日志" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1391 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1399 msgid "%s nodes removed" msgstr "移除了 %s 个节点" -#: htdocs/luci-static/resources/view/homeproxy/client.js:560 -#: htdocs/luci-static/resources/view/homeproxy/client.js:894 +#: htdocs/luci-static/resources/view/homeproxy/client.js:569 +#: htdocs/luci-static/resources/view/homeproxy/client.js:903 msgid "-- Please choose --" msgstr "-- 请选择 --" -#: htdocs/luci-static/resources/view/homeproxy/client.js:465 +#: htdocs/luci-static/resources/view/homeproxy/client.js:474 msgid "4 or 6. Not limited if empty." msgstr "4 或 6。留空不限制。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1021 -#: htdocs/luci-static/resources/view/homeproxy/server.js:675 -#: htdocs/luci-static/resources/view/homeproxy/server.js:693 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1029 +#: htdocs/luci-static/resources/view/homeproxy/server.js:738 +#: htdocs/luci-static/resources/view/homeproxy/server.js:756 msgid "Save your configuration before uploading files!" msgstr "上传文件前请先保存配置!" -#: htdocs/luci-static/resources/view/homeproxy/server.js:584 +#: htdocs/luci-static/resources/view/homeproxy/server.js:647 msgid "API token" msgstr "API 令牌" -#: htdocs/luci-static/resources/view/homeproxy/node.js:598 +#: htdocs/luci-static/resources/view/homeproxy/node.js:606 msgid "Accept any if empty." msgstr "留空则不校验。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1057 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1066 msgid "Access Control" msgstr "访问控制" -#: htdocs/luci-static/resources/view/homeproxy/server.js:569 +#: htdocs/luci-static/resources/view/homeproxy/server.js:632 msgid "Access key ID" msgstr "访问密钥 ID" -#: htdocs/luci-static/resources/view/homeproxy/server.js:574 +#: htdocs/luci-static/resources/view/homeproxy/server.js:637 msgid "Access key secret" msgstr "访问密钥" -#: htdocs/luci-static/resources/view/homeproxy/client.js:763 +#: htdocs/luci-static/resources/view/homeproxy/client.js:772 msgid "Add a DNS rule" msgstr "新增 DNS 规则" -#: htdocs/luci-static/resources/view/homeproxy/client.js:668 +#: htdocs/luci-static/resources/view/homeproxy/client.js:677 msgid "Add a DNS server" msgstr "新增 DNS 服务器" @@ -63,36 +63,36 @@ msgstr "新增 DNS 服务器" msgid "Add a node" msgstr "新增节点" -#: htdocs/luci-static/resources/view/homeproxy/client.js:355 +#: htdocs/luci-static/resources/view/homeproxy/client.js:364 msgid "Add a routing node" msgstr "新增路由节点" -#: htdocs/luci-static/resources/view/homeproxy/client.js:431 +#: htdocs/luci-static/resources/view/homeproxy/client.js:440 msgid "Add a routing rule" msgstr "新增路由规则" -#: htdocs/luci-static/resources/view/homeproxy/client.js:978 +#: htdocs/luci-static/resources/view/homeproxy/client.js:987 msgid "Add a rule set" msgstr "新增规则集" -#: htdocs/luci-static/resources/view/homeproxy/server.js:88 +#: htdocs/luci-static/resources/view/homeproxy/server.js:129 msgid "Add a server" msgstr "新增服务器" -#: htdocs/luci-static/resources/view/homeproxy/client.js:682 +#: htdocs/luci-static/resources/view/homeproxy/client.js:691 #: htdocs/luci-static/resources/view/homeproxy/node.js:413 msgid "Address" msgstr "地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:686 +#: htdocs/luci-static/resources/view/homeproxy/client.js:695 msgid "Address resolver" msgstr "地址解析器" -#: htdocs/luci-static/resources/view/homeproxy/client.js:718 +#: htdocs/luci-static/resources/view/homeproxy/client.js:727 msgid "Address strategy" msgstr "地址解析策略" -#: htdocs/luci-static/resources/view/homeproxy/server.js:562 +#: htdocs/luci-static/resources/view/homeproxy/server.js:625 msgid "Alibaba Cloud DNS" msgstr "阿里云 DNS" @@ -105,21 +105,21 @@ msgstr "阿里云公共 DNS(223.5.5.5)" msgid "All ports" msgstr "所有端口" -#: htdocs/luci-static/resources/view/homeproxy/node.js:974 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1317 +#: htdocs/luci-static/resources/view/homeproxy/node.js:982 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1325 msgid "Allow insecure" msgstr "允许不安全连接" -#: htdocs/luci-static/resources/view/homeproxy/node.js:975 +#: htdocs/luci-static/resources/view/homeproxy/node.js:983 msgid "Allow insecure connection at TLS client." msgstr "允许 TLS 客户端侧的不安全连接。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1318 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1326 msgid "Allow insecure connection by default when add nodes from subscriptions." msgstr "从订阅获取节点时,默认允许不安全连接。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:805 -#: htdocs/luci-static/resources/view/homeproxy/server.js:400 +#: htdocs/luci-static/resources/view/homeproxy/node.js:813 +#: htdocs/luci-static/resources/view/homeproxy/server.js:463 msgid "Allowed payload size is in the request." msgstr "请求中允许的载荷大小。" @@ -131,30 +131,30 @@ msgstr "已是最新版本。" msgid "Already in updating." msgstr "已在更新中。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:671 -#: htdocs/luci-static/resources/view/homeproxy/server.js:309 +#: htdocs/luci-static/resources/view/homeproxy/node.js:679 +#: htdocs/luci-static/resources/view/homeproxy/server.js:372 msgid "Alter ID" msgstr "额外 ID" -#: htdocs/luci-static/resources/view/homeproxy/server.js:599 +#: htdocs/luci-static/resources/view/homeproxy/server.js:662 msgid "Alternative HTTP port" msgstr "替代 HTTP 端口" -#: htdocs/luci-static/resources/view/homeproxy/server.js:605 +#: htdocs/luci-static/resources/view/homeproxy/server.js:668 msgid "Alternative TLS port" msgstr "替代 HTTPS 端口" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1354 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1362 msgid "An error occurred during updating subscriptions: %s" msgstr "更新订阅时发生错误:%s" -#: htdocs/luci-static/resources/view/homeproxy/client.js:920 +#: htdocs/luci-static/resources/view/homeproxy/client.js:929 msgid "Any" msgstr "任何" -#: htdocs/luci-static/resources/view/homeproxy/client.js:642 -#: htdocs/luci-static/resources/view/homeproxy/client.js:748 -#: htdocs/luci-static/resources/view/homeproxy/client.js:962 +#: htdocs/luci-static/resources/view/homeproxy/client.js:651 +#: htdocs/luci-static/resources/view/homeproxy/client.js:757 +#: htdocs/luci-static/resources/view/homeproxy/client.js:971 msgid "" "Append a edns0-subnet OPT extra record with the specified IP " "prefix to every query by default.
If value is an IP address instead of " @@ -163,7 +163,7 @@ msgstr "" "将带有指定 IP 前缀的 edns0-subnet OPT 记录附加到每个查询。如果值" "是 IP 地址而不是前缀,则会自动添加 /32/128。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1007 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1015 msgid "Append self-signed certificate" msgstr "追加自签名证书" @@ -180,37 +180,37 @@ msgstr "应用" msgid "Are you sure to allow insecure?" msgstr "确定要允许不安全连接吗?" -#: htdocs/luci-static/resources/view/homeproxy/server.js:280 +#: htdocs/luci-static/resources/view/homeproxy/server.js:343 msgid "Auth timeout" msgstr "认证超时" -#: htdocs/luci-static/resources/view/homeproxy/node.js:695 +#: htdocs/luci-static/resources/view/homeproxy/node.js:703 msgid "Authenticated length" msgstr "认证长度" -#: htdocs/luci-static/resources/view/homeproxy/node.js:490 -#: htdocs/luci-static/resources/view/homeproxy/server.js:200 +#: htdocs/luci-static/resources/view/homeproxy/node.js:498 +#: htdocs/luci-static/resources/view/homeproxy/server.js:252 msgid "Authentication payload" msgstr "认证载荷" -#: htdocs/luci-static/resources/view/homeproxy/node.js:483 -#: htdocs/luci-static/resources/view/homeproxy/server.js:193 +#: htdocs/luci-static/resources/view/homeproxy/node.js:491 +#: htdocs/luci-static/resources/view/homeproxy/server.js:245 msgid "Authentication type" msgstr "认证类型" -#: htdocs/luci-static/resources/view/homeproxy/server.js:79 +#: htdocs/luci-static/resources/view/homeproxy/server.js:120 msgid "Auto configure firewall" msgstr "自动配置防火墙" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1271 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1279 msgid "Auto update" msgstr "自动更新" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1272 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1280 msgid "Auto update subscriptions." msgstr "自动更新订阅。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:629 +#: htdocs/luci-static/resources/view/homeproxy/node.js:637 msgid "BBR" msgstr "BBR" @@ -218,8 +218,8 @@ msgstr "BBR" msgid "BaiDu" msgstr "百度" -#: htdocs/luci-static/resources/view/homeproxy/node.js:485 -#: htdocs/luci-static/resources/view/homeproxy/server.js:195 +#: htdocs/luci-static/resources/view/homeproxy/node.js:493 +#: htdocs/luci-static/resources/view/homeproxy/server.js:247 msgid "Base64" msgstr "Base64" @@ -227,44 +227,44 @@ msgstr "Base64" msgid "Based on google/gvisor." msgstr "基于 google/gvisor。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1000 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1009 msgid "Binary file" msgstr "二进制文件" -#: htdocs/luci-static/resources/view/homeproxy/client.js:382 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1070 +#: htdocs/luci-static/resources/view/homeproxy/client.js:391 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1079 msgid "Bind interface" msgstr "绑定接口" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1071 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1080 msgid "" "Bind outbound traffic to specific interface. Leave empty to auto detect." msgstr "绑定出站流量至指定端口。留空自动检测。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1307 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1315 msgid "Blacklist mode" msgstr "黑名单模式" -#: htdocs/luci-static/resources/view/homeproxy/client.js:333 -#: htdocs/luci-static/resources/view/homeproxy/client.js:588 -#: htdocs/luci-static/resources/view/homeproxy/client.js:922 +#: htdocs/luci-static/resources/view/homeproxy/client.js:342 +#: htdocs/luci-static/resources/view/homeproxy/client.js:597 +#: htdocs/luci-static/resources/view/homeproxy/client.js:931 msgid "Block" msgstr "封锁" -#: htdocs/luci-static/resources/view/homeproxy/client.js:618 -#: htdocs/luci-static/resources/view/homeproxy/client.js:940 +#: htdocs/luci-static/resources/view/homeproxy/client.js:627 +#: htdocs/luci-static/resources/view/homeproxy/client.js:949 msgid "Block DNS queries" msgstr "封锁 DNS 请求" -#: htdocs/luci-static/resources/view/homeproxy/client.js:468 -#: htdocs/luci-static/resources/view/homeproxy/client.js:481 -#: htdocs/luci-static/resources/view/homeproxy/client.js:799 -#: htdocs/luci-static/resources/view/homeproxy/client.js:809 -#: htdocs/luci-static/resources/view/homeproxy/server.js:732 +#: htdocs/luci-static/resources/view/homeproxy/client.js:477 +#: htdocs/luci-static/resources/view/homeproxy/client.js:490 +#: htdocs/luci-static/resources/view/homeproxy/client.js:808 +#: htdocs/luci-static/resources/view/homeproxy/client.js:818 +#: htdocs/luci-static/resources/view/homeproxy/server.js:802 msgid "Both" msgstr "全部" -#: htdocs/luci-static/resources/view/homeproxy/client.js:316 +#: htdocs/luci-static/resources/view/homeproxy/client.js:325 msgid "Bypass CN traffic" msgstr "绕过中国流量" @@ -272,11 +272,11 @@ msgstr "绕过中国流量" msgid "Bypass mainland China" msgstr "大陆白名单" -#: htdocs/luci-static/resources/view/homeproxy/client.js:317 +#: htdocs/luci-static/resources/view/homeproxy/client.js:326 msgid "Bypass mainland China traffic via firewall rules by default." msgstr "默认使用防火墙规则绕过中国大陆流量。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:548 +#: htdocs/luci-static/resources/view/homeproxy/server.js:611 msgid "CA provider" msgstr "CA 颁发机构" @@ -284,16 +284,16 @@ msgstr "CA 颁发机构" msgid "CNNIC Public DNS (210.2.4.8)" msgstr "CNNIC 公共 DNS(210.2.4.8)" -#: htdocs/luci-static/resources/view/homeproxy/node.js:627 +#: htdocs/luci-static/resources/view/homeproxy/node.js:635 msgid "CUBIC" msgstr "CUBIC" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1171 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1179 msgid "Cancel" msgstr "取消" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1013 -#: htdocs/luci-static/resources/view/homeproxy/server.js:664 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1021 +#: htdocs/luci-static/resources/view/homeproxy/server.js:727 msgid "Certificate path" msgstr "证书路径" @@ -321,8 +321,8 @@ msgstr "大陆 IPv6 库版本" msgid "China list version" msgstr "大陆域名列表版本" -#: htdocs/luci-static/resources/view/homeproxy/node.js:999 -#: htdocs/luci-static/resources/view/homeproxy/server.js:506 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1007 +#: htdocs/luci-static/resources/view/homeproxy/server.js:569 msgid "Cipher suites" msgstr "密码套件" @@ -338,7 +338,7 @@ msgstr "清空日志" msgid "Client Settings" msgstr "客户端设置" -#: htdocs/luci-static/resources/view/homeproxy/node.js:592 +#: htdocs/luci-static/resources/view/homeproxy/node.js:600 msgid "Client version" msgstr "客户端版本" @@ -346,12 +346,12 @@ msgstr "客户端版本" msgid "CloudFlare Public DNS (1.1.1.1)" msgstr "CloudFlare 公共 DNS(1.1.1.1)" -#: htdocs/luci-static/resources/view/homeproxy/server.js:563 +#: htdocs/luci-static/resources/view/homeproxy/server.js:626 msgid "Cloudflare" msgstr "Cloudflare" #: htdocs/luci-static/resources/view/homeproxy/client.js:122 -#: htdocs/luci-static/resources/view/homeproxy/server.js:69 +#: htdocs/luci-static/resources/view/homeproxy/server.js:110 #: htdocs/luci-static/resources/view/homeproxy/status.js:128 msgid "Collecting data..." msgstr "收集数据中..." @@ -360,8 +360,8 @@ msgstr "收集数据中..." msgid "Common ports only (bypass P2P traffic)" msgstr "仅常用端口(绕过 P2P 流量)" -#: htdocs/luci-static/resources/view/homeproxy/node.js:625 -#: htdocs/luci-static/resources/view/homeproxy/server.js:271 +#: htdocs/luci-static/resources/view/homeproxy/node.js:633 +#: htdocs/luci-static/resources/view/homeproxy/server.js:334 msgid "Congestion control algorithm" msgstr "拥塞控制算法" @@ -373,152 +373,153 @@ msgstr "连接检查" msgid "Custom routing" msgstr "自定义路由" -#: htdocs/luci-static/resources/view/homeproxy/client.js:816 +#: htdocs/luci-static/resources/view/homeproxy/client.js:825 msgid "DNS" msgstr "DNS" -#: htdocs/luci-static/resources/view/homeproxy/client.js:754 +#: htdocs/luci-static/resources/view/homeproxy/client.js:763 msgid "DNS Rules" msgstr "DNS 规则" -#: htdocs/luci-static/resources/view/homeproxy/client.js:659 +#: htdocs/luci-static/resources/view/homeproxy/client.js:668 msgid "DNS Servers" msgstr "DNS 服务器" -#: htdocs/luci-static/resources/view/homeproxy/client.js:601 +#: htdocs/luci-static/resources/view/homeproxy/client.js:610 msgid "DNS Settings" msgstr "DNS 设置" -#: htdocs/luci-static/resources/view/homeproxy/server.js:561 +#: htdocs/luci-static/resources/view/homeproxy/server.js:624 msgid "DNS provider" msgstr "DNS 提供商" -#: htdocs/luci-static/resources/view/homeproxy/client.js:763 +#: htdocs/luci-static/resources/view/homeproxy/client.js:772 msgid "DNS rule" msgstr "DNS 规则" #: htdocs/luci-static/resources/view/homeproxy/client.js:158 -#: htdocs/luci-static/resources/view/homeproxy/client.js:668 +#: htdocs/luci-static/resources/view/homeproxy/client.js:677 msgid "DNS server" msgstr "DNS 服务器" -#: htdocs/luci-static/resources/view/homeproxy/server.js:556 +#: htdocs/luci-static/resources/view/homeproxy/server.js:619 msgid "DNS01 challenge" msgstr "DNS01 验证" #: htdocs/luci-static/resources/homeproxy.js:17 -#: htdocs/luci-static/resources/view/homeproxy/client.js:459 -#: htdocs/luci-static/resources/view/homeproxy/client.js:791 -#: htdocs/luci-static/resources/view/homeproxy/node.js:637 +#: htdocs/luci-static/resources/view/homeproxy/client.js:468 +#: htdocs/luci-static/resources/view/homeproxy/client.js:800 +#: htdocs/luci-static/resources/view/homeproxy/node.js:645 msgid "Default" msgstr "默认" -#: htdocs/luci-static/resources/view/homeproxy/client.js:616 -#: htdocs/luci-static/resources/view/homeproxy/client.js:693 -#: htdocs/luci-static/resources/view/homeproxy/client.js:938 +#: htdocs/luci-static/resources/view/homeproxy/client.js:625 +#: htdocs/luci-static/resources/view/homeproxy/client.js:702 +#: htdocs/luci-static/resources/view/homeproxy/client.js:947 msgid "Default DNS (issued by WAN)" msgstr "默认 DNS(由 WAN 下发)" -#: htdocs/luci-static/resources/view/homeproxy/client.js:611 +#: htdocs/luci-static/resources/view/homeproxy/client.js:620 msgid "Default DNS server" msgstr "默认 DNS 服务器" -#: htdocs/luci-static/resources/view/homeproxy/client.js:606 +#: htdocs/luci-static/resources/view/homeproxy/client.js:615 msgid "Default DNS strategy" msgstr "默认 DNS 解析策略" -#: htdocs/luci-static/resources/view/homeproxy/client.js:725 +#: htdocs/luci-static/resources/view/homeproxy/client.js:734 msgid "Default domain strategy for resolving the domain names." msgstr "默认域名解析策略。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:326 +#: htdocs/luci-static/resources/view/homeproxy/client.js:335 msgid "Default outbound" msgstr "默认出站" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1325 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1333 msgid "Default packet encoding" msgstr "默认包封装格式" -#: htdocs/luci-static/resources/view/homeproxy/server.js:527 +#: htdocs/luci-static/resources/view/homeproxy/server.js:590 msgid "Default server name" msgstr "默认服务器名称" -#: htdocs/luci-static/resources/view/homeproxy/client.js:332 -#: htdocs/luci-static/resources/view/homeproxy/client.js:395 -#: htdocs/luci-static/resources/view/homeproxy/client.js:587 -#: htdocs/luci-static/resources/view/homeproxy/client.js:735 -#: htdocs/luci-static/resources/view/homeproxy/client.js:921 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1039 +#: htdocs/luci-static/resources/view/homeproxy/client.js:341 +#: htdocs/luci-static/resources/view/homeproxy/client.js:404 +#: htdocs/luci-static/resources/view/homeproxy/client.js:596 +#: htdocs/luci-static/resources/view/homeproxy/client.js:744 +#: htdocs/luci-static/resources/view/homeproxy/client.js:930 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1048 #: htdocs/luci-static/resources/view/homeproxy/node.js:394 msgid "Direct" msgstr "直连" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1169 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1178 msgid "Direct Domain List" msgstr "直连域名列表" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1086 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1131 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1095 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1140 msgid "Direct IPv4 IP-s" msgstr "直连 IPv4 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1089 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1134 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1098 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1143 msgid "Direct IPv6 IP-s" msgstr "直连 IPv6 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1092 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1101 msgid "Direct MAC-s" msgstr "直连 MAC 地址" #: htdocs/luci-static/resources/view/homeproxy/client.js:142 #: htdocs/luci-static/resources/view/homeproxy/client.js:150 -#: htdocs/luci-static/resources/view/homeproxy/client.js:331 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1080 -#: htdocs/luci-static/resources/view/homeproxy/node.js:484 -#: htdocs/luci-static/resources/view/homeproxy/node.js:496 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1053 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1306 -#: htdocs/luci-static/resources/view/homeproxy/server.js:194 -#: htdocs/luci-static/resources/view/homeproxy/server.js:206 +#: htdocs/luci-static/resources/view/homeproxy/client.js:340 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1089 +#: htdocs/luci-static/resources/view/homeproxy/node.js:473 +#: htdocs/luci-static/resources/view/homeproxy/node.js:492 +#: htdocs/luci-static/resources/view/homeproxy/node.js:504 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1061 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1314 +#: htdocs/luci-static/resources/view/homeproxy/server.js:246 +#: htdocs/luci-static/resources/view/homeproxy/server.js:258 msgid "Disable" msgstr "禁用" -#: htdocs/luci-static/resources/view/homeproxy/client.js:629 +#: htdocs/luci-static/resources/view/homeproxy/client.js:638 msgid "Disable DNS cache" msgstr "禁用 DNS 缓存" -#: htdocs/luci-static/resources/view/homeproxy/server.js:589 +#: htdocs/luci-static/resources/view/homeproxy/server.js:652 msgid "Disable HTTP challenge" msgstr "禁用 HTTP 验证" -#: htdocs/luci-static/resources/view/homeproxy/node.js:532 -#: htdocs/luci-static/resources/view/homeproxy/server.js:237 +#: htdocs/luci-static/resources/view/homeproxy/node.js:540 +#: htdocs/luci-static/resources/view/homeproxy/server.js:289 msgid "Disable Path MTU discovery" msgstr "禁用路径 MTU 探测" -#: htdocs/luci-static/resources/view/homeproxy/server.js:594 +#: htdocs/luci-static/resources/view/homeproxy/server.js:657 msgid "Disable TLS ALPN challenge" msgstr "禁用 TLS ALPN 认证" -#: htdocs/luci-static/resources/view/homeproxy/client.js:952 +#: htdocs/luci-static/resources/view/homeproxy/client.js:961 msgid "Disable cache and save cache in this query." msgstr "在本次查询中禁用缓存。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:632 +#: htdocs/luci-static/resources/view/homeproxy/client.js:641 msgid "Disable cache expire" msgstr "缓存永不过期" -#: htdocs/luci-static/resources/view/homeproxy/client.js:951 +#: htdocs/luci-static/resources/view/homeproxy/client.js:960 msgid "Disable dns cache" msgstr "禁用 DNS 缓存" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1035 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1043 msgid "Disable dynamic record sizing" msgstr "禁用动态记录大小" -#: htdocs/luci-static/resources/view/homeproxy/node.js:533 -#: htdocs/luci-static/resources/view/homeproxy/server.js:238 +#: htdocs/luci-static/resources/view/homeproxy/node.js:541 +#: htdocs/luci-static/resources/view/homeproxy/server.js:290 msgid "" "Disables Path MTU Discovery (RFC 8899). Packets will then be at most 1252 " "(IPv4) / 1232 (IPv6) bytes in size." @@ -526,46 +527,46 @@ msgstr "" "禁用路径 MTU 发现 (RFC 8899)。 数据包的大小最多为 1252 (IPv4) / 1232 (IPv6) " "字节。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:492 -#: htdocs/luci-static/resources/view/homeproxy/client.js:828 +#: htdocs/luci-static/resources/view/homeproxy/client.js:501 +#: htdocs/luci-static/resources/view/homeproxy/client.js:837 msgid "Domain keyword" msgstr "域名关键词" -#: htdocs/luci-static/resources/view/homeproxy/client.js:483 -#: htdocs/luci-static/resources/view/homeproxy/client.js:819 +#: htdocs/luci-static/resources/view/homeproxy/client.js:492 +#: htdocs/luci-static/resources/view/homeproxy/client.js:828 msgid "Domain name" msgstr "域名" -#: htdocs/luci-static/resources/view/homeproxy/client.js:496 -#: htdocs/luci-static/resources/view/homeproxy/client.js:832 +#: htdocs/luci-static/resources/view/homeproxy/client.js:505 +#: htdocs/luci-static/resources/view/homeproxy/client.js:841 msgid "Domain regex" msgstr "域名正则表达式" -#: htdocs/luci-static/resources/view/homeproxy/client.js:376 -#: htdocs/luci-static/resources/view/homeproxy/server.js:723 +#: htdocs/luci-static/resources/view/homeproxy/client.js:385 +#: htdocs/luci-static/resources/view/homeproxy/server.js:793 msgid "Domain strategy" msgstr "域名解析策略" -#: htdocs/luci-static/resources/view/homeproxy/client.js:488 -#: htdocs/luci-static/resources/view/homeproxy/client.js:824 +#: htdocs/luci-static/resources/view/homeproxy/client.js:497 +#: htdocs/luci-static/resources/view/homeproxy/client.js:833 msgid "Domain suffix" msgstr "域名后缀" -#: htdocs/luci-static/resources/view/homeproxy/server.js:521 +#: htdocs/luci-static/resources/view/homeproxy/server.js:584 msgid "Domains" msgstr "域名" -#: htdocs/luci-static/resources/view/homeproxy/node.js:923 -#: htdocs/luci-static/resources/view/homeproxy/server.js:438 +#: htdocs/luci-static/resources/view/homeproxy/node.js:931 +#: htdocs/luci-static/resources/view/homeproxy/server.js:501 msgid "Download bandwidth" msgstr "下载带宽" -#: htdocs/luci-static/resources/view/homeproxy/node.js:924 -#: htdocs/luci-static/resources/view/homeproxy/server.js:439 +#: htdocs/luci-static/resources/view/homeproxy/node.js:932 +#: htdocs/luci-static/resources/view/homeproxy/server.js:502 msgid "Download bandwidth in Mbps." msgstr "下载带宽(单位:Mbps)。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1313 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1321 msgid "" "Drop/keep nodes that contain the specific keywords. " "正则表达式。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1305 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1313 msgid "Drop/keep specific nodes from subscriptions." msgstr "从订阅中 丢弃/保留 指定节点" -#: htdocs/luci-static/resources/view/homeproxy/server.js:612 +#: htdocs/luci-static/resources/view/homeproxy/server.js:675 msgid "" "EAB (External Account Binding) contains information necessary to bind or map " "an ACME account to some other account known by the CA.
External account " @@ -590,7 +591,7 @@ msgstr "" "
外部帐户绑定“用于将 ACME 帐户与非 ACME 系统中的现有帐户相关联,例如 CA " "客户数据库。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1030 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1038 msgid "" "ECH (Encrypted Client Hello) is a TLS extension that allows a client to " "encrypt the first part of its ClientHello message." @@ -598,50 +599,50 @@ msgstr "" "ECH(Encrypted Client Hello)是一个 TLS 扩展,它允许客户端加密其 ClientHello " "信息的第一部分。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1045 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1053 msgid "ECH config" msgstr "ECH 配置" -#: htdocs/luci-static/resources/view/homeproxy/client.js:641 -#: htdocs/luci-static/resources/view/homeproxy/client.js:747 -#: htdocs/luci-static/resources/view/homeproxy/client.js:961 +#: htdocs/luci-static/resources/view/homeproxy/client.js:650 +#: htdocs/luci-static/resources/view/homeproxy/client.js:756 +#: htdocs/luci-static/resources/view/homeproxy/client.js:970 msgid "EDNS Client subnet" msgstr "ENDS 客户端子网" -#: htdocs/luci-static/resources/view/homeproxy/node.js:804 -#: htdocs/luci-static/resources/view/homeproxy/server.js:399 +#: htdocs/luci-static/resources/view/homeproxy/node.js:812 +#: htdocs/luci-static/resources/view/homeproxy/server.js:462 msgid "Early data" msgstr "前置数据" -#: htdocs/luci-static/resources/view/homeproxy/node.js:811 -#: htdocs/luci-static/resources/view/homeproxy/server.js:406 +#: htdocs/luci-static/resources/view/homeproxy/node.js:819 +#: htdocs/luci-static/resources/view/homeproxy/server.js:469 msgid "Early data header name" msgstr "前置数据标头" -#: htdocs/luci-static/resources/view/homeproxy/server.js:407 +#: htdocs/luci-static/resources/view/homeproxy/server.js:470 msgid "Early data is sent in path instead of header by default." msgstr "前置数据默认发送在路径而不是标头中。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1147 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1155 msgid "Edit nodes" msgstr "修改节点" -#: htdocs/luci-static/resources/view/homeproxy/server.js:533 +#: htdocs/luci-static/resources/view/homeproxy/server.js:596 msgid "Email" msgstr "Email" -#: htdocs/luci-static/resources/view/homeproxy/client.js:364 -#: htdocs/luci-static/resources/view/homeproxy/client.js:446 -#: htdocs/luci-static/resources/view/homeproxy/client.js:677 -#: htdocs/luci-static/resources/view/homeproxy/client.js:778 -#: htdocs/luci-static/resources/view/homeproxy/client.js:987 -#: htdocs/luci-static/resources/view/homeproxy/server.js:75 -#: htdocs/luci-static/resources/view/homeproxy/server.js:98 +#: htdocs/luci-static/resources/view/homeproxy/client.js:373 +#: htdocs/luci-static/resources/view/homeproxy/client.js:455 +#: htdocs/luci-static/resources/view/homeproxy/client.js:686 +#: htdocs/luci-static/resources/view/homeproxy/client.js:787 +#: htdocs/luci-static/resources/view/homeproxy/client.js:996 +#: htdocs/luci-static/resources/view/homeproxy/server.js:116 +#: htdocs/luci-static/resources/view/homeproxy/server.js:139 msgid "Enable" msgstr "启用" -#: htdocs/luci-static/resources/view/homeproxy/node.js:650 -#: htdocs/luci-static/resources/view/homeproxy/server.js:288 +#: htdocs/luci-static/resources/view/homeproxy/node.js:658 +#: htdocs/luci-static/resources/view/homeproxy/server.js:351 msgid "" "Enable 0-RTT QUIC connection handshake on the client side. This is not " "impacting much on the performance, as the protocol is fully multiplexed.
强烈建议禁用此功能,因为它容易受到重放攻击。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:649 -#: htdocs/luci-static/resources/view/homeproxy/server.js:287 +#: htdocs/luci-static/resources/view/homeproxy/node.js:657 +#: htdocs/luci-static/resources/view/homeproxy/server.js:350 msgid "Enable 0-RTT handshake" msgstr "启用 0-RTT 握手" -#: htdocs/luci-static/resources/view/homeproxy/server.js:515 +#: htdocs/luci-static/resources/view/homeproxy/server.js:578 msgid "Enable ACME" msgstr "启用 ACME" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1029 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1037 msgid "Enable ECH" msgstr "启用 ECH" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1040 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1048 msgid "Enable PQ signature schemes" msgstr "启用 PQ 签名方案" -#: htdocs/luci-static/resources/view/homeproxy/node.js:917 -#: htdocs/luci-static/resources/view/homeproxy/server.js:432 +#: htdocs/luci-static/resources/view/homeproxy/node.js:925 +#: htdocs/luci-static/resources/view/homeproxy/server.js:495 msgid "Enable TCP Brutal" msgstr "启用 TCP Brutal" -#: htdocs/luci-static/resources/view/homeproxy/node.js:918 -#: htdocs/luci-static/resources/view/homeproxy/server.js:433 +#: htdocs/luci-static/resources/view/homeproxy/node.js:926 +#: htdocs/luci-static/resources/view/homeproxy/server.js:496 msgid "Enable TCP Brutal congestion control algorithm" msgstr "启用 TCP Brutal 拥塞控制算法。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1111 -#: htdocs/luci-static/resources/view/homeproxy/server.js:714 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1119 +#: htdocs/luci-static/resources/view/homeproxy/server.js:777 msgid "Enable UDP fragmentation." msgstr "启用 UDP 分片。" @@ -686,88 +687,88 @@ msgstr "启用 UDP 分片。" msgid "Enable endpoint-independent NAT" msgstr "启用端点独立 NAT" -#: htdocs/luci-static/resources/view/homeproxy/node.js:912 -#: htdocs/luci-static/resources/view/homeproxy/server.js:426 +#: htdocs/luci-static/resources/view/homeproxy/node.js:920 +#: htdocs/luci-static/resources/view/homeproxy/server.js:489 msgid "Enable padding" msgstr "启用填充" -#: htdocs/luci-static/resources/view/homeproxy/server.js:703 +#: htdocs/luci-static/resources/view/homeproxy/server.js:766 msgid "Enable tcp fast open for listener." msgstr "为监听器启用 TCP 快速打开。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1116 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1124 msgid "" "Enable the SUoT protocol, requires server support. Conflict with multiplex." msgstr "启用 SUoT 协议,需要服务端支持。与多路复用冲突。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:540 -#: htdocs/luci-static/resources/view/homeproxy/node.js:677 -#: htdocs/luci-static/resources/view/homeproxy/server.js:256 +#: htdocs/luci-static/resources/view/homeproxy/node.js:548 +#: htdocs/luci-static/resources/view/homeproxy/node.js:685 +#: htdocs/luci-static/resources/view/homeproxy/server.js:308 msgid "Encrypt method" msgstr "加密方式" -#: htdocs/luci-static/resources/homeproxy.js:206 -#: htdocs/luci-static/resources/homeproxy.js:240 -#: htdocs/luci-static/resources/homeproxy.js:248 -#: htdocs/luci-static/resources/homeproxy.js:257 -#: htdocs/luci-static/resources/homeproxy.js:266 -#: htdocs/luci-static/resources/homeproxy.js:268 +#: htdocs/luci-static/resources/homeproxy.js:221 +#: htdocs/luci-static/resources/homeproxy.js:255 +#: htdocs/luci-static/resources/homeproxy.js:263 +#: htdocs/luci-static/resources/homeproxy.js:272 +#: htdocs/luci-static/resources/homeproxy.js:281 +#: htdocs/luci-static/resources/homeproxy.js:283 #: htdocs/luci-static/resources/view/homeproxy/client.js:75 #: htdocs/luci-static/resources/view/homeproxy/client.js:176 #: htdocs/luci-static/resources/view/homeproxy/client.js:178 #: htdocs/luci-static/resources/view/homeproxy/client.js:206 #: htdocs/luci-static/resources/view/homeproxy/client.js:244 #: htdocs/luci-static/resources/view/homeproxy/client.js:249 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1015 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1020 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1023 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1162 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1191 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1024 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1029 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1032 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1171 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1200 #: htdocs/luci-static/resources/view/homeproxy/node.js:452 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1074 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1234 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1294 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1297 -#: htdocs/luci-static/resources/view/homeproxy/server.js:159 -#: htdocs/luci-static/resources/view/homeproxy/server.js:539 -#: htdocs/luci-static/resources/view/homeproxy/server.js:541 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1082 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1242 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1302 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1305 +#: htdocs/luci-static/resources/view/homeproxy/server.js:211 +#: htdocs/luci-static/resources/view/homeproxy/server.js:602 +#: htdocs/luci-static/resources/view/homeproxy/server.js:604 msgid "Expecting: %s" msgstr "请输入:%s" -#: htdocs/luci-static/resources/view/homeproxy/server.js:611 +#: htdocs/luci-static/resources/view/homeproxy/server.js:674 msgid "External Account Binding" msgstr "外部账户绑定" -#: htdocs/luci-static/resources/view/homeproxy/server.js:623 +#: htdocs/luci-static/resources/view/homeproxy/server.js:686 msgid "External account MAC key" msgstr "外部账户 MAC 密钥" -#: htdocs/luci-static/resources/view/homeproxy/server.js:618 +#: htdocs/luci-static/resources/view/homeproxy/server.js:681 msgid "External account key ID" msgstr "外部账户密钥标识符" -#: htdocs/luci-static/resources/homeproxy.js:230 +#: htdocs/luci-static/resources/homeproxy.js:245 msgid "Failed to upload %s, error: %s." msgstr "上传 %s 失败,错误:%s。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1312 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1320 msgid "Filter keywords" msgstr "过滤关键词" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1304 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1312 msgid "Filter nodes" msgstr "过滤节点" -#: htdocs/luci-static/resources/view/homeproxy/node.js:665 -#: htdocs/luci-static/resources/view/homeproxy/server.js:303 +#: htdocs/luci-static/resources/view/homeproxy/node.js:673 +#: htdocs/luci-static/resources/view/homeproxy/server.js:366 msgid "Flow" msgstr "流控" -#: htdocs/luci-static/resources/view/homeproxy/client.js:998 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1007 msgid "Format" msgstr "格式" -#: htdocs/luci-static/resources/view/homeproxy/node.js:773 +#: htdocs/luci-static/resources/view/homeproxy/node.js:781 msgid "GET" msgstr "GET" @@ -779,20 +780,27 @@ msgstr "GFW 域名列表版本" msgid "GFWList" msgstr "GFWList" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1104 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1113 msgid "Gaming mode IPv4 IP-s" msgstr "游戏模式 IPv4 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1106 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1115 msgid "Gaming mode IPv6 IP-s" msgstr "游戏模式 IPv6 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1109 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1118 msgid "Gaming mode MAC-s" msgstr "游戏模式 MAC 地址" +#: htdocs/luci-static/resources/view/homeproxy/server.js:188 +#: htdocs/luci-static/resources/view/homeproxy/server.js:190 +#: htdocs/luci-static/resources/view/homeproxy/server.js:325 +#: htdocs/luci-static/resources/view/homeproxy/server.js:327 +msgid "Generate" +msgstr "生成" + #: htdocs/luci-static/resources/view/homeproxy/client.js:282 -#: htdocs/luci-static/resources/view/homeproxy/node.js:827 +#: htdocs/luci-static/resources/view/homeproxy/node.js:835 msgid "Generic segmentation offload" msgstr "通用分段卸载(GSO)" @@ -800,23 +808,23 @@ msgstr "通用分段卸载(GSO)" msgid "Global" msgstr "全局" -#: htdocs/luci-static/resources/view/homeproxy/node.js:688 +#: htdocs/luci-static/resources/view/homeproxy/node.js:696 msgid "Global padding" msgstr "全局填充" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1111 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1120 msgid "Global proxy IPv4 IP-s" msgstr "全局代理 IPv4 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1114 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1123 msgid "Global proxy IPv6 IP-s" msgstr "全局代理 IPv6 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1117 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1126 msgid "Global proxy MAC-s" msgstr "全局代理 MAC 地址" -#: htdocs/luci-static/resources/view/homeproxy/server.js:73 +#: htdocs/luci-static/resources/view/homeproxy/server.js:114 msgid "Global settings" msgstr "全局设置" @@ -832,36 +840,36 @@ msgstr "谷歌公共 DNS(8.8.8.8)" msgid "Grant access to homeproxy configuration" msgstr "授予 homeproxy 访问 UCI 配置的权限" -#: htdocs/luci-static/resources/view/homeproxy/client.js:473 -#: htdocs/luci-static/resources/view/homeproxy/client.js:813 +#: htdocs/luci-static/resources/view/homeproxy/client.js:482 +#: htdocs/luci-static/resources/view/homeproxy/client.js:822 #: htdocs/luci-static/resources/view/homeproxy/node.js:395 -#: htdocs/luci-static/resources/view/homeproxy/node.js:707 -#: htdocs/luci-static/resources/view/homeproxy/server.js:104 -#: htdocs/luci-static/resources/view/homeproxy/server.js:321 +#: htdocs/luci-static/resources/view/homeproxy/node.js:715 +#: htdocs/luci-static/resources/view/homeproxy/server.js:145 +#: htdocs/luci-static/resources/view/homeproxy/server.js:384 msgid "HTTP" msgstr "HTTP" -#: htdocs/luci-static/resources/view/homeproxy/server.js:250 +#: htdocs/luci-static/resources/view/homeproxy/server.js:302 msgid "" "HTTP3 server behavior when authentication fails.
A 404 page will be " "returned if empty." msgstr "身份验证失败时的 HTTP3 服务器响应。默认返回 404 页面。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:708 -#: htdocs/luci-static/resources/view/homeproxy/server.js:322 +#: htdocs/luci-static/resources/view/homeproxy/node.js:716 +#: htdocs/luci-static/resources/view/homeproxy/server.js:385 msgid "HTTPUpgrade" msgstr "HTTPUpgrade" -#: htdocs/luci-static/resources/view/homeproxy/server.js:651 +#: htdocs/luci-static/resources/view/homeproxy/server.js:714 msgid "Handshake server address" msgstr "握手服务器地址" -#: htdocs/luci-static/resources/view/homeproxy/server.js:657 +#: htdocs/luci-static/resources/view/homeproxy/server.js:720 msgid "Handshake server port" msgstr "握手服务器端口" -#: htdocs/luci-static/resources/view/homeproxy/node.js:656 -#: htdocs/luci-static/resources/view/homeproxy/server.js:294 +#: htdocs/luci-static/resources/view/homeproxy/node.js:664 +#: htdocs/luci-static/resources/view/homeproxy/server.js:357 msgid "Heartbeat interval" msgstr "心跳间隔" @@ -873,62 +881,62 @@ msgstr "心跳间隔" msgid "HomeProxy" msgstr "HomeProxy" -#: htdocs/luci-static/resources/view/homeproxy/server.js:37 -#: htdocs/luci-static/resources/view/homeproxy/server.js:39 -#: htdocs/luci-static/resources/view/homeproxy/server.js:56 +#: htdocs/luci-static/resources/view/homeproxy/server.js:38 +#: htdocs/luci-static/resources/view/homeproxy/server.js:40 +#: htdocs/luci-static/resources/view/homeproxy/server.js:97 msgid "HomeProxy Server" msgstr "HomeProxy 服务端" -#: htdocs/luci-static/resources/view/homeproxy/node.js:757 -#: htdocs/luci-static/resources/view/homeproxy/node.js:762 -#: htdocs/luci-static/resources/view/homeproxy/node.js:796 -#: htdocs/luci-static/resources/view/homeproxy/server.js:355 -#: htdocs/luci-static/resources/view/homeproxy/server.js:360 -#: htdocs/luci-static/resources/view/homeproxy/server.js:391 +#: htdocs/luci-static/resources/view/homeproxy/node.js:765 +#: htdocs/luci-static/resources/view/homeproxy/node.js:770 +#: htdocs/luci-static/resources/view/homeproxy/node.js:804 +#: htdocs/luci-static/resources/view/homeproxy/server.js:418 +#: htdocs/luci-static/resources/view/homeproxy/server.js:423 +#: htdocs/luci-static/resources/view/homeproxy/server.js:454 msgid "Host" msgstr "主机名" -#: htdocs/luci-static/resources/view/homeproxy/client.js:436 -#: htdocs/luci-static/resources/view/homeproxy/client.js:768 +#: htdocs/luci-static/resources/view/homeproxy/client.js:445 +#: htdocs/luci-static/resources/view/homeproxy/client.js:777 msgid "Host fields" msgstr "主机字段" -#: htdocs/luci-static/resources/view/homeproxy/node.js:597 +#: htdocs/luci-static/resources/view/homeproxy/node.js:605 msgid "Host key" msgstr "主机密钥" -#: htdocs/luci-static/resources/view/homeproxy/node.js:602 +#: htdocs/luci-static/resources/view/homeproxy/node.js:610 msgid "Host key algorithms" msgstr "主机密钥算法" -#: htdocs/luci-static/resources/view/homeproxy/server.js:281 +#: htdocs/luci-static/resources/view/homeproxy/server.js:344 msgid "" "How long the server should wait for the client to send the authentication " "command (in seconds)." msgstr "服务器等待客户端发送认证命令的时间(单位:秒)。" #: htdocs/luci-static/resources/view/homeproxy/node.js:397 -#: htdocs/luci-static/resources/view/homeproxy/server.js:106 +#: htdocs/luci-static/resources/view/homeproxy/server.js:147 msgid "Hysteria" msgstr "Hysteria" #: htdocs/luci-static/resources/view/homeproxy/node.js:398 -#: htdocs/luci-static/resources/view/homeproxy/server.js:107 +#: htdocs/luci-static/resources/view/homeproxy/server.js:148 msgid "Hysteria2" msgstr "Hysteria2" -#: htdocs/luci-static/resources/view/homeproxy/client.js:511 -#: htdocs/luci-static/resources/view/homeproxy/client.js:856 +#: htdocs/luci-static/resources/view/homeproxy/client.js:520 +#: htdocs/luci-static/resources/view/homeproxy/client.js:865 msgid "IP CIDR" msgstr "IP CIDR" -#: htdocs/luci-static/resources/view/homeproxy/client.js:464 -#: htdocs/luci-static/resources/view/homeproxy/client.js:796 +#: htdocs/luci-static/resources/view/homeproxy/client.js:473 +#: htdocs/luci-static/resources/view/homeproxy/client.js:805 msgid "IP version" msgstr "IP 版本" -#: htdocs/luci-static/resources/view/homeproxy/client.js:466 -#: htdocs/luci-static/resources/view/homeproxy/client.js:797 +#: htdocs/luci-static/resources/view/homeproxy/client.js:475 +#: htdocs/luci-static/resources/view/homeproxy/client.js:806 msgid "IPv4" msgstr "IPv4" @@ -936,8 +944,8 @@ msgstr "IPv4" msgid "IPv4 only" msgstr "仅 IPv4" -#: htdocs/luci-static/resources/view/homeproxy/client.js:467 -#: htdocs/luci-static/resources/view/homeproxy/client.js:798 +#: htdocs/luci-static/resources/view/homeproxy/client.js:476 +#: htdocs/luci-static/resources/view/homeproxy/client.js:807 msgid "IPv6" msgstr "IPv6" @@ -949,31 +957,31 @@ msgstr "仅 IPv6" msgid "IPv6 support" msgstr "IPv6 支持" -#: htdocs/luci-static/resources/view/homeproxy/node.js:778 -#: htdocs/luci-static/resources/view/homeproxy/server.js:374 +#: htdocs/luci-static/resources/view/homeproxy/node.js:786 +#: htdocs/luci-static/resources/view/homeproxy/server.js:437 msgid "Idle timeout" msgstr "空闲超时" -#: htdocs/luci-static/resources/view/homeproxy/node.js:749 +#: htdocs/luci-static/resources/view/homeproxy/node.js:757 msgid "" "If enabled, the client transport sends keepalive pings even with no active " "connections." msgstr "如果启用,客户端传输即使没有活动连接也会发送 keepalive ping。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:724 +#: htdocs/luci-static/resources/view/homeproxy/server.js:794 msgid "" "If set, the requested domain name will be resolved to IP before routing." msgstr "如果设置,请求的域名将在路由前被解析为 IP 地址。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:377 +#: htdocs/luci-static/resources/view/homeproxy/client.js:386 msgid "" "If set, the server domain name will be resolved to IP before connecting.
dns.strategy will be used if empty." msgstr "" "如果设置,服务器域名将在连接前被解析为 IP。
默认使用 dns.strategy。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:734 -#: htdocs/luci-static/resources/view/homeproxy/server.js:343 +#: htdocs/luci-static/resources/view/homeproxy/node.js:742 +#: htdocs/luci-static/resources/view/homeproxy/server.js:406 msgid "" "If the transport doesn't see any activity after a duration of this time (in " "seconds), it pings the client to check if the connection is still active." @@ -981,48 +989,53 @@ msgstr "" "如果传输在此时间段(单位:秒)后没有看到任何活动,它会向客户端发送 ping 请求" "以检查连接是否仍然活动。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1008 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1016 msgid "" "If you have the root certificate, use this option instead of allowing " "insecure." msgstr "如果你拥有根证书,使用此选项而不是允许不安全连接。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:243 +#: htdocs/luci-static/resources/view/homeproxy/server.js:295 msgid "Ignore client bandwidth" msgstr "忽略客户端带宽" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1217 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1225 msgid "Import" msgstr "导入" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1164 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1243 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1245 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1172 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1251 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1253 msgid "Import share links" msgstr "导入分享链接" -#: htdocs/luci-static/resources/view/homeproxy/client.js:636 +#: htdocs/luci-static/resources/view/homeproxy/client.js:317 +#: htdocs/luci-static/resources/view/homeproxy/server.js:783 +msgid "In seconds. 300 is used by default." +msgstr "单位:秒。默认使用 300。" + +#: htdocs/luci-static/resources/view/homeproxy/client.js:645 msgid "Independent cache per server" msgstr "独立缓存" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1063 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1072 msgid "Interface Control" msgstr "接口控制" -#: htdocs/luci-static/resources/view/homeproxy/node.js:657 -#: htdocs/luci-static/resources/view/homeproxy/server.js:295 +#: htdocs/luci-static/resources/view/homeproxy/node.js:665 +#: htdocs/luci-static/resources/view/homeproxy/server.js:358 msgid "" "Interval for sending heartbeat packets for keeping the connection alive (in " "seconds)." msgstr "发送心跳包以保持连接存活的时间间隔(单位:秒)。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:576 -#: htdocs/luci-static/resources/view/homeproxy/client.js:909 +#: htdocs/luci-static/resources/view/homeproxy/client.js:585 +#: htdocs/luci-static/resources/view/homeproxy/client.js:918 msgid "Invert" msgstr "反转" -#: htdocs/luci-static/resources/view/homeproxy/client.js:577 -#: htdocs/luci-static/resources/view/homeproxy/client.js:910 +#: htdocs/luci-static/resources/view/homeproxy/client.js:586 +#: htdocs/luci-static/resources/view/homeproxy/client.js:919 msgid "Invert match result." msgstr "反转匹配结果" @@ -1030,26 +1043,26 @@ msgstr "反转匹配结果" msgid "It MUST support TCP query." msgstr "它必须支持 TCP 查询。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:682 +#: htdocs/luci-static/resources/view/homeproxy/server.js:745 msgid "Key path" msgstr "证书路径" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1077 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1086 msgid "LAN IP Policy" msgstr "LAN IP 策略" -#: htdocs/luci-static/resources/view/homeproxy/client.js:359 -#: htdocs/luci-static/resources/view/homeproxy/client.js:441 -#: htdocs/luci-static/resources/view/homeproxy/client.js:672 -#: htdocs/luci-static/resources/view/homeproxy/client.js:773 -#: htdocs/luci-static/resources/view/homeproxy/client.js:982 +#: htdocs/luci-static/resources/view/homeproxy/client.js:368 +#: htdocs/luci-static/resources/view/homeproxy/client.js:450 +#: htdocs/luci-static/resources/view/homeproxy/client.js:681 +#: htdocs/luci-static/resources/view/homeproxy/client.js:782 +#: htdocs/luci-static/resources/view/homeproxy/client.js:991 #: htdocs/luci-static/resources/view/homeproxy/node.js:388 -#: htdocs/luci-static/resources/view/homeproxy/server.js:92 +#: htdocs/luci-static/resources/view/homeproxy/server.js:133 msgid "Label" msgstr "标签" -#: htdocs/luci-static/resources/view/homeproxy/node.js:672 -#: htdocs/luci-static/resources/view/homeproxy/server.js:310 +#: htdocs/luci-static/resources/view/homeproxy/node.js:680 +#: htdocs/luci-static/resources/view/homeproxy/server.js:373 msgid "" "Legacy protocol support (VMess MD5 Authentication) is provided for " "compatibility purposes only, use of alterId > 1 is not recommended." @@ -1061,29 +1074,29 @@ msgstr "" msgid "Less compatibility and sometimes better performance." msgstr "有时性能更好。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:550 +#: htdocs/luci-static/resources/view/homeproxy/server.js:613 msgid "Let's Encrypt" msgstr "Let's Encrypt" -#: htdocs/luci-static/resources/view/homeproxy/node.js:834 +#: htdocs/luci-static/resources/view/homeproxy/node.js:842 msgid "" "List of IP (v4 or v6) addresses prefixes to be assigned to the interface." msgstr "分配给接口的 IP(v4 或 v6)地址前缀列表。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:970 -#: htdocs/luci-static/resources/view/homeproxy/server.js:486 +#: htdocs/luci-static/resources/view/homeproxy/node.js:978 +#: htdocs/luci-static/resources/view/homeproxy/server.js:549 msgid "List of supported application level protocols, in order of preference." msgstr "支持的应用层协议协商列表,按顺序排列。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:119 +#: htdocs/luci-static/resources/view/homeproxy/server.js:160 msgid "Listen address" msgstr "监听地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1065 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1074 msgid "Listen interfaces" msgstr "监听接口" -#: htdocs/luci-static/resources/view/homeproxy/server.js:124 +#: htdocs/luci-static/resources/view/homeproxy/server.js:165 msgid "Listen port" msgstr "监听端口" @@ -1091,11 +1104,11 @@ msgstr "监听端口" msgid "Loading" msgstr "加载中" -#: htdocs/luci-static/resources/view/homeproxy/client.js:993 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1002 msgid "Local" msgstr "本地" -#: htdocs/luci-static/resources/view/homeproxy/node.js:833 +#: htdocs/luci-static/resources/view/homeproxy/node.js:841 msgid "Local address" msgstr "本地地址" @@ -1107,7 +1120,7 @@ msgstr "日志文件不存在。" msgid "Log is empty." msgstr "日志为空。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:867 +#: htdocs/luci-static/resources/view/homeproxy/node.js:875 msgid "MTU" msgstr "MTU" @@ -1119,156 +1132,156 @@ msgstr "主 UDP 节点" msgid "Main node" msgstr "主节点" -#: htdocs/luci-static/resources/view/homeproxy/client.js:905 +#: htdocs/luci-static/resources/view/homeproxy/client.js:914 msgid "Make ipcidr in rule sets match the source IP." msgstr "使规则集中的 ipcidr 用于匹配源 IP。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:571 +#: htdocs/luci-static/resources/view/homeproxy/client.js:580 msgid "Make IP CIDR in rule set used to match the source IP." msgstr "使规则集中的 IP CIDR 用于匹配源 IP。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:637 +#: htdocs/luci-static/resources/view/homeproxy/client.js:646 msgid "" "Make each DNS server's cache independent for special purposes. If enabled, " "will slightly degrade performance." msgstr "独立缓存每个 DNS 服务器的结果以供特殊用途。启用后会略微降低性能。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:249 +#: htdocs/luci-static/resources/view/homeproxy/server.js:301 msgid "Masquerade" msgstr "伪装" -#: htdocs/luci-static/resources/view/homeproxy/client.js:915 +#: htdocs/luci-static/resources/view/homeproxy/client.js:924 msgid "Match .outbounds[].server domains." msgstr "匹配 .outbounds[].server 域名。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:857 +#: htdocs/luci-static/resources/view/homeproxy/client.js:866 msgid "Match IP CIDR with query response." msgstr "使用查询响应匹配 IP CIDR。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:512 +#: htdocs/luci-static/resources/view/homeproxy/client.js:521 msgid "Match IP CIDR." msgstr "匹配 IP CIDR。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:489 -#: htdocs/luci-static/resources/view/homeproxy/client.js:825 +#: htdocs/luci-static/resources/view/homeproxy/client.js:498 +#: htdocs/luci-static/resources/view/homeproxy/client.js:834 msgid "Match domain suffix." msgstr "匹配域名后缀。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:493 -#: htdocs/luci-static/resources/view/homeproxy/client.js:829 +#: htdocs/luci-static/resources/view/homeproxy/client.js:502 +#: htdocs/luci-static/resources/view/homeproxy/client.js:838 msgid "Match domain using keyword." msgstr "使用关键词匹配域名。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:497 -#: htdocs/luci-static/resources/view/homeproxy/client.js:833 +#: htdocs/luci-static/resources/view/homeproxy/client.js:506 +#: htdocs/luci-static/resources/view/homeproxy/client.js:842 msgid "Match domain using regular expression." msgstr "使用正则表达式匹配域名。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:484 -#: htdocs/luci-static/resources/view/homeproxy/client.js:820 +#: htdocs/luci-static/resources/view/homeproxy/client.js:493 +#: htdocs/luci-static/resources/view/homeproxy/client.js:829 msgid "Match full domain." msgstr "匹配完整域名。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:538 -#: htdocs/luci-static/resources/view/homeproxy/client.js:842 +#: htdocs/luci-static/resources/view/homeproxy/client.js:547 +#: htdocs/luci-static/resources/view/homeproxy/client.js:851 msgid "Match port range. Format as START:/:END/START:END." msgstr "匹配端口范围。格式为 START:/:END/START:END。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:533 -#: htdocs/luci-static/resources/view/homeproxy/client.js:837 +#: htdocs/luci-static/resources/view/homeproxy/client.js:542 +#: htdocs/luci-static/resources/view/homeproxy/client.js:846 msgid "Match port." msgstr "匹配端口。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:862 +#: htdocs/luci-static/resources/view/homeproxy/client.js:871 msgid "Match private IP with query response." msgstr "使用查询响应匹配私有 IP。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:517 +#: htdocs/luci-static/resources/view/homeproxy/client.js:526 msgid "Match private IP." msgstr "匹配私有 IP。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:506 -#: htdocs/luci-static/resources/view/homeproxy/client.js:852 +#: htdocs/luci-static/resources/view/homeproxy/client.js:515 +#: htdocs/luci-static/resources/view/homeproxy/client.js:861 msgid "Match private source IP." msgstr "匹配私有源 IP。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:543 -#: htdocs/luci-static/resources/view/homeproxy/client.js:877 +#: htdocs/luci-static/resources/view/homeproxy/client.js:552 +#: htdocs/luci-static/resources/view/homeproxy/client.js:886 msgid "Match process name." msgstr "匹配进程名。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:547 -#: htdocs/luci-static/resources/view/homeproxy/client.js:881 +#: htdocs/luci-static/resources/view/homeproxy/client.js:556 +#: htdocs/luci-static/resources/view/homeproxy/client.js:890 msgid "Match process path." msgstr "匹配进程路径。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:803 +#: htdocs/luci-static/resources/view/homeproxy/client.js:812 msgid "Match query type." msgstr "匹配请求类型。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:555 -#: htdocs/luci-static/resources/view/homeproxy/client.js:889 +#: htdocs/luci-static/resources/view/homeproxy/client.js:564 +#: htdocs/luci-static/resources/view/homeproxy/client.js:898 msgid "Match rule set." msgstr "匹配规则集。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:501 -#: htdocs/luci-static/resources/view/homeproxy/client.js:847 +#: htdocs/luci-static/resources/view/homeproxy/client.js:510 +#: htdocs/luci-static/resources/view/homeproxy/client.js:856 msgid "Match source IP CIDR." msgstr "匹配源 IP CIDR。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:570 +#: htdocs/luci-static/resources/view/homeproxy/client.js:579 msgid "Match source IP via rule set" msgstr "通过规则集匹配源 IP" -#: htdocs/luci-static/resources/view/homeproxy/client.js:528 -#: htdocs/luci-static/resources/view/homeproxy/client.js:872 +#: htdocs/luci-static/resources/view/homeproxy/client.js:537 +#: htdocs/luci-static/resources/view/homeproxy/client.js:881 msgid "Match source port range. Format as START:/:END/START:END." msgstr "匹配源端口范围。格式为 START:/:END/START:END。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:523 -#: htdocs/luci-static/resources/view/homeproxy/client.js:867 +#: htdocs/luci-static/resources/view/homeproxy/client.js:532 +#: htdocs/luci-static/resources/view/homeproxy/client.js:876 msgid "Match source port." msgstr "匹配源端口。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:551 -#: htdocs/luci-static/resources/view/homeproxy/client.js:885 +#: htdocs/luci-static/resources/view/homeproxy/client.js:560 +#: htdocs/luci-static/resources/view/homeproxy/client.js:894 msgid "Match user name." msgstr "匹配用户名。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:506 -#: htdocs/luci-static/resources/view/homeproxy/server.js:179 +#: htdocs/luci-static/resources/view/homeproxy/node.js:514 +#: htdocs/luci-static/resources/view/homeproxy/server.js:231 msgid "Max download speed" msgstr "最大下载速度" -#: htdocs/luci-static/resources/view/homeproxy/node.js:507 -#: htdocs/luci-static/resources/view/homeproxy/server.js:180 +#: htdocs/luci-static/resources/view/homeproxy/node.js:515 +#: htdocs/luci-static/resources/view/homeproxy/server.js:232 msgid "Max download speed in Mbps." msgstr "最大下载速度(Mbps)。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:646 +#: htdocs/luci-static/resources/view/homeproxy/server.js:709 msgid "Max time difference" msgstr "最大时间差" -#: htdocs/luci-static/resources/view/homeproxy/node.js:513 -#: htdocs/luci-static/resources/view/homeproxy/server.js:186 +#: htdocs/luci-static/resources/view/homeproxy/node.js:521 +#: htdocs/luci-static/resources/view/homeproxy/server.js:238 msgid "Max upload speed" msgstr "最大上传速度" -#: htdocs/luci-static/resources/view/homeproxy/node.js:514 -#: htdocs/luci-static/resources/view/homeproxy/server.js:187 +#: htdocs/luci-static/resources/view/homeproxy/node.js:522 +#: htdocs/luci-static/resources/view/homeproxy/server.js:239 msgid "Max upload speed in Mbps." msgstr "最大上传速度(Mbps)。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:991 -#: htdocs/luci-static/resources/view/homeproxy/server.js:498 +#: htdocs/luci-static/resources/view/homeproxy/node.js:999 +#: htdocs/luci-static/resources/view/homeproxy/server.js:561 msgid "Maximum TLS version" msgstr "最大 TLS 版本" -#: htdocs/luci-static/resources/view/homeproxy/node.js:894 +#: htdocs/luci-static/resources/view/homeproxy/node.js:902 msgid "Maximum connections" msgstr "最大连接数" -#: htdocs/luci-static/resources/view/homeproxy/node.js:906 +#: htdocs/luci-static/resources/view/homeproxy/node.js:914 msgid "" "Maximum multiplexed streams in a connection before opening a new connection." "
Conflict with Maximum connections and Minimum " @@ -1277,26 +1290,26 @@ msgstr "" "在打开新连接之前,连接中的最大多路复用流数量。与 Maximum connectionsMinimum streams 冲突。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:905 +#: htdocs/luci-static/resources/view/homeproxy/node.js:913 msgid "Maximum streams" msgstr "最大流数量" -#: htdocs/luci-static/resources/view/homeproxy/node.js:772 -#: htdocs/luci-static/resources/view/homeproxy/server.js:370 +#: htdocs/luci-static/resources/view/homeproxy/node.js:780 +#: htdocs/luci-static/resources/view/homeproxy/server.js:433 msgid "Method" msgstr "方式" -#: htdocs/luci-static/resources/view/homeproxy/node.js:983 -#: htdocs/luci-static/resources/view/homeproxy/server.js:490 +#: htdocs/luci-static/resources/view/homeproxy/node.js:991 +#: htdocs/luci-static/resources/view/homeproxy/server.js:553 msgid "Minimum TLS version" msgstr "最低 TLS 版本" -#: htdocs/luci-static/resources/view/homeproxy/node.js:900 +#: htdocs/luci-static/resources/view/homeproxy/node.js:908 msgid "" "Minimum multiplexed streams in a connection before opening a new connection." msgstr "在打开新连接之前,连接中的最小多路复用流数量。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:899 +#: htdocs/luci-static/resources/view/homeproxy/node.js:907 msgid "Minimum streams" msgstr "最小流数量" @@ -1308,77 +1321,77 @@ msgstr "混合" msgid "Mixed system TCP stack and gVisor UDP stack." msgstr "混合系统 TCP 栈和 gVisor UDP 栈。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:451 -#: htdocs/luci-static/resources/view/homeproxy/client.js:783 +#: htdocs/luci-static/resources/view/homeproxy/client.js:460 +#: htdocs/luci-static/resources/view/homeproxy/client.js:792 msgid "Mode" msgstr "模式" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1106 -#: htdocs/luci-static/resources/view/homeproxy/server.js:708 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1114 +#: htdocs/luci-static/resources/view/homeproxy/server.js:771 msgid "MultiPath TCP" msgstr "多路径 TCP(MPTCP)" -#: htdocs/luci-static/resources/view/homeproxy/node.js:876 -#: htdocs/luci-static/resources/view/homeproxy/server.js:418 +#: htdocs/luci-static/resources/view/homeproxy/node.js:884 +#: htdocs/luci-static/resources/view/homeproxy/server.js:481 msgid "Multiplex" msgstr "多路复用" -#: htdocs/luci-static/resources/view/homeproxy/node.js:885 +#: htdocs/luci-static/resources/view/homeproxy/node.js:893 msgid "Multiplex protocol." msgstr "多路复用协议。" #: htdocs/luci-static/resources/view/homeproxy/client.js:57 -#: htdocs/luci-static/resources/view/homeproxy/server.js:39 +#: htdocs/luci-static/resources/view/homeproxy/server.js:40 msgid "NOT RUNNING" msgstr "未运行" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1331 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1339 msgid "NOTE: Save current settings before updating subscriptions." msgstr "注意:更新订阅前先保存当前配置。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:638 +#: htdocs/luci-static/resources/view/homeproxy/node.js:646 msgid "Native" msgstr "原生" -#: htdocs/luci-static/resources/view/homeproxy/server.js:108 +#: htdocs/luci-static/resources/view/homeproxy/server.js:149 msgid "NaïveProxy" msgstr "NaïveProxy" -#: htdocs/luci-static/resources/view/homeproxy/client.js:478 -#: htdocs/luci-static/resources/view/homeproxy/client.js:806 -#: htdocs/luci-static/resources/view/homeproxy/server.js:729 +#: htdocs/luci-static/resources/view/homeproxy/client.js:487 +#: htdocs/luci-static/resources/view/homeproxy/client.js:815 +#: htdocs/luci-static/resources/view/homeproxy/server.js:799 msgid "Network" msgstr "网络" -#: htdocs/luci-static/resources/view/homeproxy/node.js:628 +#: htdocs/luci-static/resources/view/homeproxy/node.js:636 msgid "New Reno" msgstr "New Reno" -#: htdocs/luci-static/resources/view/homeproxy/node.js:704 -#: htdocs/luci-static/resources/view/homeproxy/node.js:721 -#: htdocs/luci-static/resources/view/homeproxy/server.js:318 -#: htdocs/luci-static/resources/view/homeproxy/server.js:335 +#: htdocs/luci-static/resources/view/homeproxy/node.js:712 +#: htdocs/luci-static/resources/view/homeproxy/node.js:729 +#: htdocs/luci-static/resources/view/homeproxy/server.js:381 +#: htdocs/luci-static/resources/view/homeproxy/server.js:398 msgid "No TCP transport, plain HTTP is merged into the HTTP transport." msgstr "无 TCP 传输层, 纯 HTTP 已合并到 HTTP 传输层。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:719 -#: htdocs/luci-static/resources/view/homeproxy/server.js:333 +#: htdocs/luci-static/resources/view/homeproxy/node.js:727 +#: htdocs/luci-static/resources/view/homeproxy/server.js:396 msgid "No additional encryption support: It's basically duplicate encryption." msgstr "无额外加密支持:它基本上是重复加密。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1347 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1355 msgid "No subscription available" msgstr "无可用订阅" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1372 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1380 msgid "No subscription node" msgstr "无订阅节点" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1203 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1211 msgid "No valid share link found." msgstr "找不到有效分享链接。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:369 +#: htdocs/luci-static/resources/view/homeproxy/client.js:378 #: htdocs/luci-static/resources/view/homeproxy/node.js:363 msgid "Node" msgstr "节点" @@ -1387,29 +1400,29 @@ msgstr "节点" msgid "Node Settings" msgstr "节点设置" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1153 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1161 msgid "Nodes" msgstr "节点" -#: htdocs/luci-static/resources/view/homeproxy/client.js:692 -#: htdocs/luci-static/resources/view/homeproxy/node.js:666 -#: htdocs/luci-static/resources/view/homeproxy/node.js:705 -#: htdocs/luci-static/resources/view/homeproxy/server.js:304 -#: htdocs/luci-static/resources/view/homeproxy/server.js:319 +#: htdocs/luci-static/resources/view/homeproxy/client.js:701 +#: htdocs/luci-static/resources/view/homeproxy/node.js:674 +#: htdocs/luci-static/resources/view/homeproxy/node.js:713 +#: htdocs/luci-static/resources/view/homeproxy/server.js:367 +#: htdocs/luci-static/resources/view/homeproxy/server.js:382 msgid "None" msgstr "无" -#: htdocs/luci-static/resources/view/homeproxy/node.js:501 -#: htdocs/luci-static/resources/view/homeproxy/server.js:211 +#: htdocs/luci-static/resources/view/homeproxy/node.js:509 +#: htdocs/luci-static/resources/view/homeproxy/server.js:263 msgid "Obfuscate password" msgstr "混淆密码" -#: htdocs/luci-static/resources/view/homeproxy/node.js:495 -#: htdocs/luci-static/resources/view/homeproxy/server.js:205 +#: htdocs/luci-static/resources/view/homeproxy/node.js:503 +#: htdocs/luci-static/resources/view/homeproxy/server.js:257 msgid "Obfuscate type" msgstr "混淆类型" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1066 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1075 msgid "Only process traffic from specific interfaces. Leave empty for all." msgstr "只处理来自指定接口的流量。留空表示全部。" @@ -1417,20 +1430,20 @@ msgstr "只处理来自指定接口的流量。留空表示全部。" msgid "Only proxy mainland China" msgstr "仅代理中国大陆" -#: htdocs/luci-static/resources/view/homeproxy/client.js:435 -#: htdocs/luci-static/resources/view/homeproxy/client.js:767 +#: htdocs/luci-static/resources/view/homeproxy/client.js:444 +#: htdocs/luci-static/resources/view/homeproxy/client.js:776 msgid "Other fields" msgstr "其他字段" -#: htdocs/luci-static/resources/view/homeproxy/client.js:389 -#: htdocs/luci-static/resources/view/homeproxy/client.js:581 -#: htdocs/luci-static/resources/view/homeproxy/client.js:729 -#: htdocs/luci-static/resources/view/homeproxy/client.js:914 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1033 +#: htdocs/luci-static/resources/view/homeproxy/client.js:398 +#: htdocs/luci-static/resources/view/homeproxy/client.js:590 +#: htdocs/luci-static/resources/view/homeproxy/client.js:738 +#: htdocs/luci-static/resources/view/homeproxy/client.js:923 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1042 msgid "Outbound" msgstr "出站" -#: htdocs/luci-static/resources/view/homeproxy/client.js:370 +#: htdocs/luci-static/resources/view/homeproxy/client.js:379 msgid "Outbound node" msgstr "出站节点" @@ -1438,8 +1451,8 @@ msgstr "出站节点" msgid "Override address" msgstr "覆盖地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:321 -#: htdocs/luci-static/resources/view/homeproxy/server.js:719 +#: htdocs/luci-static/resources/view/homeproxy/client.js:330 +#: htdocs/luci-static/resources/view/homeproxy/server.js:789 msgid "Override destination" msgstr "覆盖目标地址" @@ -1447,8 +1460,8 @@ msgstr "覆盖目标地址" msgid "Override port" msgstr "覆盖端口" -#: htdocs/luci-static/resources/view/homeproxy/client.js:322 -#: htdocs/luci-static/resources/view/homeproxy/server.js:720 +#: htdocs/luci-static/resources/view/homeproxy/client.js:331 +#: htdocs/luci-static/resources/view/homeproxy/server.js:790 msgid "Override the connection destination address with the sniffed domain." msgstr "使用嗅探到的域名覆盖连接目标。" @@ -1460,28 +1473,28 @@ msgstr "覆盖目标连接地址。" msgid "Override the connection destination port." msgstr "覆盖目标连接端口。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:774 +#: htdocs/luci-static/resources/view/homeproxy/node.js:782 msgid "PUT" msgstr "PUT" -#: htdocs/luci-static/resources/view/homeproxy/node.js:817 +#: htdocs/luci-static/resources/view/homeproxy/node.js:825 msgid "Packet encoding" msgstr "数据包编码" #: htdocs/luci-static/resources/view/homeproxy/node.js:429 -#: htdocs/luci-static/resources/view/homeproxy/server.js:135 +#: htdocs/luci-static/resources/view/homeproxy/server.js:176 msgid "Password" msgstr "密码" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1004 -#: htdocs/luci-static/resources/view/homeproxy/node.js:767 -#: htdocs/luci-static/resources/view/homeproxy/node.js:800 -#: htdocs/luci-static/resources/view/homeproxy/server.js:365 -#: htdocs/luci-static/resources/view/homeproxy/server.js:395 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1013 +#: htdocs/luci-static/resources/view/homeproxy/node.js:775 +#: htdocs/luci-static/resources/view/homeproxy/node.js:808 +#: htdocs/luci-static/resources/view/homeproxy/server.js:428 +#: htdocs/luci-static/resources/view/homeproxy/server.js:458 msgid "Path" msgstr "路径" -#: htdocs/luci-static/resources/view/homeproxy/node.js:848 +#: htdocs/luci-static/resources/view/homeproxy/node.js:856 msgid "Peer pubkic key" msgstr "对端公钥" @@ -1491,21 +1504,21 @@ msgid "" "it is not needed." msgstr "性能可能会略有下降,建议仅在需要时开启。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:786 -#: htdocs/luci-static/resources/view/homeproxy/server.js:382 +#: htdocs/luci-static/resources/view/homeproxy/node.js:794 +#: htdocs/luci-static/resources/view/homeproxy/server.js:445 msgid "Ping timeout" msgstr "Ping 超时" -#: htdocs/luci-static/resources/view/homeproxy/node.js:558 +#: htdocs/luci-static/resources/view/homeproxy/node.js:566 msgid "Plugin" msgstr "插件" -#: htdocs/luci-static/resources/view/homeproxy/node.js:565 +#: htdocs/luci-static/resources/view/homeproxy/node.js:573 msgid "Plugin opts" msgstr "插件参数" -#: htdocs/luci-static/resources/view/homeproxy/client.js:532 -#: htdocs/luci-static/resources/view/homeproxy/client.js:836 +#: htdocs/luci-static/resources/view/homeproxy/client.js:541 +#: htdocs/luci-static/resources/view/homeproxy/client.js:845 #: htdocs/luci-static/resources/view/homeproxy/node.js:418 msgid "Port" msgstr "端口" @@ -1514,17 +1527,17 @@ msgstr "端口" msgid "Port %s alrealy exists!" msgstr "端口 %s 已存在!" -#: htdocs/luci-static/resources/view/homeproxy/client.js:437 -#: htdocs/luci-static/resources/view/homeproxy/client.js:769 +#: htdocs/luci-static/resources/view/homeproxy/client.js:446 +#: htdocs/luci-static/resources/view/homeproxy/client.js:778 msgid "Port fields" msgstr "端口字段" -#: htdocs/luci-static/resources/view/homeproxy/client.js:537 -#: htdocs/luci-static/resources/view/homeproxy/client.js:841 +#: htdocs/luci-static/resources/view/homeproxy/client.js:546 +#: htdocs/luci-static/resources/view/homeproxy/client.js:850 msgid "Port range" msgstr "端口范围" -#: htdocs/luci-static/resources/view/homeproxy/node.js:855 +#: htdocs/luci-static/resources/view/homeproxy/node.js:863 msgid "Pre-shared key" msgstr "预共享密钥" @@ -1536,80 +1549,80 @@ msgstr "优先 IPv4" msgid "Prefer IPv6" msgstr "优先 IPv6" -#: htdocs/luci-static/resources/view/homeproxy/client.js:516 -#: htdocs/luci-static/resources/view/homeproxy/client.js:861 +#: htdocs/luci-static/resources/view/homeproxy/client.js:525 +#: htdocs/luci-static/resources/view/homeproxy/client.js:870 msgid "Private IP" msgstr "私有 IP" -#: htdocs/luci-static/resources/view/homeproxy/node.js:606 -#: htdocs/luci-static/resources/view/homeproxy/node.js:840 +#: htdocs/luci-static/resources/view/homeproxy/node.js:614 +#: htdocs/luci-static/resources/view/homeproxy/node.js:848 msgid "Private key" msgstr "私钥" -#: htdocs/luci-static/resources/view/homeproxy/node.js:611 +#: htdocs/luci-static/resources/view/homeproxy/node.js:619 msgid "Private key passphrase" msgstr "私钥指纹" -#: htdocs/luci-static/resources/view/homeproxy/client.js:505 -#: htdocs/luci-static/resources/view/homeproxy/client.js:851 +#: htdocs/luci-static/resources/view/homeproxy/client.js:514 +#: htdocs/luci-static/resources/view/homeproxy/client.js:860 msgid "Private source IP" msgstr "私有源 IP" -#: htdocs/luci-static/resources/view/homeproxy/client.js:542 -#: htdocs/luci-static/resources/view/homeproxy/client.js:876 +#: htdocs/luci-static/resources/view/homeproxy/client.js:551 +#: htdocs/luci-static/resources/view/homeproxy/client.js:885 msgid "Process name" msgstr "进程名" -#: htdocs/luci-static/resources/view/homeproxy/client.js:546 -#: htdocs/luci-static/resources/view/homeproxy/client.js:880 +#: htdocs/luci-static/resources/view/homeproxy/client.js:555 +#: htdocs/luci-static/resources/view/homeproxy/client.js:889 msgid "Process path" msgstr "进程路径" -#: htdocs/luci-static/resources/view/homeproxy/client.js:471 -#: htdocs/luci-static/resources/view/homeproxy/client.js:811 -#: htdocs/luci-static/resources/view/homeproxy/node.js:472 -#: htdocs/luci-static/resources/view/homeproxy/node.js:884 -#: htdocs/luci-static/resources/view/homeproxy/server.js:168 +#: htdocs/luci-static/resources/view/homeproxy/client.js:480 +#: htdocs/luci-static/resources/view/homeproxy/client.js:820 +#: htdocs/luci-static/resources/view/homeproxy/node.js:480 +#: htdocs/luci-static/resources/view/homeproxy/node.js:892 +#: htdocs/luci-static/resources/view/homeproxy/server.js:220 msgid "Protocol" msgstr "协议" -#: htdocs/luci-static/resources/view/homeproxy/node.js:696 +#: htdocs/luci-static/resources/view/homeproxy/node.js:704 msgid "Protocol parameter. Enable length block encryption." msgstr "协议参数。启用长度块加密。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:689 +#: htdocs/luci-static/resources/view/homeproxy/node.js:697 msgid "" "Protocol parameter. Will waste traffic randomly if enabled (enabled by " "default in v2ray and cannot be disabled)." msgstr "协议参数。 如启用会随机浪费流量(在 v2ray 中默认启用并且无法禁用)。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1140 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1149 msgid "Proxy Domain List" msgstr "代理域名列表" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1095 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1124 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1104 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1133 msgid "Proxy IPv4 IP-s" msgstr "代理 IPv4 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1098 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1127 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1107 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1136 msgid "Proxy IPv6 IP-s" msgstr "代理 IPv6 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1101 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1110 msgid "Proxy MAC-s" msgstr "代理 MAC 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1082 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1091 msgid "Proxy all except listed" msgstr "仅允许列表外" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1079 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1088 msgid "Proxy filter mode" msgstr "代理过滤模式" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1081 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1090 msgid "Proxy listed only" msgstr "仅允许列表内" @@ -1617,73 +1630,77 @@ msgstr "仅允许列表内" msgid "Proxy mode" msgstr "代理模式" -#: htdocs/luci-static/resources/view/homeproxy/client.js:475 -#: htdocs/luci-static/resources/view/homeproxy/client.js:815 -#: htdocs/luci-static/resources/view/homeproxy/node.js:639 -#: htdocs/luci-static/resources/view/homeproxy/node.js:709 -#: htdocs/luci-static/resources/view/homeproxy/server.js:323 +#: htdocs/luci-static/resources/view/homeproxy/node.js:471 +msgid "Proxy protocol" +msgstr "代理协议" + +#: htdocs/luci-static/resources/view/homeproxy/client.js:484 +#: htdocs/luci-static/resources/view/homeproxy/client.js:824 +#: htdocs/luci-static/resources/view/homeproxy/node.js:647 +#: htdocs/luci-static/resources/view/homeproxy/node.js:717 +#: htdocs/luci-static/resources/view/homeproxy/server.js:386 msgid "QUIC" msgstr "QUIC" -#: htdocs/luci-static/resources/view/homeproxy/node.js:626 -#: htdocs/luci-static/resources/view/homeproxy/server.js:272 +#: htdocs/luci-static/resources/view/homeproxy/node.js:634 +#: htdocs/luci-static/resources/view/homeproxy/server.js:335 msgid "QUIC congestion control algorithm." msgstr "QUIC 拥塞控制算法。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:526 -#: htdocs/luci-static/resources/view/homeproxy/server.js:223 +#: htdocs/luci-static/resources/view/homeproxy/node.js:534 +#: htdocs/luci-static/resources/view/homeproxy/server.js:275 msgid "QUIC connection receive window" msgstr "QUIC 连接窗口" -#: htdocs/luci-static/resources/view/homeproxy/server.js:230 +#: htdocs/luci-static/resources/view/homeproxy/server.js:282 msgid "QUIC maximum concurrent bidirectional streams" msgstr "QUIC 最大双向并发流" -#: htdocs/luci-static/resources/view/homeproxy/node.js:520 -#: htdocs/luci-static/resources/view/homeproxy/server.js:216 +#: htdocs/luci-static/resources/view/homeproxy/node.js:528 +#: htdocs/luci-static/resources/view/homeproxy/server.js:268 msgid "QUIC stream receive window" msgstr "QUIC 流接收窗口" -#: htdocs/luci-static/resources/view/homeproxy/client.js:802 +#: htdocs/luci-static/resources/view/homeproxy/client.js:811 msgid "Query type" msgstr "请求类型" -#: htdocs/luci-static/resources/view/homeproxy/client.js:652 +#: htdocs/luci-static/resources/view/homeproxy/client.js:661 msgid "RDRC timeout" msgstr "RDRC 超时" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1085 -#: htdocs/luci-static/resources/view/homeproxy/server.js:630 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1093 +#: htdocs/luci-static/resources/view/homeproxy/server.js:693 msgid "REALITY" msgstr "REALITY" -#: htdocs/luci-static/resources/view/homeproxy/server.js:636 +#: htdocs/luci-static/resources/view/homeproxy/server.js:699 msgid "REALITY private key" msgstr "REALITY 私钥" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1090 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1098 msgid "REALITY public key" msgstr "REALITY 公钥" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1095 -#: htdocs/luci-static/resources/view/homeproxy/server.js:641 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1103 +#: htdocs/luci-static/resources/view/homeproxy/server.js:704 msgid "REALITY short ID" msgstr "REALITY 标识符" #: htdocs/luci-static/resources/view/homeproxy/client.js:55 -#: htdocs/luci-static/resources/view/homeproxy/server.js:37 +#: htdocs/luci-static/resources/view/homeproxy/server.js:38 msgid "RUNNING" msgstr "运行中" -#: htdocs/luci-static/resources/view/homeproxy/node.js:593 +#: htdocs/luci-static/resources/view/homeproxy/node.js:601 msgid "Random version will be used if empty." msgstr "如留空,则使用随机版本。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:414 +#: htdocs/luci-static/resources/view/homeproxy/client.js:423 msgid "Recursive outbound detected!" msgstr "检测到递归出站!" -#: htdocs/luci-static/resources/view/homeproxy/client.js:711 +#: htdocs/luci-static/resources/view/homeproxy/client.js:720 msgid "Recursive resolver detected!" msgstr "检测到递归解析器!" @@ -1703,27 +1720,27 @@ msgstr "Redirect TCP + Tun UDP" msgid "Refresh every %s seconds." msgstr "每 %s 秒刷新。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:579 +#: htdocs/luci-static/resources/view/homeproxy/server.js:642 msgid "Region ID" msgstr "区域 ID" -#: htdocs/luci-static/resources/view/homeproxy/client.js:994 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1003 msgid "Remote" msgstr "远程" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1369 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1377 msgid "Remove %s nodes" msgstr "移除 %s 个节点" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1359 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1367 msgid "Remove all nodes from subscriptions" msgstr "移除所有订阅节点" -#: htdocs/luci-static/resources/view/homeproxy/node.js:862 +#: htdocs/luci-static/resources/view/homeproxy/node.js:870 msgid "Reserved field bytes" msgstr "保留字段字节" -#: htdocs/luci-static/resources/view/homeproxy/client.js:724 +#: htdocs/luci-static/resources/view/homeproxy/client.js:733 msgid "Resolve strategy" msgstr "解析策略" @@ -1731,19 +1748,19 @@ msgstr "解析策略" msgid "Resources management" msgstr "资源管理" -#: htdocs/luci-static/resources/view/homeproxy/client.js:956 +#: htdocs/luci-static/resources/view/homeproxy/client.js:965 msgid "Rewrite TTL" msgstr "重写 TTL" -#: htdocs/luci-static/resources/view/homeproxy/client.js:957 +#: htdocs/luci-static/resources/view/homeproxy/client.js:966 msgid "Rewrite TTL in DNS responses." msgstr "在 DNS 响应中重写 TTL。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:346 +#: htdocs/luci-static/resources/view/homeproxy/client.js:355 msgid "Routing Nodes" msgstr "路由节点" -#: htdocs/luci-static/resources/view/homeproxy/client.js:422 +#: htdocs/luci-static/resources/view/homeproxy/client.js:431 msgid "Routing Rules" msgstr "路由规则" @@ -1755,7 +1772,7 @@ msgstr "路由设置" msgid "Routing mode" msgstr "路由模式" -#: htdocs/luci-static/resources/view/homeproxy/client.js:355 +#: htdocs/luci-static/resources/view/homeproxy/client.js:364 msgid "Routing node" msgstr "路由节点" @@ -1763,32 +1780,32 @@ msgstr "路由节点" msgid "Routing ports" msgstr "路由端口" -#: htdocs/luci-static/resources/view/homeproxy/client.js:431 +#: htdocs/luci-static/resources/view/homeproxy/client.js:440 msgid "Routing rule" msgstr "路由规则" -#: htdocs/luci-static/resources/view/homeproxy/client.js:554 -#: htdocs/luci-static/resources/view/homeproxy/client.js:888 -#: htdocs/luci-static/resources/view/homeproxy/client.js:969 +#: htdocs/luci-static/resources/view/homeproxy/client.js:563 +#: htdocs/luci-static/resources/view/homeproxy/client.js:897 #: htdocs/luci-static/resources/view/homeproxy/client.js:978 +#: htdocs/luci-static/resources/view/homeproxy/client.js:987 msgid "Rule set" msgstr "规则集" -#: htdocs/luci-static/resources/view/homeproxy/client.js:904 +#: htdocs/luci-static/resources/view/homeproxy/client.js:913 msgid "Rule set IP CIDR as source IP" msgstr "规则集 IP CIDR 作为源 IP" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1011 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1020 msgid "Rule set URL" msgstr "规则集 URL" -#: htdocs/luci-static/resources/view/homeproxy/client.js:438 -#: htdocs/luci-static/resources/view/homeproxy/client.js:770 +#: htdocs/luci-static/resources/view/homeproxy/client.js:447 +#: htdocs/luci-static/resources/view/homeproxy/client.js:779 msgid "SRC-IP fields" msgstr "源 IP 字段" -#: htdocs/luci-static/resources/view/homeproxy/client.js:439 -#: htdocs/luci-static/resources/view/homeproxy/client.js:771 +#: htdocs/luci-static/resources/view/homeproxy/client.js:448 +#: htdocs/luci-static/resources/view/homeproxy/client.js:780 msgid "SRC-Port fields" msgstr "源端口字段" @@ -1796,17 +1813,17 @@ msgstr "源端口字段" msgid "SSH" msgstr "SSH" -#: htdocs/luci-static/resources/view/homeproxy/client.js:476 -#: htdocs/luci-static/resources/view/homeproxy/client.js:817 +#: htdocs/luci-static/resources/view/homeproxy/client.js:485 +#: htdocs/luci-static/resources/view/homeproxy/client.js:826 msgid "STUN" msgstr "STUN" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1122 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1130 msgid "SUoT version" msgstr "SUoT 版本" -#: htdocs/luci-static/resources/view/homeproxy/node.js:497 -#: htdocs/luci-static/resources/view/homeproxy/server.js:207 +#: htdocs/luci-static/resources/view/homeproxy/node.js:505 +#: htdocs/luci-static/resources/view/homeproxy/server.js:259 msgid "Salamander" msgstr "Salamander" @@ -1814,16 +1831,16 @@ msgstr "Salamander" msgid "Same as main node" msgstr "保持与主节点一致" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1333 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1341 msgid "Save current settings" msgstr "保存当前设置" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1330 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1338 msgid "Save subscriptions settings" msgstr "保存订阅设置" -#: htdocs/luci-static/resources/view/homeproxy/client.js:932 -#: htdocs/luci-static/resources/view/homeproxy/server.js:88 +#: htdocs/luci-static/resources/view/homeproxy/client.js:941 +#: htdocs/luci-static/resources/view/homeproxy/server.js:129 msgid "Server" msgstr "服务器" @@ -1831,13 +1848,13 @@ msgstr "服务器" msgid "Server Settings" msgstr "服务器设置" -#: htdocs/luci-static/resources/view/homeproxy/server.js:528 +#: htdocs/luci-static/resources/view/homeproxy/server.js:591 msgid "" "Server name to use when choosing a certificate if the ClientHello's " "ServerName field is empty." msgstr "当 ClientHello 的 ServerName 字段为空时,选择证书所使用的服务器名称。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:83 +#: htdocs/luci-static/resources/view/homeproxy/server.js:124 msgid "Server settings" msgstr "服务器设置" @@ -1849,17 +1866,17 @@ msgstr "服务状态" msgid "ShadowTLS" msgstr "ShadowTLS" -#: htdocs/luci-static/resources/view/homeproxy/node.js:572 +#: htdocs/luci-static/resources/view/homeproxy/node.js:580 msgid "ShadowTLS version" msgstr "ShadowTLS 版本" #: htdocs/luci-static/resources/view/homeproxy/node.js:400 -#: htdocs/luci-static/resources/view/homeproxy/server.js:110 +#: htdocs/luci-static/resources/view/homeproxy/server.js:151 msgid "Shadowsocks" msgstr "Shadowsocks" -#: htdocs/luci-static/resources/view/homeproxy/client.js:472 -#: htdocs/luci-static/resources/view/homeproxy/client.js:812 +#: htdocs/luci-static/resources/view/homeproxy/client.js:481 +#: htdocs/luci-static/resources/view/homeproxy/client.js:821 msgid "" "Sniffed protocol, see Sniff for details." @@ -1868,47 +1885,47 @@ msgstr "" "configuration/route/sniff/\">Sniff。" #: htdocs/luci-static/resources/view/homeproxy/node.js:402 -#: htdocs/luci-static/resources/view/homeproxy/server.js:111 +#: htdocs/luci-static/resources/view/homeproxy/server.js:152 msgid "Socks" msgstr "Socks" -#: htdocs/luci-static/resources/view/homeproxy/node.js:582 +#: htdocs/luci-static/resources/view/homeproxy/node.js:590 msgid "Socks version" msgstr "Socks 版本" -#: htdocs/luci-static/resources/view/homeproxy/node.js:583 +#: htdocs/luci-static/resources/view/homeproxy/node.js:591 msgid "Socks4" msgstr "Socks4" -#: htdocs/luci-static/resources/view/homeproxy/node.js:584 +#: htdocs/luci-static/resources/view/homeproxy/node.js:592 msgid "Socks4A" msgstr "Socks4A" -#: htdocs/luci-static/resources/view/homeproxy/node.js:585 +#: htdocs/luci-static/resources/view/homeproxy/node.js:593 msgid "Socks5" msgstr "Socks5" -#: htdocs/luci-static/resources/view/homeproxy/client.js:500 -#: htdocs/luci-static/resources/view/homeproxy/client.js:846 +#: htdocs/luci-static/resources/view/homeproxy/client.js:509 +#: htdocs/luci-static/resources/view/homeproxy/client.js:855 msgid "Source IP CIDR" msgstr "源 IP CIDR" -#: htdocs/luci-static/resources/view/homeproxy/client.js:999 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1008 msgid "Source file" msgstr "源文件" -#: htdocs/luci-static/resources/view/homeproxy/client.js:522 -#: htdocs/luci-static/resources/view/homeproxy/client.js:866 +#: htdocs/luci-static/resources/view/homeproxy/client.js:531 +#: htdocs/luci-static/resources/view/homeproxy/client.js:875 msgid "Source port" msgstr "源端口" -#: htdocs/luci-static/resources/view/homeproxy/client.js:527 -#: htdocs/luci-static/resources/view/homeproxy/client.js:871 +#: htdocs/luci-static/resources/view/homeproxy/client.js:536 +#: htdocs/luci-static/resources/view/homeproxy/client.js:880 msgid "Source port range" msgstr "源端口范围" -#: htdocs/luci-static/resources/view/homeproxy/node.js:726 -#: htdocs/luci-static/resources/view/homeproxy/node.js:779 +#: htdocs/luci-static/resources/view/homeproxy/node.js:734 +#: htdocs/luci-static/resources/view/homeproxy/node.js:787 msgid "" "Specifies the period of time (in seconds) after which a health check will be " "performed using a ping frame if no frames have been received on the " @@ -1920,8 +1937,8 @@ msgstr "" "查。
需要注意的是,PING 响应被视为已接收的帧,因此如果连接上没有其他流" "量,则健康检查将在每个间隔执行一次。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:340 -#: htdocs/luci-static/resources/view/homeproxy/server.js:375 +#: htdocs/luci-static/resources/view/homeproxy/server.js:403 +#: htdocs/luci-static/resources/view/homeproxy/server.js:438 msgid "" "Specifies the time (in seconds) until idle clients should be closed with a " "GOAWAY frame. PING frames are not considered as activity." @@ -1929,8 +1946,8 @@ msgstr "" "指定闲置客户端应在多长时间(单位:秒)内使用 GOAWAY 帧关闭。PING 帧不被视为活" "动。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:730 -#: htdocs/luci-static/resources/view/homeproxy/node.js:787 +#: htdocs/luci-static/resources/view/homeproxy/node.js:738 +#: htdocs/luci-static/resources/view/homeproxy/node.js:795 msgid "" "Specifies the timeout duration (in seconds) after sending a PING frame, " "within which a response must be received.
If a response to the PING " @@ -1946,11 +1963,11 @@ msgid "" "commas." msgstr "指定需要被代理的目标端口。多个端口必须用逗号隔开。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:646 +#: htdocs/luci-static/resources/view/homeproxy/client.js:655 msgid "Store RDRC" msgstr "存储 RDRC" -#: htdocs/luci-static/resources/view/homeproxy/client.js:647 +#: htdocs/luci-static/resources/view/homeproxy/client.js:656 msgid "" "Store rejected DNS response cache.
The check results of Address " "filter DNS rule items will be cached until expiration." @@ -1958,24 +1975,24 @@ msgstr "" "存储被拒绝的 DNS 响应缓存。
地址过滤 DNS 规则 的检查结果将被" "缓存直到过期。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:486 -#: htdocs/luci-static/resources/view/homeproxy/server.js:196 +#: htdocs/luci-static/resources/view/homeproxy/node.js:494 +#: htdocs/luci-static/resources/view/homeproxy/server.js:248 msgid "String" msgstr "字符串" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1258 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1266 msgid "Sub (%s)" msgstr "订阅(%s)" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1287 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1295 msgid "Subscription URL-s" msgstr "订阅地址" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1269 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1277 msgid "Subscriptions" msgstr "订阅" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1205 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1213 msgid "Successfully imported %s nodes of total %s." msgstr "成功导入 %s 个节点,共 %s 个。" @@ -1983,8 +2000,8 @@ msgstr "成功导入 %s 个节点,共 %s 个。" msgid "Successfully updated." msgstr "更新成功。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1165 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1288 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1173 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1296 msgid "" "Support Hysteria, Shadowsocks, Trojan, v2rayN (VMess), and XTLS (VLESS) " "online configuration delivery standard." @@ -1996,20 +2013,20 @@ msgstr "" msgid "System" msgstr "系统" -#: htdocs/luci-static/resources/view/homeproxy/client.js:617 -#: htdocs/luci-static/resources/view/homeproxy/client.js:694 -#: htdocs/luci-static/resources/view/homeproxy/client.js:939 +#: htdocs/luci-static/resources/view/homeproxy/client.js:626 +#: htdocs/luci-static/resources/view/homeproxy/client.js:703 +#: htdocs/luci-static/resources/view/homeproxy/client.js:948 msgid "System DNS" msgstr "系统 DNS" -#: htdocs/luci-static/resources/view/homeproxy/client.js:479 -#: htdocs/luci-static/resources/view/homeproxy/client.js:807 -#: htdocs/luci-static/resources/view/homeproxy/server.js:730 +#: htdocs/luci-static/resources/view/homeproxy/client.js:488 +#: htdocs/luci-static/resources/view/homeproxy/client.js:816 +#: htdocs/luci-static/resources/view/homeproxy/server.js:800 msgid "TCP" msgstr "TCP" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1102 -#: htdocs/luci-static/resources/view/homeproxy/server.js:702 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1110 +#: htdocs/luci-static/resources/view/homeproxy/server.js:765 msgid "TCP fast open" msgstr "TCP 快速打开" @@ -2021,29 +2038,29 @@ msgstr "TCP/IP 协议栈" msgid "TCP/IP stack." msgstr "TCP/IP 协议栈。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:474 -#: htdocs/luci-static/resources/view/homeproxy/client.js:814 -#: htdocs/luci-static/resources/view/homeproxy/node.js:937 -#: htdocs/luci-static/resources/view/homeproxy/server.js:453 +#: htdocs/luci-static/resources/view/homeproxy/client.js:483 +#: htdocs/luci-static/resources/view/homeproxy/client.js:823 +#: htdocs/luci-static/resources/view/homeproxy/node.js:945 +#: htdocs/luci-static/resources/view/homeproxy/server.js:516 msgid "TLS" msgstr "TLS" -#: htdocs/luci-static/resources/view/homeproxy/node.js:969 -#: htdocs/luci-static/resources/view/homeproxy/server.js:485 +#: htdocs/luci-static/resources/view/homeproxy/node.js:977 +#: htdocs/luci-static/resources/view/homeproxy/server.js:548 msgid "TLS ALPN" msgstr "TLS ALPN" -#: htdocs/luci-static/resources/view/homeproxy/node.js:964 -#: htdocs/luci-static/resources/view/homeproxy/server.js:480 +#: htdocs/luci-static/resources/view/homeproxy/node.js:972 +#: htdocs/luci-static/resources/view/homeproxy/server.js:543 msgid "TLS SNI" msgstr "TLS SNI" -#: htdocs/luci-static/resources/view/homeproxy/node.js:717 -#: htdocs/luci-static/resources/view/homeproxy/server.js:331 +#: htdocs/luci-static/resources/view/homeproxy/node.js:725 +#: htdocs/luci-static/resources/view/homeproxy/server.js:394 msgid "TLS is not enforced. If TLS is not configured, plain HTTP 1.1 is used." msgstr "不强制执行 TLS。如未配置 TLS,将使用纯 HTTP 1.1。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:687 +#: htdocs/luci-static/resources/view/homeproxy/client.js:696 msgid "" "Tag of a another server to resolve the domain name in the address. Required " "if address contains domain." @@ -2051,23 +2068,23 @@ msgstr "" "用于解析本 DNS 服务器的域名的另一个 DNS 服务器的标签。如果服务器地址包括域名" "则必须。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:730 +#: htdocs/luci-static/resources/view/homeproxy/client.js:739 msgid "Tag of an outbound for connecting to the dns server." msgstr "用于连接到 DNS 服务器的出站标签。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1034 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1043 msgid "Tag of the outbound to download rule set." msgstr "用于下载规则集的出站标签。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:933 +#: htdocs/luci-static/resources/view/homeproxy/client.js:942 msgid "Tag of the target dns server." msgstr "目标 DNS 服务器标签。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:582 +#: htdocs/luci-static/resources/view/homeproxy/client.js:591 msgid "Tag of the target outbound." msgstr "目标出站标签。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:244 +#: htdocs/luci-static/resources/view/homeproxy/server.js:296 msgid "" "Tell the client to use the BBR flow control algorithm instead of Hysteria CC." msgstr "让客户端使用 BBR 流控算法。" @@ -2077,29 +2094,29 @@ msgstr "让客户端使用 BBR 流控算法。" msgid "Tencent Public DNS (119.29.29.29)" msgstr "腾讯公共 DNS(119.29.29.29)" -#: htdocs/luci-static/resources/view/homeproxy/server.js:549 +#: htdocs/luci-static/resources/view/homeproxy/server.js:612 msgid "The ACME CA provider to use." msgstr "使用的 ACME CA 颁发机构。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:607 +#: htdocs/luci-static/resources/view/homeproxy/client.js:616 msgid "The DNS strategy for resolving the domain name in the address." msgstr "解析域名的默认策略。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:527 -#: htdocs/luci-static/resources/view/homeproxy/server.js:224 +#: htdocs/luci-static/resources/view/homeproxy/node.js:535 +#: htdocs/luci-static/resources/view/homeproxy/server.js:276 msgid "The QUIC connection-level flow control window for receiving data." msgstr "用于接收数据的 QUIC 连接级流控制窗口。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:521 -#: htdocs/luci-static/resources/view/homeproxy/server.js:217 +#: htdocs/luci-static/resources/view/homeproxy/node.js:529 +#: htdocs/luci-static/resources/view/homeproxy/server.js:269 msgid "The QUIC stream-level flow control window for receiving data." msgstr "用于接收数据的 QUIC 流级流控制窗口。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:683 +#: htdocs/luci-static/resources/view/homeproxy/client.js:692 msgid "The address of the dns server. Support UDP, TCP, DoT, DoH and RCode." msgstr "DNS 服务器的地址。支持 UDP、TCP、DoT、DoH 和 RCode。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:600 +#: htdocs/luci-static/resources/view/homeproxy/server.js:663 msgid "" "The alternate port to use for the ACME HTTP challenge; if non-empty, this " "port will be used instead of 80 to spin up a listener for the HTTP challenge." @@ -2107,14 +2124,14 @@ msgstr "" "用于 ACME HTTP 质询的备用端口;如果非空,将使用此端口而不是 80 来启动 HTTP 质" "询的侦听器。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:606 +#: htdocs/luci-static/resources/view/homeproxy/server.js:669 msgid "" "The alternate port to use for the ACME TLS-ALPN challenge; the system must " "forward 443 to this port for challenge to succeed." msgstr "" "用于 ACME TLS-ALPN 质询的备用端口; 系统必须将 443 转发到此端口以使质询成功。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:452 +#: htdocs/luci-static/resources/view/homeproxy/client.js:461 msgid "" "The default rule uses the following matching logic:
(domain || " "domain_suffix || domain_keyword || domain_regex || ip_cidr || " @@ -2131,7 +2148,7 @@ msgstr "" "source_port_range) &&
其他字段。此外,包含的所有规则" "集会被合并而不是独立生效。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:784 +#: htdocs/luci-static/resources/view/homeproxy/client.js:793 msgid "" "The default rule uses the following matching logic:
(domain || " "domain_suffix || domain_keyword || domain_regex) &&
(port " @@ -2146,78 +2163,78 @@ msgstr "" ">(source_port || source_port_range) &&
其他字段。此外,包含的所有规则集会被合并而不是独立生效。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:719 +#: htdocs/luci-static/resources/view/homeproxy/client.js:728 msgid "" "The domain strategy for resolving the domain name in the address. dns." "strategy will be used if empty." msgstr "用于解析本 DNS 服务器的域名的策略。默认使用 dns.strategy。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1000 -#: htdocs/luci-static/resources/view/homeproxy/server.js:507 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1008 +#: htdocs/luci-static/resources/view/homeproxy/server.js:570 msgid "" "The elliptic curves that will be used in an ECDHE handshake, in preference " "order. If empty, the default will be used." msgstr "将在 ECDHE 握手中使用的椭圆曲线,按优先顺序排列。留空使用默认值。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:534 +#: htdocs/luci-static/resources/view/homeproxy/server.js:597 msgid "" "The email address to use when creating or selecting an existing ACME server " "account." msgstr "创建或选择现有 ACME 服务器帐户时使用的电子邮件地址。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:992 -#: htdocs/luci-static/resources/view/homeproxy/server.js:499 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1000 +#: htdocs/luci-static/resources/view/homeproxy/server.js:562 msgid "The maximum TLS version that is acceptable." msgstr "可接受的最高 TLS 版本。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:231 +#: htdocs/luci-static/resources/view/homeproxy/server.js:283 msgid "" "The maximum number of QUIC concurrent bidirectional streams that a peer is " "allowed to open." msgstr "允许对等点打开的 QUIC 并发双向流的最大数量。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:647 +#: htdocs/luci-static/resources/view/homeproxy/server.js:710 msgid "The maximum time difference between the server and the client." msgstr "服务器和客户端之间的最大时间差。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:984 -#: htdocs/luci-static/resources/view/homeproxy/server.js:491 +#: htdocs/luci-static/resources/view/homeproxy/node.js:992 +#: htdocs/luci-static/resources/view/homeproxy/server.js:554 msgid "The minimum TLS version that is acceptable." msgstr "可接受的最低 TLS 版本。" #: htdocs/luci-static/resources/view/homeproxy/client.js:110 -#: htdocs/luci-static/resources/view/homeproxy/server.js:57 +#: htdocs/luci-static/resources/view/homeproxy/server.js:98 msgid "The modern OpenWrt proxy platform for ARM64/AMD64." msgstr "为 ARM64/AMD64 设计的现代 OpenWrt 代理平台。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:383 +#: htdocs/luci-static/resources/view/homeproxy/client.js:392 msgid "The network interface to bind to." msgstr "绑定到的网络接口。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1014 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1022 msgid "The path to the server certificate, in PEM format." msgstr "服务端证书路径,需要 PEM 格式。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:125 +#: htdocs/luci-static/resources/view/homeproxy/server.js:166 msgid "The port must be unique." msgstr "必须是唯一端口。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:683 +#: htdocs/luci-static/resources/view/homeproxy/server.js:746 msgid "The server private key, in PEM format." msgstr "服务端私钥,需要 PEM 格式。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:665 +#: htdocs/luci-static/resources/view/homeproxy/server.js:728 msgid "The server public key, in PEM format." msgstr "服务端公钥,需要 PEM 格式。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:390 +#: htdocs/luci-static/resources/view/homeproxy/client.js:399 msgid "" "The tag of the upstream outbound.
Other dial fields will be ignored when " "enabled." msgstr "上游出站的标签。
启用时,其他拨号字段将被忽略。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:737 -#: htdocs/luci-static/resources/view/homeproxy/server.js:383 +#: htdocs/luci-static/resources/view/homeproxy/node.js:745 +#: htdocs/luci-static/resources/view/homeproxy/server.js:446 msgid "" "The timeout (in seconds) that after performing a keepalive check, the client " "will wait for activity. If no activity is detected, the connection will be " @@ -2226,15 +2243,15 @@ msgstr "" "经过一段时间(单位:秒)之后,客户端将执行 keepalive 检查并等待活动。如果没有" "检测到任何活动,则会关闭连接。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:977 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1320 +#: htdocs/luci-static/resources/view/homeproxy/node.js:985 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1328 msgid "" "This is DANGEROUS, your traffic is almost like " "PLAIN TEXT! Use at your own risk!" msgstr "" "这是危险行为,您的流量将几乎等同于明文!使用风险自负!" -#: htdocs/luci-static/resources/view/homeproxy/node.js:644 +#: htdocs/luci-static/resources/view/homeproxy/node.js:652 msgid "" "This is the TUIC port of the UDP over TCP protocol, designed to provide a " "QUIC stream based UDP relay mode that TUIC does not provide." @@ -2242,12 +2259,12 @@ msgstr "" "这是 TUIC 的 UDP over TCP 协议移植, 旨在提供 TUIC 不提供的基于 QUIC 流的 " "UDP 中继模式。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:653 +#: htdocs/luci-static/resources/view/homeproxy/client.js:662 msgid "" "Timeout of rejected DNS response cache. 7d is used by default." msgstr "被拒绝的 DNS 响应缓存超时。默认时长 7d。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:409 +#: htdocs/luci-static/resources/view/homeproxy/server.js:472 msgid "" "To be compatible with Xray-core, set this to Sec-WebSocket-Protocol." @@ -2261,18 +2278,18 @@ msgid "" msgstr "" "要启用 Tun 支持,您需要安装 ip-fullkmod-tun。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:703 -#: htdocs/luci-static/resources/view/homeproxy/server.js:317 +#: htdocs/luci-static/resources/view/homeproxy/node.js:711 +#: htdocs/luci-static/resources/view/homeproxy/server.js:380 msgid "Transport" msgstr "传输层" #: htdocs/luci-static/resources/view/homeproxy/node.js:404 -#: htdocs/luci-static/resources/view/homeproxy/server.js:112 +#: htdocs/luci-static/resources/view/homeproxy/server.js:153 msgid "Trojan" msgstr "Trojan" #: htdocs/luci-static/resources/view/homeproxy/node.js:406 -#: htdocs/luci-static/resources/view/homeproxy/server.js:114 +#: htdocs/luci-static/resources/view/homeproxy/server.js:155 msgid "Tuic" msgstr "Tuic" @@ -2280,41 +2297,46 @@ msgstr "Tuic" msgid "Tun TCP/UDP" msgstr "Tun TCP/UDP" -#: htdocs/luci-static/resources/view/homeproxy/client.js:992 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1001 #: htdocs/luci-static/resources/view/homeproxy/node.js:393 -#: htdocs/luci-static/resources/view/homeproxy/server.js:103 +#: htdocs/luci-static/resources/view/homeproxy/server.js:144 msgid "Type" msgstr "类型" -#: htdocs/luci-static/resources/view/homeproxy/client.js:480 -#: htdocs/luci-static/resources/view/homeproxy/client.js:808 -#: htdocs/luci-static/resources/view/homeproxy/server.js:731 +#: htdocs/luci-static/resources/view/homeproxy/client.js:489 +#: htdocs/luci-static/resources/view/homeproxy/client.js:817 +#: htdocs/luci-static/resources/view/homeproxy/server.js:801 msgid "UDP" msgstr "UDP" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1110 -#: htdocs/luci-static/resources/view/homeproxy/server.js:713 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1118 +#: htdocs/luci-static/resources/view/homeproxy/server.js:776 msgid "UDP Fragment" msgstr "UDP 分片" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1115 +#: htdocs/luci-static/resources/view/homeproxy/client.js:316 +#: htdocs/luci-static/resources/view/homeproxy/server.js:782 +msgid "UDP NAT expiration time" +msgstr "UDP NAT 过期时间" + +#: htdocs/luci-static/resources/view/homeproxy/node.js:1123 msgid "UDP over TCP" msgstr "UDP over TCP" -#: htdocs/luci-static/resources/view/homeproxy/node.js:643 +#: htdocs/luci-static/resources/view/homeproxy/node.js:651 msgid "UDP over stream" msgstr "UDP over stream" -#: htdocs/luci-static/resources/view/homeproxy/node.js:636 +#: htdocs/luci-static/resources/view/homeproxy/node.js:644 msgid "UDP packet relay mode." msgstr "UDP 包中继模式。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:635 +#: htdocs/luci-static/resources/view/homeproxy/node.js:643 msgid "UDP relay mode" msgstr "UDP 中继模式" -#: htdocs/luci-static/resources/view/homeproxy/node.js:618 -#: htdocs/luci-static/resources/view/homeproxy/server.js:264 +#: htdocs/luci-static/resources/view/homeproxy/node.js:626 +#: htdocs/luci-static/resources/view/homeproxy/server.js:316 msgid "UUID" msgstr "UUID" @@ -2326,11 +2348,11 @@ msgstr "未知错误。" msgid "Unknown error: %s" msgstr "未知错误:%s" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1078 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1086 msgid "Unsupported fingerprint!" msgstr "不支持的指纹!" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1344 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1352 msgid "Update %s subscriptions" msgstr "更新 %s 个订阅" @@ -2338,83 +2360,83 @@ msgstr "更新 %s 个订阅" msgid "Update failed." msgstr "更新失败。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1051 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1060 msgid "Update interval" msgstr "更新间隔" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1052 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1061 msgid "Update interval of rule set.
1d will be used if empty." msgstr "规则集更新间隔。
留空使用 1d。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1339 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1347 msgid "Update nodes from subscriptions" msgstr "从订阅更新节点" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1283 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1291 msgid "Update subscriptions via proxy." msgstr "使用代理更新订阅。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1276 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1284 msgid "Update time" msgstr "更新时间" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1282 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1290 msgid "Update via proxy" msgstr "使用代理更新" -#: htdocs/luci-static/resources/view/homeproxy/node.js:929 -#: htdocs/luci-static/resources/view/homeproxy/server.js:444 +#: htdocs/luci-static/resources/view/homeproxy/node.js:937 +#: htdocs/luci-static/resources/view/homeproxy/server.js:507 msgid "Upload bandwidth" msgstr "上传带宽" -#: htdocs/luci-static/resources/view/homeproxy/node.js:930 -#: htdocs/luci-static/resources/view/homeproxy/server.js:445 +#: htdocs/luci-static/resources/view/homeproxy/node.js:938 +#: htdocs/luci-static/resources/view/homeproxy/server.js:508 msgid "Upload bandwidth in Mbps." msgstr "上传带宽(单位:Mbps)。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1020 -#: htdocs/luci-static/resources/view/homeproxy/server.js:674 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1028 +#: htdocs/luci-static/resources/view/homeproxy/server.js:737 msgid "Upload certificate" msgstr "上传证书" -#: htdocs/luci-static/resources/view/homeproxy/server.js:692 +#: htdocs/luci-static/resources/view/homeproxy/server.js:755 msgid "Upload key" msgstr "上传密钥" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1023 -#: htdocs/luci-static/resources/view/homeproxy/server.js:677 -#: htdocs/luci-static/resources/view/homeproxy/server.js:695 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1031 +#: htdocs/luci-static/resources/view/homeproxy/server.js:740 +#: htdocs/luci-static/resources/view/homeproxy/server.js:758 msgid "Upload..." msgstr "上传..." -#: htdocs/luci-static/resources/view/homeproxy/server.js:516 +#: htdocs/luci-static/resources/view/homeproxy/server.js:579 msgid "Use ACME TLS certificate issuer." msgstr "使用 ACME TLS 证书颁发机构。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:965 -#: htdocs/luci-static/resources/view/homeproxy/server.js:481 +#: htdocs/luci-static/resources/view/homeproxy/node.js:973 +#: htdocs/luci-static/resources/view/homeproxy/server.js:544 msgid "" "Used to verify the hostname on the returned certificates unless insecure is " "given." msgstr "用于验证返回证书上的主机名。如允许不安全连接,此配置无效。" -#: htdocs/luci-static/resources/view/homeproxy/client.js:550 -#: htdocs/luci-static/resources/view/homeproxy/client.js:884 +#: htdocs/luci-static/resources/view/homeproxy/client.js:559 +#: htdocs/luci-static/resources/view/homeproxy/client.js:893 msgid "User" msgstr "用户" #: htdocs/luci-static/resources/view/homeproxy/node.js:423 -#: htdocs/luci-static/resources/view/homeproxy/server.js:129 +#: htdocs/luci-static/resources/view/homeproxy/server.js:170 msgid "Username" msgstr "用户名" #: htdocs/luci-static/resources/view/homeproxy/node.js:409 -#: htdocs/luci-static/resources/view/homeproxy/server.js:115 +#: htdocs/luci-static/resources/view/homeproxy/server.js:156 msgid "VLESS" msgstr "VLESS" #: htdocs/luci-static/resources/view/homeproxy/node.js:410 -#: htdocs/luci-static/resources/view/homeproxy/server.js:116 +#: htdocs/luci-static/resources/view/homeproxy/server.js:157 msgid "VMess" msgstr "VMess" @@ -2423,16 +2445,16 @@ msgstr "VMess" msgid "WAN DNS (read from interface)" msgstr "WAN DNS(从接口获取)" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1122 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1131 msgid "WAN IP Policy" msgstr "WAN IP 策略" -#: htdocs/luci-static/resources/view/homeproxy/node.js:710 -#: htdocs/luci-static/resources/view/homeproxy/server.js:324 +#: htdocs/luci-static/resources/view/homeproxy/node.js:718 +#: htdocs/luci-static/resources/view/homeproxy/server.js:387 msgid "WebSocket" msgstr "WebSocket" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1308 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1316 msgid "Whitelist mode" msgstr "白名单模式" @@ -2440,25 +2462,29 @@ msgstr "白名单模式" msgid "WireGuard" msgstr "WireGuard" -#: htdocs/luci-static/resources/view/homeproxy/node.js:849 +#: htdocs/luci-static/resources/view/homeproxy/node.js:857 msgid "WireGuard peer public key." msgstr "WireGuard 对端公钥。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:856 +#: htdocs/luci-static/resources/view/homeproxy/node.js:864 msgid "WireGuard pre-shared key." msgstr "WireGuard 预共享密钥。" -#: htdocs/luci-static/resources/view/homeproxy/node.js:841 +#: htdocs/luci-static/resources/view/homeproxy/node.js:849 msgid "WireGuard requires base64-encoded private keys." msgstr "WireGuard 要求 base64 编码的私钥。" +#: htdocs/luci-static/resources/view/homeproxy/node.js:472 +msgid "Write proxy protocol in the connection header." +msgstr "在连接头中写入代理协议。" + #: htdocs/luci-static/resources/view/homeproxy/client.js:167 #: htdocs/luci-static/resources/view/homeproxy/client.js:190 msgid "Xinfeng Public DNS (114.114.114.114)" msgstr "信风公共 DNS(114.114.114.114)" -#: htdocs/luci-static/resources/view/homeproxy/node.js:820 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1328 +#: htdocs/luci-static/resources/view/homeproxy/node.js:828 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1336 msgid "Xudp (Xray-core)" msgstr "Xudp (Xray-core)" @@ -2466,23 +2492,23 @@ msgstr "Xudp (Xray-core)" msgid "You can only have two servers set at maximum." msgstr "您最多只能设置两个服务器。" -#: htdocs/luci-static/resources/homeproxy.js:228 +#: htdocs/luci-static/resources/homeproxy.js:243 msgid "Your %s was successfully uploaded. Size: %sB." msgstr "您的 %s 已成功上传。大小:%sB。" -#: htdocs/luci-static/resources/view/homeproxy/server.js:551 +#: htdocs/luci-static/resources/view/homeproxy/server.js:614 msgid "ZeroSSL" msgstr "ZeroSSL" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1025 -#: htdocs/luci-static/resources/view/homeproxy/server.js:679 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1033 +#: htdocs/luci-static/resources/view/homeproxy/server.js:742 msgid "certificate" msgstr "证书" -#: htdocs/luci-static/resources/view/homeproxy/node.js:985 #: htdocs/luci-static/resources/view/homeproxy/node.js:993 -#: htdocs/luci-static/resources/view/homeproxy/server.js:492 -#: htdocs/luci-static/resources/view/homeproxy/server.js:500 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1001 +#: htdocs/luci-static/resources/view/homeproxy/server.js:555 +#: htdocs/luci-static/resources/view/homeproxy/server.js:563 msgid "default" msgstr "默认" @@ -2490,17 +2516,17 @@ msgstr "默认" msgid "failed" msgstr "失败" -#: htdocs/luci-static/resources/view/homeproxy/node.js:706 -#: htdocs/luci-static/resources/view/homeproxy/server.js:320 +#: htdocs/luci-static/resources/view/homeproxy/node.js:714 +#: htdocs/luci-static/resources/view/homeproxy/server.js:383 msgid "gRPC" msgstr "gRPC" -#: htdocs/luci-static/resources/view/homeproxy/node.js:748 +#: htdocs/luci-static/resources/view/homeproxy/node.js:756 msgid "gRPC permit without stream" msgstr "gRPC 允许无活动连接" -#: htdocs/luci-static/resources/view/homeproxy/node.js:743 -#: htdocs/luci-static/resources/view/homeproxy/server.js:348 +#: htdocs/luci-static/resources/view/homeproxy/node.js:751 +#: htdocs/luci-static/resources/view/homeproxy/server.js:411 msgid "gRPC service name" msgstr "gRPC 服务名称" @@ -2508,24 +2534,24 @@ msgstr "gRPC 服务名称" msgid "gVisor" msgstr "gVisor" -#: htdocs/luci-static/resources/homeproxy.js:248 -#: htdocs/luci-static/resources/homeproxy.js:266 +#: htdocs/luci-static/resources/homeproxy.js:263 +#: htdocs/luci-static/resources/homeproxy.js:281 #: htdocs/luci-static/resources/view/homeproxy/client.js:176 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1015 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1024 #: htdocs/luci-static/resources/view/homeproxy/node.js:452 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1074 -#: htdocs/luci-static/resources/view/homeproxy/server.js:159 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1082 +#: htdocs/luci-static/resources/view/homeproxy/server.js:211 msgid "non-empty value" msgstr "非空值" -#: htdocs/luci-static/resources/view/homeproxy/node.js:559 -#: htdocs/luci-static/resources/view/homeproxy/node.js:818 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1326 +#: htdocs/luci-static/resources/view/homeproxy/node.js:567 +#: htdocs/luci-static/resources/view/homeproxy/node.js:826 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1334 msgid "none" msgstr "无" -#: htdocs/luci-static/resources/view/homeproxy/node.js:819 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1327 +#: htdocs/luci-static/resources/view/homeproxy/node.js:827 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1335 msgid "packet addr (v2ray-core v5+)" msgstr "packet addr (v2ray-core v5+)" @@ -2533,7 +2559,7 @@ msgstr "packet addr (v2ray-core v5+)" msgid "passed" msgstr "通过" -#: htdocs/luci-static/resources/view/homeproxy/server.js:697 +#: htdocs/luci-static/resources/view/homeproxy/server.js:760 msgid "private key" msgstr "私钥" @@ -2545,11 +2571,11 @@ msgstr "sing-box 客户端" msgid "sing-box server" msgstr "sing-box 服务端" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1051 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1059 msgid "uTLS fingerprint" msgstr "uTLS 指纹" -#: htdocs/luci-static/resources/view/homeproxy/node.js:1052 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1060 msgid "" "uTLS is a fork of \"crypto/tls\", which provides ClientHello fingerprinting " "resistance." @@ -2560,26 +2586,28 @@ msgstr "" msgid "unchecked" msgstr "未检查" -#: htdocs/luci-static/resources/homeproxy.js:206 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1234 +#: htdocs/luci-static/resources/homeproxy.js:221 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1242 msgid "unique UCI identifier" msgstr "独立 UCI 标识" -#: htdocs/luci-static/resources/homeproxy.js:257 +#: htdocs/luci-static/resources/homeproxy.js:272 msgid "unique value" msgstr "独立值" -#: htdocs/luci-static/resources/view/homeproxy/node.js:573 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1123 +#: htdocs/luci-static/resources/view/homeproxy/node.js:474 +#: htdocs/luci-static/resources/view/homeproxy/node.js:581 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1131 msgid "v1" msgstr "v1" -#: htdocs/luci-static/resources/view/homeproxy/node.js:574 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1124 +#: htdocs/luci-static/resources/view/homeproxy/node.js:475 +#: htdocs/luci-static/resources/view/homeproxy/node.js:582 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1132 msgid "v2" msgstr "v2" -#: htdocs/luci-static/resources/view/homeproxy/node.js:575 +#: htdocs/luci-static/resources/view/homeproxy/node.js:583 msgid "v3" msgstr "v3" @@ -2587,10 +2615,10 @@ msgstr "v3" msgid "valid IP address" msgstr "有效 IP 地址" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1020 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1023 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1294 -#: htdocs/luci-static/resources/view/homeproxy/node.js:1297 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1029 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1032 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1302 +#: htdocs/luci-static/resources/view/homeproxy/node.js:1305 msgid "valid URL" msgstr "有效网址" @@ -2598,12 +2626,12 @@ msgstr "有效网址" msgid "valid address#port" msgstr "有效 地址#端口" -#: htdocs/luci-static/resources/homeproxy.js:240 +#: htdocs/luci-static/resources/homeproxy.js:255 msgid "valid base64 key with %d characters" msgstr "包含 %d 个字符的有效 base64 密钥" -#: htdocs/luci-static/resources/view/homeproxy/client.js:1162 -#: htdocs/luci-static/resources/view/homeproxy/client.js:1191 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1171 +#: htdocs/luci-static/resources/view/homeproxy/client.js:1200 msgid "valid hostname" msgstr "有效主机名" @@ -2616,9 +2644,6 @@ msgstr "有效端口范围(port1:port2)" msgid "valid port value" msgstr "有效端口值" -#: htdocs/luci-static/resources/homeproxy.js:268 +#: htdocs/luci-static/resources/homeproxy.js:283 msgid "valid uuid" msgstr "有效 uuid" - -#~ msgid "Match outbound." -#~ msgstr "匹配出站。" diff --git a/luci-app-homeproxy/root/etc/config/homeproxy b/luci-app-homeproxy/root/etc/config/homeproxy index d8438f0ae..cc6a0ead8 100644 --- a/luci-app-homeproxy/root/etc/config/homeproxy +++ b/luci-app-homeproxy/root/etc/config/homeproxy @@ -7,6 +7,7 @@ config homeproxy 'infra' option tproxy_port '5332' option dns_port '5333' option china_dns_port '5334' + option udp_timeout '' option tun_name 'singtun0' option tun_addr4 '172.19.0.1/30' option tun_addr6 'fdfe:dcba:9876::1/126' diff --git a/luci-app-homeproxy/root/etc/homeproxy/scripts/generate_client.uc b/luci-app-homeproxy/root/etc/homeproxy/scripts/generate_client.uc index f51fff61f..66da664f3 100755 --- a/luci-app-homeproxy/root/etc/homeproxy/scripts/generate_client.uc +++ b/luci-app-homeproxy/root/etc/homeproxy/scripts/generate_client.uc @@ -93,7 +93,10 @@ const cache_file_store_rdrc = uci.get(uciconfig, uciexp, 'cache_file_store_rdrc' const mixed_port = uci.get(uciconfig, uciinfra, 'mixed_port') || '5330'; let self_mark, redirect_port, tproxy_port, tun_name, tun_addr4, tun_addr6, tun_mtu, tun_gso, - tcpip_stack, endpoint_independent_nat; + tcpip_stack, endpoint_independent_nat, udp_timeout; +udp_timeout = uci.get(uciconfig, 'infra', 'udp_timeout'); +if (routing_mode === 'custom') + udp_timeout = uci.get(uciconfig, uciroutingsetting, 'udp_timeout'); if (match(proxy_mode, /redirect/)) { self_mark = uci.get(uciconfig, 'infra', 'self_mark') || '100'; redirect_port = uci.get(uciconfig, 'infra', 'redirect_port') || '5331'; @@ -160,6 +163,7 @@ function generate_outbound(node) { /* Direct */ override_address: node.override_address, override_port: strToInt(node.override_port), + proxy_protocol: strToInt(node.proxy_protocol), /* Hysteria (2) */ up_mbps: strToInt(node.hysteria_up_mbps), down_mbps: strToInt(node.hysteria_down_mbps), @@ -482,6 +486,7 @@ push(config.inbounds, { tag: 'mixed-in', listen: '::', listen_port: int(mixed_port), + udp_timeout: udp_timeout ? (udp_timeout + 's') : null, sniff: true, sniff_override_destination: (sniff_override === '1'), set_system_proxy: false @@ -505,6 +510,7 @@ if (match(proxy_mode, /tproxy/)) listen: '::', listen_port: int(tproxy_port), network: 'udp', + udp_timeout: udp_timeout ? (udp_timeout + 's') : null, sniff: true, sniff_override_destination: (sniff_override === '1') }); @@ -520,6 +526,7 @@ if (match(proxy_mode, /tun/)) gso: (tun_gso === '1'), auto_route: false, endpoint_independent_nat: strToBool(endpoint_independent_nat), + udp_timeout: udp_timeout ? (udp_timeout + 's') : null, stack: tcpip_stack, sniff: true, sniff_override_destination: (sniff_override === '1'), diff --git a/luci-app-homeproxy/root/etc/homeproxy/scripts/generate_server.uc b/luci-app-homeproxy/root/etc/homeproxy/scripts/generate_server.uc index 077f68983..7e9b735b3 100755 --- a/luci-app-homeproxy/root/etc/homeproxy/scripts/generate_server.uc +++ b/luci-app-homeproxy/root/etc/homeproxy/scripts/generate_server.uc @@ -49,6 +49,7 @@ uci.foreach(uciconfig, uciserver, (cfg) => { tcp_fast_open: strToBool(cfg.tcp_fast_open), tcp_multi_path: strToBool(cfg.tcp_multi_path), udp_fragment: strToBool(cfg.udp_fragment), + udp_timeout: cfg.udp_timeout ? (cfg.udp_timeout + 's') : null, sniff: true, sniff_override_destination: (cfg.sniff_override === '1'), domain_strategy: cfg.domain_strategy,