fix(client): fix set dns outbound

DNS outbound now defaults to `direct` and no need to specify it
manually.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
Tianling Shen 2025-09-18 19:57:53 +08:00
parent 36ea9173f4
commit e568efd3e0
No known key found for this signature in database
GPG key ID: 6850B6345C862176
3 changed files with 9 additions and 10 deletions

View file

@ -1028,7 +1028,7 @@ return view.extend({
delete this.keylist;
delete this.vallist;
this.value('direct-out', _('Direct'));
this.value('', _('Direct'));
uci.sections(data[0], 'routing_node', (res) => {
if (res.enabled === '1')
this.value(res['.name'], res.label);
@ -1036,8 +1036,6 @@ return view.extend({
return this.super('load', section_id);
}
so.default = 'direct-out';
so.rmempty = false;
so.editable = true;
/* DNS servers end */

View file

@ -421,13 +421,11 @@ config.dns = {
{
tag: 'default-dns',
type: 'udp',
server: wan_dns,
detour: 'direct-out'
server: wan_dns
},
{
tag: 'system-dns',
type: 'local',
detour: 'direct-out'
type: 'local'
}
],
rules: [],
@ -473,7 +471,6 @@ if (!isEmpty(main_node)) {
server: 'default-dns',
strategy: 'prefer_ipv6'
},
detour: 'direct-out',
...parse_dnserver(china_dns_server)
});

View file

@ -65,10 +65,10 @@ if (!migration_crontab) {
}
/* log_level was introduced */
if (isEmpty(uci.get(uciconfig, ucimain, 'log_level'))
if (isEmpty(uci.get(uciconfig, ucimain, 'log_level')))
uci.set(uciconfig, ucimain, 'log_level', 'warn');
if (isEmpty(uci.get(uciconfig, uciserver, 'log_level'))
if (isEmpty(uci.get(uciconfig, uciserver, 'log_level')))
uci.set(uciconfig, uciserver, 'log_level', 'warn');
/* empty value defaults to all ports now */
@ -148,6 +148,10 @@ uci.foreach(uciconfig, ucidnsserver, (cfg) => {
dns_server_migration[cfg['.name']].client_subnet = cfg.client_subnet;
uci.delete(uciconfig, cfg['.name'], 'client_subnet');
}
/* dns outbound defaults to direct in sb 1.12 */
if (cfg.outbound === 'direct-out')
uci.delete(uciconfig, cfg['.name'], 'outbound');
});
/* DNS rules options */