mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-10-29 16:55:13 +08:00
🤞 Sync 2026-09-30 23:44:05
This commit is contained in:
1 parent
357df2ae90
commit
be5536a09d
206 files changed
+5736
-2799
No files matched your search
+12
-24
@@ -121,24 +121,26 @@ function renderDnsCache(ctx) {
|
||||
|
||||
s.tab('dns_cache', _('DNS Settings'));
|
||||
|
||||
o = s.taboption('dns_cache', form.Value, 'dns_server', _('DNS server'),
|
||||
/* The name says overseas because that is the only thing that belongs
|
||||
* here: every query this field answers goes to a domain that is not on
|
||||
* the China path, and a domestic resolver answers those with polluted or
|
||||
* NXDOMAIN results. The Chinese public resolvers that used to be listed
|
||||
* below a divider were therefore a footgun with a helpful-looking label -
|
||||
* the one combination that reliably breaks a working proxy. Only the
|
||||
* overseas public resolvers are offered now. */
|
||||
o = s.taboption('dns_cache', form.Value, 'dns_server', _('Overseas DNS server'),
|
||||
_('Resolves every domain that is not on the China DNS path, through the selected proxy node. ' +
|
||||
'Pick an overseas service: a domestic resolver answers these queries with polluted or ' +
|
||||
'NXDOMAIN results, which is what makes a foreign site fail to resolve while the proxy itself works. ' +
|
||||
'Support UDP, TCP, DoH, DoQ, DoT. TCP protocol will be used if not specified.'));
|
||||
o.value('wan', _('WAN DNS (read from interface)'));
|
||||
'A domestic resolver answers these queries with polluted or NXDOMAIN results, which is what ' +
|
||||
'makes a foreign site fail to resolve while the proxy itself works - so only overseas services ' +
|
||||
'are offered here. Support UDP, TCP, DoH, DoQ, DoT. TCP protocol will be used if not specified.'));
|
||||
o.value('1.1.1.1', _('CloudFlare Public DNS (1.1.1.1)'));
|
||||
o.value('208.67.222.222', _('Cisco Public DNS (208.67.222.222)'));
|
||||
o.value('8.8.8.8', _('Google Public DNS (8.8.8.8)'));
|
||||
o.value('', '---');
|
||||
o.value('223.5.5.5', _('Aliyun Public DNS (223.5.5.5)'));
|
||||
o.value('119.29.29.29', _('Tencent Public DNS (119.29.29.29)'));
|
||||
o.value('117.50.10.10', _('ThreatBook Public DNS (117.50.10.10)'));
|
||||
o.default = '8.8.8.8';
|
||||
o.rmempty = false;
|
||||
o.depends({'routing_mode': 'custom', '!reverse': true});
|
||||
o.validate = function(section_id, value) {
|
||||
if (section_id && !['wan'].includes(value)) {
|
||||
if (section_id) {
|
||||
if (!value)
|
||||
return _('Expecting: %s').format(_('non-empty value'));
|
||||
|
||||
@@ -204,20 +206,6 @@ function renderDnsCache(ctx) {
|
||||
o.depends('routing_mode', 'bypass_mainland_china');
|
||||
o.rmempty = false;
|
||||
|
||||
/* The DNS server above is the DoH/DoT endpoint, and it is the one server
|
||||
* in the generated configuration whose address is a hostname: it has to
|
||||
* be resolved before it can answer anything. Left empty, that lookup
|
||||
* goes through the WAN resolver (the pre-1.14 behaviour); naming a
|
||||
* resolver here decouples it from the ISP/upstream one. Only one is
|
||||
* used - sing-box resolves a hostname through exactly one server. */
|
||||
o = s.taboption('dns_cache', form.DynamicList, 'bootstrap_dns', _('Bootstrap DNS server'),
|
||||
_('Resolver used to look up the DNS server\'s own hostname - only relevant when that address ' +
|
||||
'is a domain, as with a DoH/DoT endpoint. Leave empty to use the WAN resolver. ' +
|
||||
'Only the first entry is used.'));
|
||||
o.datatype = 'ipaddr';
|
||||
o.depends({'routing_mode': 'custom', '!reverse': true});
|
||||
o.modalonly = true;
|
||||
|
||||
o = s.taboption('dns_cache', form.SectionValue, '_dns_cache', form.NamedSection, 'dns', 'homeproxy-pro');
|
||||
o.depends({'routing_mode': 'custom', '!reverse': true});
|
||||
ss = o.subsection;
|
||||
|
||||
Reference in new issue
Block a user