mirror of
https://github.com/kenzok8/small-package
synced 2025-01-07 07:06:58 +08:00
update 2024-11-12 00:25:23
This commit is contained in:
parent
6fea7088dc
commit
18d2744e50
@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=libnftnl
|
||||
PKG_CPE_ID:=cpe:/a:netfilter:libnftnl
|
||||
PKG_VERSION:=1.2.6
|
||||
PKG_VERSION:=1.2.8
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
|
||||
PKG_HASH:=ceeaea2cd92147da19f13a35a7f1a4bc2767ff897e838e4b479cf54b59c777f4
|
||||
PKG_HASH:=37fea5d6b5c9b08de7920d298de3cdc942e7ae64b1a3e8b880b2d390ae67ad95
|
||||
|
||||
PKG_MAINTAINER:=Steven Barth <steven@midlink.org>
|
||||
PKG_LICENSE:=GPL-2.0-or-later
|
||||
|
@ -15,13 +15,14 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
|
||||
--- a/include/libnftnl/expr.h
|
||||
+++ b/include/libnftnl/expr.h
|
||||
@@ -245,6 +245,12 @@ enum {
|
||||
@@ -272,6 +272,13 @@ enum {
|
||||
};
|
||||
|
||||
enum {
|
||||
+ NFTNL_EXPR_FULLCONE_FLAGS = NFTNL_EXPR_BASE,
|
||||
+ NFTNL_EXPR_FULLCONE_REG_PROTO_MIN,
|
||||
+ NFTNL_EXPR_FULLCONE_REG_PROTO_MAX,
|
||||
+ __NFTNL_EXPR_FULLCONE_MAX
|
||||
+};
|
||||
+
|
||||
+enum {
|
||||
@ -65,7 +66,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
expr/socket.c \
|
||||
--- /dev/null
|
||||
+++ b/src/expr/fullcone.c
|
||||
@@ -0,0 +1,167 @@
|
||||
@@ -0,0 +1,165 @@
|
||||
+/*
|
||||
+ * (C) 2022 wongsyrone
|
||||
+ *
|
||||
@ -110,8 +111,6 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
+ case NFTNL_EXPR_FULLCONE_REG_PROTO_MAX:
|
||||
+ memcpy(&fullcone->sreg_proto_max, data, sizeof(fullcone->sreg_proto_max));
|
||||
+ break;
|
||||
+ default:
|
||||
+ return -1;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
@ -226,7 +225,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
+struct expr_ops expr_ops_fullcone = {
|
||||
+ .name = "fullcone",
|
||||
+ .alloc_len = sizeof(struct nftnl_expr_fullcone),
|
||||
+ .max_attr = NFTA_FULLCONE_MAX,
|
||||
+ .nftnl_max_attr = __NFTNL_EXPR_FULLCONE_MAX - 1,
|
||||
+ .set = nftnl_expr_fullcone_set,
|
||||
+ .get = nftnl_expr_fullcone_get,
|
||||
+ .parse = nftnl_expr_fullcone_parse,
|
||||
|
@ -1,6 +1,6 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_VERSION:=1.10.0
|
||||
PKG_VERSION:=1.11.0
|
||||
|
||||
LUCI_TITLE:=LuCI Support for mihomo
|
||||
LUCI_DEPENDS:=+luci-base +mihomo
|
||||
|
@ -117,4 +117,16 @@ return baseclass.extend({
|
||||
alert(_('Service is not running.'));
|
||||
}
|
||||
},
|
||||
|
||||
getUsers: function () {
|
||||
return fs.lines('/etc/passwd').then(function (lines) {
|
||||
return lines.map(function (line) { return line.split(/:/)[0] }).filter(function (user) { return user !== 'root' && user !== 'mihomo' });
|
||||
});
|
||||
},
|
||||
|
||||
getGroups: function () {
|
||||
return fs.lines('/etc/group').then(function (lines) {
|
||||
return lines.map(function (line) { return line.split(/:/)[0] }).filter(function (group) { return group !== 'root' && group !== 'mihomo' });
|
||||
});
|
||||
},
|
||||
})
|
||||
|
@ -29,6 +29,8 @@ return view.extend({
|
||||
mihomo.appVersion(),
|
||||
mihomo.coreVersion(),
|
||||
mihomo.status(),
|
||||
mihomo.getUsers(),
|
||||
mihomo.getGroups(),
|
||||
network.getHostHints(),
|
||||
]);
|
||||
},
|
||||
@ -38,7 +40,9 @@ return view.extend({
|
||||
const appVersion = data[2];
|
||||
const coreVersion = data[3];
|
||||
const running = data[4];
|
||||
const hosts = data[5].hosts;
|
||||
const users = data[5];
|
||||
const groups = data[6];
|
||||
const hosts = data[7].hosts;
|
||||
|
||||
let m, s, o, so;
|
||||
|
||||
@ -189,8 +193,8 @@ return view.extend({
|
||||
for (const ip of host.ipaddrs) {
|
||||
const hint = host.name || mac;
|
||||
o.value(ip, hint ? '%s (%s)'.format(ip, hint) : ip);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
o = s.taboption('access_control', form.DynamicList, 'acl_ip6', 'IP6');
|
||||
o.datatype = 'ipmask6';
|
||||
@ -203,8 +207,8 @@ return view.extend({
|
||||
for (const ip of host.ip6addrs) {
|
||||
const hint = host.name || mac;
|
||||
o.value(ip, hint ? '%s (%s)'.format(ip, hint) : ip);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
o = s.taboption('access_control', form.DynamicList, 'acl_mac', 'MAC');
|
||||
o.datatype = 'macaddr';
|
||||
@ -216,19 +220,40 @@ return view.extend({
|
||||
const host = hosts[mac];
|
||||
const hint = host.name || host.ipaddrs[0];
|
||||
o.value(mac, hint ? '%s (%s)'.format(mac, hint) : mac);
|
||||
}
|
||||
};
|
||||
|
||||
o = s.taboption('access_control', widgets.NetworkSelect, 'acl_interface', _('Interface'));
|
||||
o.multiple = true;
|
||||
o.optional = true;
|
||||
o.retain = true;
|
||||
o.depends('access_control_mode', 'allow');
|
||||
o.depends('access_control_mode', 'block');
|
||||
|
||||
s.tab('bypass', _('Bypass'));
|
||||
|
||||
o = s.taboption('bypass', form.MultiValue, 'bypass_user', _('Bypass User'));
|
||||
o.create = true;
|
||||
|
||||
for (const user of users) {
|
||||
o.value(user);
|
||||
};
|
||||
|
||||
o = s.taboption('bypass', form.MultiValue, 'bypass_group', _('Bypass Group'));
|
||||
o.create = true;
|
||||
|
||||
for (const group of groups) {
|
||||
o.value(group);
|
||||
};
|
||||
|
||||
o = s.taboption('bypass', form.Flag, 'bypass_china_mainland_ip', _('Bypass China Mainland IP'));
|
||||
o.rmempty = false;
|
||||
|
||||
o = s.taboption('bypass', form.Value, 'acl_tcp_dport', _('Destination TCP Port to Proxy'));
|
||||
o = s.taboption('bypass', form.Value, 'proxy_tcp_dport', _('Destination TCP Port to Proxy'));
|
||||
o.rmempty = false;
|
||||
o.value('0-65535', _('All Port'));
|
||||
o.value('21 22 80 110 143 194 443 465 853 993 995 8080 8443', _('Commonly Used Port'));
|
||||
|
||||
o = s.taboption('bypass', form.Value, 'acl_udp_dport', _('Destination UDP Port to Proxy'));
|
||||
o = s.taboption('bypass', form.Value, 'proxy_udp_dport', _('Destination UDP Port to Proxy'));
|
||||
o.rmempty = false;
|
||||
o.value('0-65535', _('All Port'));
|
||||
o.value('123 443 8443', _('Commonly Used Port'));
|
||||
@ -316,6 +341,7 @@ return view.extend({
|
||||
o.placeholder = '9090';
|
||||
|
||||
o = s.taboption('external_control', form.Value, 'api_secret', '*' + ' ' + _('API Secret'));
|
||||
o.password = true;
|
||||
o.rmempty = false;
|
||||
|
||||
o = s.taboption('external_control', form.Flag, 'selection_cache', _('Save Proxy Selection'));
|
||||
@ -364,6 +390,7 @@ return view.extend({
|
||||
so.rmempty = false;
|
||||
|
||||
so = o.subsection.option(form.Value, 'password', _('Password'));
|
||||
so.password = true;
|
||||
so.rmempty = false;
|
||||
|
||||
s.tab('tun', _('TUN Config'));
|
||||
@ -536,6 +563,7 @@ return view.extend({
|
||||
s.tab('mixin_file_content', _('Mixin File Content'));
|
||||
|
||||
o = s.taboption('mixin_file_content', form.Flag, 'mixin_file_content', '*' + ' ' + _('Enable'), _('Please go to the editor tab to edit the file for mixin'));
|
||||
o.rmempty = false;
|
||||
|
||||
return m.render();
|
||||
}
|
||||
|
@ -27,11 +27,11 @@ return view.extend({
|
||||
|
||||
for (const profile of profiles) {
|
||||
o.value(mihomo.profilesDir + '/' + profile.name, _('File:') + profile.name);
|
||||
}
|
||||
};
|
||||
|
||||
for (const subscription of subscriptions) {
|
||||
o.value(mihomo.subscriptionsDir + '/' + subscription['.name'] + '.yaml', _('Subscription:') + subscription.name);
|
||||
}
|
||||
};
|
||||
|
||||
o.value(mihomo.mixinFilePath, _('File for Mixin'));
|
||||
o.value(mihomo.runProfilePath, _('Profile for Startup'));
|
||||
|
@ -1,33 +1,33 @@
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=UTF-8"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:314
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:339
|
||||
msgid "API Port"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:318
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:343
|
||||
msgid "API Secret"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:174
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:178
|
||||
msgid "Access Control"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:177
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:181
|
||||
msgid "All Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:228
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:233
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:253
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:258
|
||||
msgid "All Port"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:326
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:352
|
||||
msgid "Allow Lan"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:178
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:421
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:182
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:448
|
||||
msgid "Allow Mode"
|
||||
msgstr ""
|
||||
|
||||
@ -35,32 +35,40 @@ msgstr ""
|
||||
msgid "App Log"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:49
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:53
|
||||
msgid "App Version"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:285
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:310
|
||||
msgid "Auto"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:100
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:104
|
||||
msgid "Basic Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:179
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:420
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:183
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:447
|
||||
msgid "Block Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:221
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:232
|
||||
msgid "Bypass"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:223
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:248
|
||||
msgid "Bypass China Mainland IP"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:117
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:241
|
||||
msgid "Bypass Group"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:234
|
||||
msgid "Bypass User"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:121
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/editor.js:25
|
||||
msgid "Choose Profile"
|
||||
msgstr ""
|
||||
@ -70,8 +78,8 @@ msgstr ""
|
||||
msgid "Clear Log"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:229
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:234
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:254
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:259
|
||||
msgid "Commonly Used Port"
|
||||
msgstr ""
|
||||
|
||||
@ -83,71 +91,71 @@ msgstr ""
|
||||
msgid "Core Log"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:63
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:67
|
||||
msgid "Core Status"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:56
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:60
|
||||
msgid "Core Version"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:112
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:116
|
||||
msgid "Cron Expression"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:392
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:419
|
||||
msgid "DNS Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:398
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:425
|
||||
msgid "DNS Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:394
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:421
|
||||
msgid "DNS Port"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:226
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:251
|
||||
msgid "Destination TCP Port to Proxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:231
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:256
|
||||
msgid "Destination UDP Port to Proxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:282
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:307
|
||||
msgid "Direct Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:287
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:312
|
||||
msgid "Disable"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:432
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:459
|
||||
msgid "DoH Prefer HTTP/3"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:458
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:485
|
||||
msgid "Domain Name"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:352
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:378
|
||||
msgid "Edit Authentications"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:414
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:441
|
||||
msgid "Edit Fake-IP Filters"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:447
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:474
|
||||
msgid "Edit Hosts"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:489
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:516
|
||||
msgid "Edit Nameserver Policies"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:466
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:493
|
||||
msgid "Edit Nameservers"
|
||||
msgstr ""
|
||||
|
||||
@ -155,38 +163,38 @@ msgstr ""
|
||||
msgid "Editor"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:102
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:144
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:286
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:360
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:455
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:474
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:497
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:538
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:106
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:148
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:311
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:386
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:482
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:501
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:524
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:565
|
||||
msgid "Enable"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:389
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:416
|
||||
msgid "Endpoint Independent NAT"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:303
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:328
|
||||
msgid "External Control Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:424
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:451
|
||||
msgid "Fake-IP Cache"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:418
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:445
|
||||
msgid "Fake-IP Filter Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:403
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:430
|
||||
msgid "Fake-IP Range"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:137
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:141
|
||||
msgid "Fast Reload"
|
||||
msgstr ""
|
||||
|
||||
@ -202,60 +210,60 @@ msgstr ""
|
||||
msgid "File for Reserved IP6"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:121
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:125
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/editor.js:29
|
||||
msgid "File:"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:380
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:407
|
||||
msgid "GSO"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:383
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:410
|
||||
msgid "GSO Max Size"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:270
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:295
|
||||
msgid "General Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:511
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:538
|
||||
msgid "GeoData Loader"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:507
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:534
|
||||
msgid "GeoIP Format"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:524
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:551
|
||||
msgid "GeoIP(ASN) Url"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:521
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:548
|
||||
msgid "GeoIP(DAT) Url"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:518
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:545
|
||||
msgid "GeoIP(MMDB) Url"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:515
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:542
|
||||
msgid "GeoSite Url"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:527
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:554
|
||||
msgid "GeoX Auto Update"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:505
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:532
|
||||
msgid "GeoX Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:530
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:557
|
||||
msgid "GeoX Update Interval"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:280
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:305
|
||||
msgid "Global Mode"
|
||||
msgstr ""
|
||||
|
||||
@ -263,48 +271,52 @@ msgstr ""
|
||||
msgid "Grant access to mihomo procedures"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:329
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:355
|
||||
msgid "HTTP Port"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:45
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:49
|
||||
msgid "How To Use"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:461
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:488
|
||||
msgid "IP"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:156
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:160
|
||||
msgid "IPv4 DNS Hijack"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:162
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:166
|
||||
msgid "IPv4 Proxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:292
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:435
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:317
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:462
|
||||
msgid "IPv6"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:159
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:163
|
||||
msgid "IPv6 DNS Hijack"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:165
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:169
|
||||
msgid "IPv6 Proxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:324
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:350
|
||||
msgid "Inbound Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:171
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:225
|
||||
msgid "Interface"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:175
|
||||
msgid "Lan Proxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:259
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:284
|
||||
msgid "Local"
|
||||
msgstr ""
|
||||
|
||||
@ -312,54 +324,54 @@ msgstr ""
|
||||
msgid "Log"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:272
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:297
|
||||
msgid "Log Level"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:376
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:403
|
||||
msgid "MTU"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:284
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:309
|
||||
msgid "Match Process"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:500
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:527
|
||||
msgid "Matcher"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:513
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:540
|
||||
msgid "Memory Conservative Loader"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:45
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:49
|
||||
#: mihomo/luci-app-mihomo/root/usr/share/luci/menu.d/luci-app-mihomo.json:3
|
||||
msgid "MihomoTProxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:337
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:363
|
||||
msgid "Mixed Port"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:131
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:135
|
||||
msgid "Mixin"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:268
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:293
|
||||
msgid "Mixin Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:536
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:563
|
||||
msgid "Mixin File Content"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:176
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:279
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:180
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:304
|
||||
msgid "Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:484
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:503
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:511
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:530
|
||||
msgid "Nameserver"
|
||||
msgstr ""
|
||||
|
||||
@ -367,43 +379,43 @@ msgstr ""
|
||||
msgid "Not Running"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:95
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:99
|
||||
msgid "Open Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:289
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:314
|
||||
msgid "Outbound Interface"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:349
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:375
|
||||
msgid "Overwrite Authentication"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:409
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:436
|
||||
msgid "Overwrite Fake-IP Filter"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:444
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:471
|
||||
msgid "Overwrite Hosts"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:463
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:490
|
||||
msgid "Overwrite Nameserver"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:486
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:513
|
||||
msgid "Overwrite Nameserver Policy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:366
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:392
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:538
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:565
|
||||
msgid "Please go to the editor tab to edit the file for mixin"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:256
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:281
|
||||
msgid "Prefer"
|
||||
msgstr ""
|
||||
|
||||
@ -411,39 +423,39 @@ msgstr ""
|
||||
msgid "Profile for Startup"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:140
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:144
|
||||
msgid "Proxy Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:148
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:152
|
||||
msgid "Redirect Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:341
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:367
|
||||
msgid "Redirect Port"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:75
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:79
|
||||
msgid "Reload Service"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:258
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:283
|
||||
msgid "Remote"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:429
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:456
|
||||
msgid "Respect Rules"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:82
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:86
|
||||
msgid "Restart Service"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:168
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:172
|
||||
msgid "Router Proxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:281
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:306
|
||||
msgid "Rule Mode"
|
||||
msgstr ""
|
||||
|
||||
@ -451,15 +463,15 @@ msgstr ""
|
||||
msgid "Running"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:333
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:359
|
||||
msgid "SOCKS Port"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:321
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:347
|
||||
msgid "Save Proxy Selection"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:109
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:113
|
||||
msgid "Scheduled Restart"
|
||||
msgstr ""
|
||||
|
||||
@ -473,94 +485,94 @@ msgstr ""
|
||||
msgid "Service is not running."
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:371
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:398
|
||||
msgid "Stack"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:512
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:539
|
||||
msgid "Standard Loader"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:105
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:109
|
||||
msgid "Start Delay"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:47
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:51
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:236
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:261
|
||||
msgid "Subscription Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:241
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:266
|
||||
msgid "Subscription Name"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:245
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:270
|
||||
msgid "Subscription Url"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:125
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:129
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/editor.js:33
|
||||
msgid "Subscription:"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:295
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:320
|
||||
msgid "TCP Keep Alive Idle"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:299
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:324
|
||||
msgid "TCP Keep Alive Interval"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:147
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:151
|
||||
msgid "TCP Proxy Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:149
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:153
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:157
|
||||
msgid "TPROXY Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:345
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:371
|
||||
msgid "TPROXY Port"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:369
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:396
|
||||
msgid "TUN Config"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:150
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:154
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:158
|
||||
msgid "TUN Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:134
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:138
|
||||
msgid "Test Profile"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:142
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:146
|
||||
msgid "Transparent Proxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:45
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:49
|
||||
msgid "Transparent Proxy with Mihomo on OpenWrt."
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:477
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:504
|
||||
msgid "Type"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:152
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:156
|
||||
msgid "UDP Proxy Mode"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:305
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:330
|
||||
msgid "UI Name"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:308
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:333
|
||||
msgid "UI Url"
|
||||
msgstr ""
|
||||
|
||||
@ -569,30 +581,30 @@ msgstr ""
|
||||
msgid "Unknown"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:263
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:288
|
||||
msgid "Update"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:89
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:93
|
||||
msgid "Update Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:128
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:132
|
||||
msgid "Upload Profile"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:441
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:468
|
||||
msgid "Use Hosts"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:438
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:465
|
||||
msgid "Use System Hosts"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:248
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:273
|
||||
msgid "User Agent"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:363
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:389
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
|
@ -8,33 +8,33 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:314
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:339
|
||||
msgid "API Port"
|
||||
msgstr "API 端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:318
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:343
|
||||
msgid "API Secret"
|
||||
msgstr "API 密钥"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:174
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:178
|
||||
msgid "Access Control"
|
||||
msgstr "访问控制"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:177
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:181
|
||||
msgid "All Mode"
|
||||
msgstr "全部模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:228
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:233
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:253
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:258
|
||||
msgid "All Port"
|
||||
msgstr "全部端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:326
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:352
|
||||
msgid "Allow Lan"
|
||||
msgstr "允许局域网访问"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:178
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:421
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:182
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:448
|
||||
msgid "Allow Mode"
|
||||
msgstr "白名单模式"
|
||||
|
||||
@ -42,32 +42,40 @@ msgstr "白名单模式"
|
||||
msgid "App Log"
|
||||
msgstr "插件日志"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:49
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:53
|
||||
msgid "App Version"
|
||||
msgstr "插件版本"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:285
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:310
|
||||
msgid "Auto"
|
||||
msgstr "自动"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:100
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:104
|
||||
msgid "Basic Config"
|
||||
msgstr "基础配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:179
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:420
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:183
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:447
|
||||
msgid "Block Mode"
|
||||
msgstr "黑名单模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:221
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:232
|
||||
msgid "Bypass"
|
||||
msgstr "绕过"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:223
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:248
|
||||
msgid "Bypass China Mainland IP"
|
||||
msgstr "绕过中国大陆 IP"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:117
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:241
|
||||
msgid "Bypass Group"
|
||||
msgstr "绕过用户组"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:234
|
||||
msgid "Bypass User"
|
||||
msgstr "绕过用户"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:121
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/editor.js:25
|
||||
msgid "Choose Profile"
|
||||
msgstr "选择配置文件"
|
||||
@ -77,8 +85,8 @@ msgstr "选择配置文件"
|
||||
msgid "Clear Log"
|
||||
msgstr "清空日志"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:229
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:234
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:254
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:259
|
||||
msgid "Commonly Used Port"
|
||||
msgstr "常用端口"
|
||||
|
||||
@ -90,71 +98,71 @@ msgstr "配置"
|
||||
msgid "Core Log"
|
||||
msgstr "核心日志"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:63
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:67
|
||||
msgid "Core Status"
|
||||
msgstr "核心状态"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:56
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:60
|
||||
msgid "Core Version"
|
||||
msgstr "核心版本"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:112
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:116
|
||||
msgid "Cron Expression"
|
||||
msgstr "Cron 表达式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:392
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:419
|
||||
msgid "DNS Config"
|
||||
msgstr "DNS 配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:398
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:425
|
||||
msgid "DNS Mode"
|
||||
msgstr "DNS 模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:394
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:421
|
||||
msgid "DNS Port"
|
||||
msgstr "DNS 端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:226
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:251
|
||||
msgid "Destination TCP Port to Proxy"
|
||||
msgstr "要代理的 TCP 目标端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:231
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:256
|
||||
msgid "Destination UDP Port to Proxy"
|
||||
msgstr "要代理的 UDP 目标端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:282
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:307
|
||||
msgid "Direct Mode"
|
||||
msgstr "直连模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:287
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:312
|
||||
msgid "Disable"
|
||||
msgstr "禁用"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:432
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:459
|
||||
msgid "DoH Prefer HTTP/3"
|
||||
msgstr "DoH 优先 HTTP/3"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:458
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:485
|
||||
msgid "Domain Name"
|
||||
msgstr "域名"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:352
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:378
|
||||
msgid "Edit Authentications"
|
||||
msgstr "编辑身份验证"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:414
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:441
|
||||
msgid "Edit Fake-IP Filters"
|
||||
msgstr "编辑 Fake-IP 过滤列表"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:447
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:474
|
||||
msgid "Edit Hosts"
|
||||
msgstr "编辑 Hosts"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:489
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:516
|
||||
msgid "Edit Nameserver Policies"
|
||||
msgstr "编辑 DNS 服务器查询策略"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:466
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:493
|
||||
msgid "Edit Nameservers"
|
||||
msgstr "编辑 DNS 服务器"
|
||||
|
||||
@ -162,38 +170,38 @@ msgstr "编辑 DNS 服务器"
|
||||
msgid "Editor"
|
||||
msgstr "编辑器"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:102
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:144
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:286
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:360
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:455
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:474
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:497
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:538
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:106
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:148
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:311
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:386
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:482
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:501
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:524
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:565
|
||||
msgid "Enable"
|
||||
msgstr "启用"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:389
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:416
|
||||
msgid "Endpoint Independent NAT"
|
||||
msgstr "独立于端点的 NAT"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:303
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:328
|
||||
msgid "External Control Config"
|
||||
msgstr "外部控制配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:424
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:451
|
||||
msgid "Fake-IP Cache"
|
||||
msgstr "Fake-IP 缓存"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:418
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:445
|
||||
msgid "Fake-IP Filter Mode"
|
||||
msgstr "Fake-IP 过滤模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:403
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:430
|
||||
msgid "Fake-IP Range"
|
||||
msgstr "Fake-IP 范围"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:137
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:141
|
||||
msgid "Fast Reload"
|
||||
msgstr "快速重载"
|
||||
|
||||
@ -209,60 +217,60 @@ msgstr "IPv4 保留地址"
|
||||
msgid "File for Reserved IP6"
|
||||
msgstr "IPv6 保留地址"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:121
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:125
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/editor.js:29
|
||||
msgid "File:"
|
||||
msgstr "文件:"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:380
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:407
|
||||
msgid "GSO"
|
||||
msgstr "通用分段卸载"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:383
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:410
|
||||
msgid "GSO Max Size"
|
||||
msgstr "分段最大长度"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:270
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:295
|
||||
msgid "General Config"
|
||||
msgstr "全局配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:511
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:538
|
||||
msgid "GeoData Loader"
|
||||
msgstr "GeoData 加载器"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:507
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:534
|
||||
msgid "GeoIP Format"
|
||||
msgstr "GeoIP 格式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:524
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:551
|
||||
msgid "GeoIP(ASN) Url"
|
||||
msgstr "GeoIP(ASN) 下载地址"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:521
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:548
|
||||
msgid "GeoIP(DAT) Url"
|
||||
msgstr "GeoIP(DAT) 下载地址"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:518
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:545
|
||||
msgid "GeoIP(MMDB) Url"
|
||||
msgstr "GeoIP(MMDB) 下载地址"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:515
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:542
|
||||
msgid "GeoSite Url"
|
||||
msgstr "GeoSite 下载地址"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:527
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:554
|
||||
msgid "GeoX Auto Update"
|
||||
msgstr "定时更新GeoX文件"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:505
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:532
|
||||
msgid "GeoX Config"
|
||||
msgstr "GeoX 配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:530
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:557
|
||||
msgid "GeoX Update Interval"
|
||||
msgstr "GeoX 文件更新间隔"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:280
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:305
|
||||
msgid "Global Mode"
|
||||
msgstr "全局模式"
|
||||
|
||||
@ -270,48 +278,52 @@ msgstr "全局模式"
|
||||
msgid "Grant access to mihomo procedures"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:329
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:355
|
||||
msgid "HTTP Port"
|
||||
msgstr "HTTP 端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:45
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:49
|
||||
msgid "How To Use"
|
||||
msgstr "使用说明"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:461
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:488
|
||||
msgid "IP"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:156
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:160
|
||||
msgid "IPv4 DNS Hijack"
|
||||
msgstr "IPv4 DNS 劫持"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:162
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:166
|
||||
msgid "IPv4 Proxy"
|
||||
msgstr "IPv4 代理"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:292
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:435
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:317
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:462
|
||||
msgid "IPv6"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:159
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:163
|
||||
msgid "IPv6 DNS Hijack"
|
||||
msgstr "IPv6 DNS 劫持"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:165
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:169
|
||||
msgid "IPv6 Proxy"
|
||||
msgstr "IPv6 代理"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:324
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:350
|
||||
msgid "Inbound Config"
|
||||
msgstr "入站配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:171
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:225
|
||||
msgid "Interface"
|
||||
msgstr "接口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:175
|
||||
msgid "Lan Proxy"
|
||||
msgstr "局域网代理"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:259
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:284
|
||||
msgid "Local"
|
||||
msgstr "本地"
|
||||
|
||||
@ -319,54 +331,54 @@ msgstr "本地"
|
||||
msgid "Log"
|
||||
msgstr "日志"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:272
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:297
|
||||
msgid "Log Level"
|
||||
msgstr "日志级别"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:376
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:403
|
||||
msgid "MTU"
|
||||
msgstr "最大传输单元"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:284
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:309
|
||||
msgid "Match Process"
|
||||
msgstr "匹配进程"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:500
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:527
|
||||
msgid "Matcher"
|
||||
msgstr "匹配"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:513
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:540
|
||||
msgid "Memory Conservative Loader"
|
||||
msgstr "为内存受限设备优化的加载器"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:45
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:49
|
||||
#: mihomo/luci-app-mihomo/root/usr/share/luci/menu.d/luci-app-mihomo.json:3
|
||||
msgid "MihomoTProxy"
|
||||
msgstr ""
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:337
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:363
|
||||
msgid "Mixed Port"
|
||||
msgstr "混合端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:131
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:135
|
||||
msgid "Mixin"
|
||||
msgstr "混入"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:268
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:293
|
||||
msgid "Mixin Config"
|
||||
msgstr "混入配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:536
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:563
|
||||
msgid "Mixin File Content"
|
||||
msgstr "混入文件内容"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:176
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:279
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:180
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:304
|
||||
msgid "Mode"
|
||||
msgstr "模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:484
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:503
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:511
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:530
|
||||
msgid "Nameserver"
|
||||
msgstr "DNS 服务器"
|
||||
|
||||
@ -374,43 +386,43 @@ msgstr "DNS 服务器"
|
||||
msgid "Not Running"
|
||||
msgstr "未在运行"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:95
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:99
|
||||
msgid "Open Dashboard"
|
||||
msgstr "打开面板"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:289
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:314
|
||||
msgid "Outbound Interface"
|
||||
msgstr "出站接口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:349
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:375
|
||||
msgid "Overwrite Authentication"
|
||||
msgstr "覆盖身份验证"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:409
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:436
|
||||
msgid "Overwrite Fake-IP Filter"
|
||||
msgstr "覆盖 Fake-IP 过滤列表"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:444
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:471
|
||||
msgid "Overwrite Hosts"
|
||||
msgstr "覆盖 Hosts"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:463
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:490
|
||||
msgid "Overwrite Nameserver"
|
||||
msgstr "覆盖 DNS 服务器"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:486
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:513
|
||||
msgid "Overwrite Nameserver Policy"
|
||||
msgstr "覆盖 DNS 服务器查询策略"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:366
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:392
|
||||
msgid "Password"
|
||||
msgstr "密码"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:538
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:565
|
||||
msgid "Please go to the editor tab to edit the file for mixin"
|
||||
msgstr "请前往编辑器标签编辑用于混入的文件"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:256
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:281
|
||||
msgid "Prefer"
|
||||
msgstr "优先"
|
||||
|
||||
@ -418,39 +430,39 @@ msgstr "优先"
|
||||
msgid "Profile for Startup"
|
||||
msgstr "用于启动的配置文件"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:140
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:144
|
||||
msgid "Proxy Config"
|
||||
msgstr "代理配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:148
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:152
|
||||
msgid "Redirect Mode"
|
||||
msgstr "Redirect 模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:341
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:367
|
||||
msgid "Redirect Port"
|
||||
msgstr "Redirect 端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:75
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:79
|
||||
msgid "Reload Service"
|
||||
msgstr "重载服务"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:258
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:283
|
||||
msgid "Remote"
|
||||
msgstr "远程"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:429
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:456
|
||||
msgid "Respect Rules"
|
||||
msgstr "遵循分流规则"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:82
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:86
|
||||
msgid "Restart Service"
|
||||
msgstr "重启服务"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:168
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:172
|
||||
msgid "Router Proxy"
|
||||
msgstr "路由器代理"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:281
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:306
|
||||
msgid "Rule Mode"
|
||||
msgstr "规则模式"
|
||||
|
||||
@ -458,15 +470,15 @@ msgstr "规则模式"
|
||||
msgid "Running"
|
||||
msgstr "运行中"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:333
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:359
|
||||
msgid "SOCKS Port"
|
||||
msgstr "SOCKS 端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:321
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:347
|
||||
msgid "Save Proxy Selection"
|
||||
msgstr "保存节点/策略组选择"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:109
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:113
|
||||
msgid "Scheduled Restart"
|
||||
msgstr "定时重启"
|
||||
|
||||
@ -480,94 +492,94 @@ msgstr "滚动到底部"
|
||||
msgid "Service is not running."
|
||||
msgstr "服务未在运行。"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:371
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:398
|
||||
msgid "Stack"
|
||||
msgstr "栈"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:512
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:539
|
||||
msgid "Standard Loader"
|
||||
msgstr "标准加载器"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:105
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:109
|
||||
msgid "Start Delay"
|
||||
msgstr "启动延迟"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:47
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:51
|
||||
msgid "Status"
|
||||
msgstr "状态"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:236
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:261
|
||||
msgid "Subscription Config"
|
||||
msgstr "订阅配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:241
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:266
|
||||
msgid "Subscription Name"
|
||||
msgstr "订阅名称"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:245
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:270
|
||||
msgid "Subscription Url"
|
||||
msgstr "订阅链接"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:125
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:129
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/editor.js:33
|
||||
msgid "Subscription:"
|
||||
msgstr "订阅:"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:295
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:320
|
||||
msgid "TCP Keep Alive Idle"
|
||||
msgstr "TCP Keep Alive 空闲"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:299
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:324
|
||||
msgid "TCP Keep Alive Interval"
|
||||
msgstr "TCP Keep Alive 间隔"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:147
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:151
|
||||
msgid "TCP Proxy Mode"
|
||||
msgstr "TCP 代理模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:149
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:153
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:157
|
||||
msgid "TPROXY Mode"
|
||||
msgstr "TPROXY 模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:345
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:371
|
||||
msgid "TPROXY Port"
|
||||
msgstr "TPROXY 端口"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:369
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:396
|
||||
msgid "TUN Config"
|
||||
msgstr "TUN 配置"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:150
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:154
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:158
|
||||
msgid "TUN Mode"
|
||||
msgstr "TUN 模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:134
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:138
|
||||
msgid "Test Profile"
|
||||
msgstr "检查配置文件"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:142
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:146
|
||||
msgid "Transparent Proxy"
|
||||
msgstr "透明代理"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:45
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:49
|
||||
msgid "Transparent Proxy with Mihomo on OpenWrt."
|
||||
msgstr "在 OpenWrt 上使用 Mihomo 进行透明代理。"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:477
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:504
|
||||
msgid "Type"
|
||||
msgstr "类型"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:152
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:156
|
||||
msgid "UDP Proxy Mode"
|
||||
msgstr "UDP 代理模式"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:305
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:330
|
||||
msgid "UI Name"
|
||||
msgstr "UI 名称"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:308
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:333
|
||||
msgid "UI Url"
|
||||
msgstr "UI 下载地址"
|
||||
|
||||
@ -576,30 +588,33 @@ msgstr "UI 下载地址"
|
||||
msgid "Unknown"
|
||||
msgstr "未知"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:263
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:288
|
||||
msgid "Update"
|
||||
msgstr "更新"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:89
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:93
|
||||
msgid "Update Dashboard"
|
||||
msgstr "更新面板"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:128
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:132
|
||||
msgid "Upload Profile"
|
||||
msgstr "上传配置文件"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:441
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:468
|
||||
msgid "Use Hosts"
|
||||
msgstr "使用 Hosts"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:438
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:465
|
||||
msgid "Use System Hosts"
|
||||
msgstr "使用系统的 Hosts"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:248
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:273
|
||||
msgid "User Agent"
|
||||
msgstr "用户代理(UA)"
|
||||
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:363
|
||||
#: mihomo/luci-app-mihomo/htdocs/luci-static/resources/view/mihomo/config.js:389
|
||||
msgid "Username"
|
||||
msgstr "用户名"
|
||||
|
||||
#~ msgid "Inbound Interface"
|
||||
#~ msgstr "入站接口"
|
||||
|
4
luci-app-mihomo/root/etc/uci-defaults/40_luci-mihomo
Normal file
4
luci-app-mihomo/root/etc/uci-defaults/40_luci-mihomo
Normal file
@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
rm -rf /var/luci-modulecache/; rm -f /var/luci-indexcache;
|
||||
[ -x /etc/init.d/rpcd ] && /etc/init.d/rpcd reload;
|
||||
exit 0
|
@ -7,6 +7,8 @@
|
||||
"service": [ "list" ]
|
||||
},
|
||||
"file": {
|
||||
"/etc/passwd": ["read"],
|
||||
"/etc/group": ["read"],
|
||||
"/etc/mihomo/profiles/*.yaml": ["read"],
|
||||
"/etc/mihomo/profiles/*.yml": ["read"],
|
||||
"/etc/mihomo/subscriptions/*.yaml": ["read"],
|
||||
|
@ -1,7 +1,7 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=mihomo
|
||||
PKG_RELEASE:=2
|
||||
PKG_RELEASE:=3
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/MetaCubeX/mihomo.git
|
||||
|
@ -24,9 +24,24 @@ config proxy 'proxy'
|
||||
option 'acl_ip' ''
|
||||
option 'acl_ip6' ''
|
||||
option 'acl_mac' ''
|
||||
option 'acl_interface' ''
|
||||
list 'bypass_user' 'aria2'
|
||||
list 'bypass_user' 'dnsmasq'
|
||||
list 'bypass_user' 'ftp'
|
||||
list 'bypass_user' 'logd'
|
||||
list 'bypass_user' 'nobody'
|
||||
list 'bypass_user' 'ntp'
|
||||
list 'bypass_user' 'ubus'
|
||||
list 'bypass_group' 'aria2'
|
||||
list 'bypass_group' 'dnsmasq'
|
||||
list 'bypass_group' 'ftp'
|
||||
list 'bypass_group' 'logd'
|
||||
list 'bypass_group' 'nogroup'
|
||||
list 'bypass_group' 'ntp'
|
||||
list 'bypass_group' 'ubus'
|
||||
option 'bypass_china_mainland_ip' '0'
|
||||
option 'acl_tcp_dport' '0-65535'
|
||||
option 'acl_udp_dport' '0-65535'
|
||||
option 'proxy_tcp_dport' '0-65535'
|
||||
option 'proxy_udp_dport' '0-65535'
|
||||
|
||||
config subscription 'subscription'
|
||||
option 'name' 'default'
|
||||
|
@ -64,11 +64,11 @@ start_service() {
|
||||
config_get_bool router_proxy "proxy" "router_proxy" 0
|
||||
config_get_bool lan_proxy "proxy" "lan_proxy" 0
|
||||
### access control
|
||||
local access_control_mode bypass_china_mainland_ip acl_tcp_dport acl_udp_dport
|
||||
local access_control_mode bypass_china_mainland_ip proxy_tcp_dport proxy_udp_dport
|
||||
config_get access_control_mode "proxy" "access_control_mode"
|
||||
config_get_bool bypass_china_mainland_ip "proxy" "bypass_china_mainland_ip" 0
|
||||
config_get acl_tcp_dport "proxy" "acl_tcp_dport" "0-65535"
|
||||
config_get acl_udp_dport "proxy" "acl_udp_dport" "0-65535"
|
||||
config_get proxy_tcp_dport "proxy" "proxy_tcp_dport" "0-65535"
|
||||
config_get proxy_udp_dport "proxy" "proxy_udp_dport" "0-65535"
|
||||
## mixin config
|
||||
### general
|
||||
local mode match_process outbound_interface ipv6 tcp_keep_alive_idle tcp_keep_alive_interval log_level
|
||||
@ -336,11 +336,9 @@ start_service() {
|
||||
ip -6 rule add pref "$UDP_RULE_PREF" fwmark "$FW_MARK/$FW_MARK_MASK" ipproto udp table "$udp_route_table"
|
||||
fi
|
||||
fi
|
||||
nft -f "$HIJACK_NFT" -D FW_MARK="$FW_MARK" -D FW_MARK_MASK="$FW_MARK_MASK" -D TUN_DEVICE="$TUN_DEVICE" -D DNS_PORT="$dns_port" -D REDIR_PORT="$redir_port" -D TPROXY_PORT="$tproxy_port"
|
||||
nft -f "$HIJACK_NFT" -D MIHOMO_GROUP="$MIHOMO_GROUP" -D FW_MARK="$FW_MARK" -D FW_MARK_MASK="$FW_MARK_MASK" -D TUN_DEVICE="$TUN_DEVICE" -D FAKE_IP="$fake_ip_range" -D DNS_PORT="$dns_port" -D REDIR_PORT="$redir_port" -D TPROXY_PORT="$tproxy_port"
|
||||
nft -f "$RESERVED_IP_NFT"
|
||||
nft -f "$RESERVED_IP6_NFT"
|
||||
nft add element inet "$FW_TABLE" bypass_group \{ "$MIHOMO_GROUP" \}
|
||||
nft add element inet "$FW_TABLE" fake_ip \{ "$fake_ip_range" \}
|
||||
# dns hijack
|
||||
if [ "$ipv4_dns_hijack" == 1 ]; then
|
||||
log "Transparent Proxy: IPv4 DNS Hijack is enabled, IPv4 dns request will redirect to the core."
|
||||
@ -359,7 +357,9 @@ start_service() {
|
||||
log "Transparent Proxy: IPv6 Proxy is enabled, set proxy for IPv6 traffic."
|
||||
nft add element inet "$FW_TABLE" proxy_nfproto \{ ipv6 \}
|
||||
fi
|
||||
# bypass china mainland ip
|
||||
# bypass
|
||||
config_list_foreach "proxy" "bypass_user" add_bypass_user
|
||||
config_list_foreach "proxy" "bypass_group" add_bypass_group
|
||||
if [ "$bypass_china_mainland_ip" == 1 ]; then
|
||||
log "Transparent Proxy: Bypass china mainland ip is enabled."
|
||||
if [ "$ipv4_proxy" == 1 ]; then
|
||||
@ -369,15 +369,14 @@ start_service() {
|
||||
nft -f "$GEOIP6_CN_NFT"
|
||||
fi
|
||||
fi
|
||||
# destination port to proxy
|
||||
log "Transparent Proxy: Destination TCP Port to Proxy: $acl_tcp_dport."
|
||||
log "Transparent Proxy: Destination UDP Port to Proxy: $acl_udp_dport."
|
||||
local acl_dport
|
||||
for acl_dport in $acl_tcp_dport; do
|
||||
nft add element inet "$FW_TABLE" acl_dport \{ "tcp" . "$acl_dport" \}
|
||||
log "Transparent Proxy: Destination TCP Port to Proxy: $proxy_tcp_dport."
|
||||
log "Transparent Proxy: Destination UDP Port to Proxy: $proxy_udp_dport."
|
||||
local proxy_dport
|
||||
for proxy_dport in $proxy_tcp_dport; do
|
||||
nft add element inet "$FW_TABLE" proxy_dport \{ "tcp" . "$proxy_dport" \}
|
||||
done
|
||||
for acl_dport in $acl_udp_dport; do
|
||||
nft add element inet "$FW_TABLE" acl_dport \{ "udp" . "$acl_dport" \}
|
||||
for proxy_dport in $proxy_udp_dport; do
|
||||
nft add element inet "$FW_TABLE" proxy_dport \{ "udp" . "$proxy_dport" \}
|
||||
done
|
||||
# router proxy
|
||||
if [ "$router_proxy" == 1 ]; then
|
||||
@ -406,6 +405,7 @@ start_service() {
|
||||
config_list_foreach "proxy" "acl_ip" add_acl_ip
|
||||
config_list_foreach "proxy" "acl_ip6" add_acl_ip6
|
||||
config_list_foreach "proxy" "acl_mac" add_acl_mac
|
||||
config_list_foreach "proxy" "acl_interface" add_acl_interface
|
||||
if [ "$tcp_transparent_proxy_mode" == "redirect" ]; then
|
||||
nft insert rule inet "$FW_TABLE" dstnat jump "${access_control_mode}_dns_hijack"
|
||||
nft add rule inet "$FW_TABLE" dstnat meta l4proto tcp jump "${access_control_mode}_${tcp_transparent_proxy_mode}"
|
||||
@ -592,6 +592,20 @@ mixin_nameserver_policy() {
|
||||
nameserver="$1" matcher="$2" yq -M -i '.dns.nameserver-policy.[env(matcher)] += [env(nameserver)]' "$RUN_PROFILE_PATH"
|
||||
}
|
||||
|
||||
add_bypass_user() {
|
||||
local user; user="$1"
|
||||
if [ "$user" != "root" ] && (cut -d ':' -f 1 < /etc/passwd | grep -q "$user"); then
|
||||
nft add element inet "$FW_TABLE" bypass_user \{ "$user" \}
|
||||
fi
|
||||
}
|
||||
|
||||
add_bypass_group() {
|
||||
local group; group="$1"
|
||||
if [ "$group" != "root" ] && (cut -d ':' -f 1 < /etc/group | grep -q "$group"); then
|
||||
nft add element inet "$FW_TABLE" bypass_group \{ "$group" \}
|
||||
fi
|
||||
}
|
||||
|
||||
add_acl_ip() {
|
||||
nft add element inet "$FW_TABLE" acl_ip \{ "$1" \}
|
||||
}
|
||||
@ -604,6 +618,14 @@ add_acl_mac() {
|
||||
nft add element inet "$FW_TABLE" acl_mac \{ "$1" \}
|
||||
}
|
||||
|
||||
add_acl_interface() {
|
||||
local interface; interface="$1"
|
||||
local device; network_get_device device "$interface"
|
||||
if [ -n "$device" ]; then
|
||||
nft add element inet "$FW_TABLE" acl_interface \{ "$device" \}
|
||||
fi
|
||||
}
|
||||
|
||||
update_subscription() {
|
||||
local subscription_section; subscription_section="$1"
|
||||
if [ -n "$subscription_section" ]; then
|
||||
|
@ -1,14 +1,18 @@
|
||||
#!/usr/sbin/nft -f
|
||||
|
||||
table inet mihomo {
|
||||
set bypass_user {
|
||||
type uid
|
||||
flags interval
|
||||
auto-merge
|
||||
}
|
||||
|
||||
set bypass_group {
|
||||
type gid
|
||||
flags interval
|
||||
auto-merge
|
||||
elements = {
|
||||
ntp,
|
||||
dnsmasq,
|
||||
logd
|
||||
$MIHOMO_GROUP
|
||||
}
|
||||
}
|
||||
|
||||
@ -44,12 +48,7 @@ table inet mihomo {
|
||||
auto-merge
|
||||
}
|
||||
|
||||
set fake_ip {
|
||||
type ipv4_addr
|
||||
flags interval
|
||||
}
|
||||
|
||||
set acl_dport {
|
||||
set proxy_dport {
|
||||
type inet_proto . inet_service
|
||||
flags interval
|
||||
auto-merge
|
||||
@ -73,7 +72,14 @@ table inet mihomo {
|
||||
auto-merge
|
||||
}
|
||||
|
||||
set acl_interface {
|
||||
type ifname
|
||||
flags interval
|
||||
auto-merge
|
||||
}
|
||||
|
||||
chain router_dns_hijack {
|
||||
meta skuid @bypass_user counter return
|
||||
meta skgid @bypass_group counter return
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 counter redirect to :$DNS_PORT
|
||||
}
|
||||
@ -86,12 +92,14 @@ table inet mihomo {
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 ip saddr @acl_ip counter redirect to :$DNS_PORT
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 ip6 saddr @acl_ip6 counter redirect to :$DNS_PORT
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 ether saddr @acl_mac counter redirect to :$DNS_PORT
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 iifname @acl_interface counter redirect to :$DNS_PORT
|
||||
}
|
||||
|
||||
chain block_dns_hijack {
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 ip saddr @acl_ip counter return
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 ip6 saddr @acl_ip6 counter return
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 ether saddr @acl_mac counter return
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 iifname @acl_interface counter return
|
||||
meta nfproto @dns_hijack_nfproto meta l4proto udp th dport 53 counter redirect to :$DNS_PORT
|
||||
}
|
||||
|
||||
@ -103,12 +111,14 @@ table inet mihomo {
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip saddr @acl_ip counter redirect to :$REDIR_PORT
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip6 saddr @acl_ip6 counter redirect to :$REDIR_PORT
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ether saddr @acl_mac counter redirect to :$REDIR_PORT
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } iifname @acl_interface counter redirect to :$REDIR_PORT
|
||||
}
|
||||
|
||||
chain block_redirect {
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip saddr @acl_ip counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip6 saddr @acl_ip6 counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ether saddr @acl_mac counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } iifname @acl_interface counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } counter redirect to :$REDIR_PORT
|
||||
}
|
||||
|
||||
@ -120,12 +130,14 @@ table inet mihomo {
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip saddr @acl_ip meta mark set mark ^ $FW_MARK tproxy ip to :$TPROXY_PORT counter accept
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip6 saddr @acl_ip6 meta mark set mark ^ $FW_MARK tproxy ip6 to :$TPROXY_PORT counter accept
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ether saddr @acl_mac meta mark set mark ^ $FW_MARK tproxy to :$TPROXY_PORT counter accept
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } iifname @acl_interface meta mark set mark ^ $FW_MARK tproxy to :$TPROXY_PORT counter accept
|
||||
}
|
||||
|
||||
chain block_tproxy {
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip saddr @acl_ip counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip6 saddr @acl_ip6 counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ether saddr @acl_mac counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } iifname @acl_interface counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } meta mark set mark ^ $FW_MARK tproxy to :$TPROXY_PORT counter accept
|
||||
}
|
||||
|
||||
@ -137,12 +149,14 @@ table inet mihomo {
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip saddr @acl_ip meta mark set mark ^ $FW_MARK counter
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip6 saddr @acl_ip6 meta mark set mark ^ $FW_MARK counter
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ether saddr @acl_mac meta mark set mark ^ $FW_MARK counter
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } iifname @acl_interface meta mark set mark ^ $FW_MARK counter
|
||||
}
|
||||
|
||||
chain block_tun {
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip saddr @acl_ip counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ip6 saddr @acl_ip6 counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } ether saddr @acl_mac counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } iifname @acl_interface counter return
|
||||
meta nfproto @proxy_nfproto meta l4proto { tcp, udp } meta mark set mark ^ $FW_MARK counter
|
||||
}
|
||||
|
||||
@ -162,12 +176,13 @@ table inet mihomo {
|
||||
ip6 daddr @reserved_ip6 counter return
|
||||
ip daddr @china_ip counter return
|
||||
ip6 daddr @china_ip6 counter return
|
||||
meta l4proto . th dport != @acl_dport ip daddr != @fake_ip counter return
|
||||
meta nfproto ipv6 meta l4proto . th dport != @acl_dport counter return
|
||||
meta nfproto ipv4 meta l4proto . th dport != @proxy_dport ip daddr != $FAKE_IP counter return
|
||||
meta nfproto ipv6 meta l4proto . th dport != @proxy_dport counter return
|
||||
}
|
||||
|
||||
chain nat_output {
|
||||
type nat hook output priority filter; policy accept;
|
||||
meta skuid @bypass_user counter return
|
||||
meta skgid @bypass_group counter return
|
||||
fib daddr type local counter return
|
||||
ct direction reply counter return
|
||||
@ -175,8 +190,8 @@ table inet mihomo {
|
||||
ip6 daddr @reserved_ip6 counter return
|
||||
ip daddr @china_ip counter return
|
||||
ip6 daddr @china_ip6 counter return
|
||||
meta l4proto . th dport != @acl_dport ip daddr != @fake_ip counter return
|
||||
meta nfproto ipv6 meta l4proto . th dport != @acl_dport counter return
|
||||
meta nfproto ipv4 meta l4proto . th dport != @proxy_dport ip daddr != $FAKE_IP counter return
|
||||
meta nfproto ipv6 meta l4proto . th dport != @proxy_dport counter return
|
||||
}
|
||||
|
||||
chain mangle_prerouting {
|
||||
@ -189,13 +204,14 @@ table inet mihomo {
|
||||
ip6 daddr @reserved_ip6 counter return
|
||||
ip daddr @china_ip counter return
|
||||
ip6 daddr @china_ip6 counter return
|
||||
meta l4proto . th dport != @acl_dport ip daddr != @fake_ip counter return
|
||||
meta nfproto ipv6 meta l4proto . th dport != @acl_dport counter return
|
||||
meta nfproto ipv4 meta l4proto . th dport != @proxy_dport ip daddr != $FAKE_IP counter return
|
||||
meta nfproto ipv6 meta l4proto . th dport != @proxy_dport counter return
|
||||
meta l4proto udp th dport 53 counter return
|
||||
}
|
||||
|
||||
chain mangle_output {
|
||||
type route hook output priority mangle; policy accept;
|
||||
meta skuid @bypass_user counter return
|
||||
meta skgid @bypass_group counter return
|
||||
fib daddr type local counter return
|
||||
ct direction reply counter return
|
||||
@ -203,8 +219,8 @@ table inet mihomo {
|
||||
ip6 daddr @reserved_ip6 counter return
|
||||
ip daddr @china_ip counter return
|
||||
ip6 daddr @china_ip6 counter return
|
||||
meta l4proto . th dport != @acl_dport ip daddr != @fake_ip counter return
|
||||
meta nfproto ipv6 meta l4proto . th dport != @acl_dport counter return
|
||||
meta nfproto ipv4 meta l4proto . th dport != @proxy_dport ip daddr != $FAKE_IP counter return
|
||||
meta nfproto ipv6 meta l4proto . th dport != @proxy_dport counter return
|
||||
meta l4proto udp th dport 53 counter return
|
||||
}
|
||||
}
|
||||
|
@ -14,6 +14,32 @@ mixin_file_content=$(uci -q get mihomo.mixin.mixin_file_content); [ -z "$mixin_f
|
||||
|
||||
start_delay=$(uci -q get mihomo.config.start_delay); [ -z "$start_delay" ] && uci set mihomo.config.start_delay=0
|
||||
|
||||
# since v1.11.0
|
||||
|
||||
acl_tcp_dport=$(uci -q get mihomo.proxy.acl_tcp_dport); [ -n "$acl_tcp_dport" ] && uci rename mihomo.proxy.acl_tcp_dport=proxy_tcp_dport
|
||||
|
||||
acl_udp_dport=$(uci -q get mihomo.proxy.acl_udp_dport); [ -n "$acl_udp_dport" ] && uci rename mihomo.proxy.acl_udp_dport=proxy_udp_dport
|
||||
|
||||
bypass_user=$(uci -q get mihomo.proxy.bypass_user); [ -z "$bypass_user" ] && {
|
||||
uci add_list mihomo.proxy.bypass_user="aria2"
|
||||
uci add_list mihomo.proxy.bypass_user="dnsmasq"
|
||||
uci add_list mihomo.proxy.bypass_user="ftp"
|
||||
uci add_list mihomo.proxy.bypass_user="logd"
|
||||
uci add_list mihomo.proxy.bypass_user="nobody"
|
||||
uci add_list mihomo.proxy.bypass_user="ntp"
|
||||
uci add_list mihomo.proxy.bypass_user="ubus"
|
||||
}
|
||||
|
||||
bypass_group=$(uci -q get mihomo.proxy.bypass_group); [ -z "$bypass_group" ] && {
|
||||
uci add_list mihomo.proxy.bypass_group="aria2"
|
||||
uci add_list mihomo.proxy.bypass_group="dnsmasq"
|
||||
uci add_list mihomo.proxy.bypass_group="ftp"
|
||||
uci add_list mihomo.proxy.bypass_group="logd"
|
||||
uci add_list mihomo.proxy.bypass_group="nogroup"
|
||||
uci add_list mihomo.proxy.bypass_group="ntp"
|
||||
uci add_list mihomo.proxy.bypass_group="ubus"
|
||||
}
|
||||
|
||||
# commit
|
||||
uci commit mihomo
|
||||
|
||||
|
@ -6,12 +6,12 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=nftables
|
||||
PKG_VERSION:=1.0.9
|
||||
PKG_VERSION:=1.1.1
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
|
||||
PKG_HASH:=a3c304cd9ba061239ee0474f9afb938a9bb99d89b960246f66f0c3a0a85e14cd
|
||||
PKG_HASH:=6358830f3a64f31e39b0ad421d7dadcd240b72343ded48d8ef13b8faf204865a
|
||||
|
||||
PKG_MAINTAINER:=
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
|
@ -51,7 +51,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
|
||||
--- a/src/netlink_delinearize.c
|
||||
+++ b/src/netlink_delinearize.c
|
||||
@@ -1473,6 +1473,53 @@ out_err:
|
||||
@@ -1467,6 +1467,53 @@ out_err:
|
||||
stmt_free(stmt);
|
||||
}
|
||||
|
||||
@ -105,7 +105,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
static void netlink_parse_redir(struct netlink_parse_ctx *ctx,
|
||||
const struct location *loc,
|
||||
const struct nftnl_expr *nle)
|
||||
@@ -1901,6 +1948,7 @@ static const struct expr_handler netlink
|
||||
@@ -1897,6 +1944,7 @@ static const struct expr_handler netlink
|
||||
{ .name = "tproxy", .parse = netlink_parse_tproxy },
|
||||
{ .name = "notrack", .parse = netlink_parse_notrack },
|
||||
{ .name = "masq", .parse = netlink_parse_masq },
|
||||
@ -115,7 +115,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
{ .name = "queue", .parse = netlink_parse_queue },
|
||||
--- a/src/netlink_linearize.c
|
||||
+++ b/src/netlink_linearize.c
|
||||
@@ -1221,6 +1221,13 @@ static void netlink_gen_nat_stmt(struct
|
||||
@@ -1226,6 +1226,13 @@ static void netlink_gen_nat_stmt(struct
|
||||
nftnl_reg_pmin = NFTNL_EXPR_MASQ_REG_PROTO_MIN;
|
||||
nftnl_reg_pmax = NFTNL_EXPR_MASQ_REG_PROTO_MAX;
|
||||
break;
|
||||
@ -131,7 +131,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
|
||||
--- a/src/parser_bison.y
|
||||
+++ b/src/parser_bison.y
|
||||
@@ -621,6 +621,7 @@ int nft_lex(void *, void *, void *);
|
||||
@@ -643,6 +643,7 @@ int nft_lex(void *, void *, void *);
|
||||
%token SNAT "snat"
|
||||
%token DNAT "dnat"
|
||||
%token MASQUERADE "masquerade"
|
||||
@ -139,7 +139,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
%token REDIRECT "redirect"
|
||||
%token RANDOM "random"
|
||||
%token FULLY_RANDOM "fully-random"
|
||||
@@ -755,8 +756,8 @@ int nft_lex(void *, void *, void *);
|
||||
@@ -784,8 +785,8 @@ int nft_lex(void *, void *, void *);
|
||||
%type <val> limit_burst_pkts limit_burst_bytes limit_mode limit_bytes time_unit quota_mode
|
||||
%type <stmt> reject_stmt reject_stmt_alloc
|
||||
%destructor { stmt_free($$); } reject_stmt reject_stmt_alloc
|
||||
@ -150,7 +150,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
%type <val> nf_nat_flags nf_nat_flag offset_opt
|
||||
%type <stmt> tproxy_stmt
|
||||
%destructor { stmt_free($$); } tproxy_stmt
|
||||
@@ -3064,6 +3065,7 @@ stmt : verdict_stmt
|
||||
@@ -3216,6 +3217,7 @@ stmt : verdict_stmt
|
||||
| queue_stmt
|
||||
| ct_stmt
|
||||
| masq_stmt close_scope_nat
|
||||
@ -158,7 +158,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
| redir_stmt close_scope_nat
|
||||
| dup_stmt close_scope_dup
|
||||
| fwd_stmt close_scope_fwd
|
||||
@@ -3976,6 +3978,28 @@ masq_stmt_args : TO COLON stmt_expr
|
||||
@@ -3999,6 +4001,28 @@ masq_stmt_args : TO COLON stmt_expr
|
||||
{
|
||||
$<stmt>0->nat.proto = $3;
|
||||
}
|
||||
@ -189,7 +189,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
$<stmt>0->nat.proto = $3;
|
||||
--- a/src/scanner.l
|
||||
+++ b/src/scanner.l
|
||||
@@ -460,6 +460,7 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr
|
||||
@@ -462,6 +462,7 @@ addrstring ({macaddr}|{ip4addr}|{ip6addr
|
||||
"snat" { scanner_push_start_cond(yyscanner, SCANSTATE_STMT_NAT); return SNAT; }
|
||||
"dnat" { scanner_push_start_cond(yyscanner, SCANSTATE_STMT_NAT); return DNAT; }
|
||||
"masquerade" { scanner_push_start_cond(yyscanner, SCANSTATE_STMT_NAT); return MASQUERADE; }
|
||||
@ -199,7 +199,7 @@ Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
|
||||
<SCANSTATE_STMT_NAT>{
|
||||
--- a/src/statement.c
|
||||
+++ b/src/statement.c
|
||||
@@ -681,6 +681,7 @@ const char *nat_etype2str(enum nft_nat_e
|
||||
@@ -674,6 +674,7 @@ const char *nat_etype2str(enum nft_nat_e
|
||||
[NFT_NAT_SNAT] = "snat",
|
||||
[NFT_NAT_DNAT] = "dnat",
|
||||
[NFT_NAT_MASQ] = "masquerade",
|
||||
|
Loading…
Reference in New Issue
Block a user