mirror of
https://github.com/lucaspalomodevelop/core.git
synced 2026-03-15 00:54:41 +00:00
SLAAC WAN: add support for requesting DNS info via stateless DHCPv6 (#5937)
* Merge SLAAC interface dhcp6c config Stateless DHCPv6 config for SLAAC WANs was generated, but not merged into dhcp6c.conf file. * Add support for stateless DHCPv6 to dhcp6c script Script had no code for processing stateless DHCPv6 replies (required for SLAAC without RDNSS / DNSSL). * dhcp6c script, pass all search domains to ifctl Only the first domain was used, all others were disregarded.
This commit is contained in:
parent
e688d3b6fa
commit
f2c844e170
@ -2786,10 +2786,28 @@ REQUEST)
|
||||
ARGS="\${ARGS} -a \${NAMESERVER}"
|
||||
done
|
||||
/usr/local/sbin/ifctl -i ${wanif} -6nd \${ARGS}
|
||||
/usr/local/sbin/ifctl -i ${wanif} -6sd \${new_domain_name:+"-a \${new_domain_name}"}
|
||||
ARGS=
|
||||
for DOMAIN in \${new_domain_name}; do
|
||||
ARGS="\${ARGS} -a \${DOMAIN}"
|
||||
done
|
||||
/usr/local/sbin/ifctl -i ${wanif} -6sd \${ARGS}
|
||||
/usr/local/sbin/ifctl -i ${wanif} -6pd \${PDINFO:+"-a \${PDINFO}"}
|
||||
/usr/local/sbin/configctl -d interface newipv6 {$wanif}
|
||||
;;
|
||||
INFOREQ)
|
||||
/usr/bin/logger -t dhcp6c "dhcp6c \$REASON on {$wanif} - running newipv6"
|
||||
ARGS=
|
||||
for NAMESERVER in \${new_domain_name_servers}; do
|
||||
ARGS="\${ARGS} -a \${NAMESERVER}"
|
||||
done
|
||||
/usr/local/sbin/ifctl -i ${wanif} -6nd \${ARGS}
|
||||
ARGS=
|
||||
for DOMAIN in \${new_domain_name}; do
|
||||
ARGS="\${ARGS} -a \${DOMAIN}"
|
||||
done
|
||||
/usr/local/sbin/ifctl -i ${wanif} -6sd \${ARGS}
|
||||
/usr/local/sbin/configctl -d interface newipv6 {$wanif}
|
||||
;;
|
||||
EXIT|RELEASE)
|
||||
/usr/bin/logger -t dhcp6c "dhcp6c \$REASON on {$wanif} - running dns reload"
|
||||
/usr/local/sbin/ifctl -i ${wanif} -6nd
|
||||
@ -2828,7 +2846,7 @@ EOF;
|
||||
|
||||
/* merge configs and prepare single instance of dhcp6c for startup */
|
||||
foreach (legacy_config_get_interfaces(['enable' => true, 'virtual' => false]) as $_interface => $_wancfg) {
|
||||
if (empty($_wancfg['ipaddrv6']) || $_wancfg['ipaddrv6'] != 'dhcp6') {
|
||||
if (empty($_wancfg['ipaddrv6']) || ($_wancfg['ipaddrv6'] != 'dhcp6' && $_wancfg['ipaddrv6'] != 'slaac')) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user