luci-mod-network: organize "forward" tab in dhcp/dns views

Delete the tab from dhcp.js, sort the options that belong to it in dns.js.

Signed-off-by: David Härdeman <david@hardeman.nu>
This commit is contained in:
David Härdeman
2025-10-15 18:40:25 +02:00
committed by Paul Donald
parent f56371878c
commit 15dfb9f089
2 changed files with 46 additions and 89 deletions

View File

@@ -391,7 +391,6 @@ return view.extend({
s.tab('general', _('General'));
s.tab('devices', _('Devices &amp; Ports'));
s.tab('forward', _('Forwards'));
s.tab('limits', _('Limits'));
s.tab('logging', _('Log'));
s.tab('files', _('Resolv &amp; Hosts Files'));
@@ -470,13 +469,6 @@ return view.extend({
o.value('LOCAL7');
o.value('-', _('stderr'));
o = s.taboption('forward', form.DynamicList, 'server',
_('DNS Forwards'),
_('Forward specific domain queries to specific upstream servers.'));
o.optional = true;
o.placeholder = '/*.example.org/10.1.2.3';
o.validate = validateServerSpec;
o = s.taboption('relay', form.SectionValue, '__relays__', form.TableSection, 'relay', null,
_('Relay DHCP requests elsewhere. OK: v4↔v4, v6↔v6. Not OK: v4↔v6, v6↔v4.')
+ '<br />' + _('Note: you may also need a DHCP Proxy (currently unavailable) when specifying a non-standard Relay To port(<code>addr#port</code>).')
@@ -593,43 +585,6 @@ return view.extend({
o.optional = true;
o.depends('logdhcp', '0');
o = s.taboption('forward', form.Value, 'serversfile',
_('Additional servers file'),
customi18n(_('File listing upstream resolvers, optionally domain-specific, e.g. {servers_file_entry01}, {servers_file_entry02}.') )
);
o.placeholder = '/etc/dnsmasq.servers';
o = s.taboption('forward', form.Value, 'addmac',
_('Add requestor MAC'),
_('Add the MAC address of the requestor to DNS queries which are forwarded upstream.') + ' ' + '<br />' +
_('%s uses the default MAC address format encoding').format('<code>enabled</code>') + ' ' + '<br />' +
_('%s uses an alternative encoding of the MAC as base64').format('<code>base64</code>') + ' ' + '<br />' +
_('%s uses a human-readable encoding of hex-and-colons').format('<code>text</code>'));
o.optional = true;
o.value('', _('off'));
o.value('1', _('enabled (default)'));
o.value('base64');
o.value('text');
s.taboption('forward', form.Flag, 'stripmac',
_('Remove MAC address before forwarding query'),
_('Remove any MAC address information already in downstream queries before forwarding upstream.'));
o = s.taboption('forward', form.Value, 'addsubnet',
_('Add subnet address to forwards'),
_('Add a subnet address to the DNS queries which are forwarded upstream, leaving this value empty disables the feature.') + ' ' +
_('If an address is specified in the flag, it will be used, otherwise, the address of the requestor will be used.') + ' ' +
_('The amount of the address forwarded depends on the prefix length parameter: 32 (128 for IPv6) forwards the whole address, zero forwards none of it but still marks the request so that no upstream nameserver will add client address information either.') + ' ' + '<br />' +
_('The default (%s) is zero for both IPv4 and IPv6.').format('<code>0,0</code>') + ' ' + '<br />' +
_('%s adds the /24 and /96 subnets of the requestor for IPv4 and IPv6 requestors, respectively.').format('<code>24,96</code>') + ' ' + '<br />' +
_('%s adds 1.2.3.0/24 for IPv4 requestors and ::/0 for IPv6 requestors.').format('<code>1.2.3.4/24</code>') + ' ' + '<br />' +
_('%s adds 1.2.3.0/24 for both IPv4 and IPv6 requestors.').format('<code>1.2.3.4/24,1.2.3.4/24</code>'));
o.optional = true;
s.taboption('forward', form.Flag, 'stripsubnet',
_('Remove subnet address before forwarding query'),
_('Remove any subnet address already present in a downstream query before forwarding it upstream.'));
o = s.taboption('limits', form.Value, 'dhcpleasemax',
_('Max. DHCP leases'),
_('Maximum allowed number of active DHCP leases.'));

View File

@@ -872,6 +872,52 @@ return view.extend({
o.placeholder = '64.94.110.11';
// End filteropts
// Begin forward
o = s.taboption('forward', form.DynamicList, 'server',
_('DNS Forwards'),
_('Forward specific domain queries to specific upstream servers.'));
o.optional = true;
o.placeholder = '/*.example.org/10.1.2.3';
o.validate = validateServerSpec;
o = s.taboption('forward', form.Value, 'serversfile',
_('Additional servers file'),
customi18n(_('File listing upstream resolvers, optionally domain-specific, e.g. {servers_file_entry01}, {servers_file_entry02}.') )
);
o.placeholder = '/etc/dnsmasq.servers';
o = s.taboption('forward', form.Value, 'addmac',
_('Add requestor MAC'),
_('Add the MAC address of the requestor to DNS queries which are forwarded upstream.') + ' ' + '<br />' +
_('%s uses the default MAC address format encoding').format('<code>enabled</code>') + ' ' + '<br />' +
_('%s uses an alternative encoding of the MAC as base64').format('<code>base64</code>') + ' ' + '<br />' +
_('%s uses a human-readable encoding of hex-and-colons').format('<code>text</code>'));
o.optional = true;
o.value('', _('off'));
o.value('1', _('enabled (default)'));
o.value('base64');
o.value('text');
s.taboption('forward', form.Flag, 'stripmac',
_('Remove MAC address before forwarding query'),
_('Remove any MAC address information already in downstream queries before forwarding upstream.'));
o = s.taboption('forward', form.Value, 'addsubnet',
_('Add subnet address to forwards'),
_('Add a subnet address to the DNS queries which are forwarded upstream, leaving this value empty disables the feature.') + ' ' +
_('If an address is specified in the flag, it will be used, otherwise, the address of the requestor will be used.') + ' ' +
_('The amount of the address forwarded depends on the prefix length parameter: 32 (128 for IPv6) forwards the whole address, zero forwards none of it but still marks the request so that no upstream nameserver will add client address information either.') + ' ' + '<br />' +
_('The default (%s) is zero for both IPv4 and IPv6.').format('<code>0,0</code>') + ' ' + '<br />' +
_('%s adds the /24 and /96 subnets of the requestor for IPv4 and IPv6 requestors, respectively.').format('<code>24,96</code>') + ' ' + '<br />' +
_('%s adds 1.2.3.0/24 for IPv4 requestors and ::/0 for IPv6 requestors.').format('<code>1.2.3.4/24</code>') + ' ' + '<br />' +
_('%s adds 1.2.3.0/24 for both IPv4 and IPv6 requestors.').format('<code>1.2.3.4/24,1.2.3.4/24</code>'));
o.optional = true;
s.taboption('forward', form.Flag, 'stripsubnet',
_('Remove subnet address before forwarding query'),
_('Remove any subnet address already present in a downstream query before forwarding it upstream.'));
// End forward
o = s.taboption('logging', form.Flag, 'logqueries',
_('Log queries'),
@@ -906,13 +952,6 @@ return view.extend({
o.value('LOCAL7');
o.value('-', _('stderr'));
o = s.taboption('forward', form.DynamicList, 'server',
_('DNS Forwards'),
_('Forward specific domain queries to specific upstream servers.'));
o.optional = true;
o.placeholder = '/*.example.org/10.1.2.3';
o.validate = validateServerSpec;
o = s.taboption('relay', form.SectionValue, '__relays__', form.TableSection, 'relay', null,
_('Relay DHCP requests elsewhere. OK: v4↔v4, v6↔v6. Not OK: v4↔v6, v6↔v4.')
+ '<br />' + _('Note: you may also need a DHCP Proxy (currently unavailable) when specifying a non-standard Relay To port(<code>addr#port</code>).')
@@ -1029,43 +1068,6 @@ return view.extend({
o.optional = true;
o.depends('logdhcp', '0');
o = s.taboption('forward', form.Value, 'serversfile',
_('Additional servers file'),
customi18n(_('File listing upstream resolvers, optionally domain-specific, e.g. {servers_file_entry01}, {servers_file_entry02}.') )
);
o.placeholder = '/etc/dnsmasq.servers';
o = s.taboption('forward', form.Value, 'addmac',
_('Add requestor MAC'),
_('Add the MAC address of the requestor to DNS queries which are forwarded upstream.') + ' ' + '<br />' +
_('%s uses the default MAC address format encoding').format('<code>enabled</code>') + ' ' + '<br />' +
_('%s uses an alternative encoding of the MAC as base64').format('<code>base64</code>') + ' ' + '<br />' +
_('%s uses a human-readable encoding of hex-and-colons').format('<code>text</code>'));
o.optional = true;
o.value('', _('off'));
o.value('1', _('enabled (default)'));
o.value('base64');
o.value('text');
s.taboption('forward', form.Flag, 'stripmac',
_('Remove MAC address before forwarding query'),
_('Remove any MAC address information already in downstream queries before forwarding upstream.'));
o = s.taboption('forward', form.Value, 'addsubnet',
_('Add subnet address to forwards'),
_('Add a subnet address to the DNS queries which are forwarded upstream, leaving this value empty disables the feature.') + ' ' +
_('If an address is specified in the flag, it will be used, otherwise, the address of the requestor will be used.') + ' ' +
_('The amount of the address forwarded depends on the prefix length parameter: 32 (128 for IPv6) forwards the whole address, zero forwards none of it but still marks the request so that no upstream nameserver will add client address information either.') + ' ' + '<br />' +
_('The default (%s) is zero for both IPv4 and IPv6.').format('<code>0,0</code>') + ' ' + '<br />' +
_('%s adds the /24 and /96 subnets of the requestor for IPv4 and IPv6 requestors, respectively.').format('<code>24,96</code>') + ' ' + '<br />' +
_('%s adds 1.2.3.0/24 for IPv4 requestors and ::/0 for IPv6 requestors.').format('<code>1.2.3.4/24</code>') + ' ' + '<br />' +
_('%s adds 1.2.3.0/24 for both IPv4 and IPv6 requestors.').format('<code>1.2.3.4/24,1.2.3.4/24</code>'));
o.optional = true;
s.taboption('forward', form.Flag, 'stripsubnet',
_('Remove subnet address before forwarding query'),
_('Remove any subnet address already present in a downstream query before forwarding it upstream.'));
o = s.taboption('limits', form.Value, 'dhcpleasemax',
_('Max. DHCP leases'),
_('Maximum allowed number of active DHCP leases.'));