mirror of
https://github.com/pi-hole/dnsmasq.git
synced 2025-12-19 10:18:25 +00:00
Allow prefix :: in constructed dhcp-range.
This commit is contained in:
committed by
Simon Kelley
parent
4568a6f842
commit
e4cdbbf521
@@ -663,6 +663,14 @@ equal either the start or end address given in the dhcp-range. This is
|
|||||||
to prevent prefixes becoming perpetual if the interface
|
to prevent prefixes becoming perpetual if the interface
|
||||||
gains a SLAAC address for the prefix when it is advertised by dnsmasq.
|
gains a SLAAC address for the prefix when it is advertised by dnsmasq.
|
||||||
|
|
||||||
|
If a dhcp-range is only being used for stateless DHCP and/or SLAAC,
|
||||||
|
then the address can be simply ::
|
||||||
|
|
||||||
|
.B --dhcp-range=::,constructor:eth0
|
||||||
|
|
||||||
|
This removes the condition above, and will pick up the prefix from any address on eth0 which is NOT
|
||||||
|
autoconfigured, slaac, temporary or deprecated.
|
||||||
|
|
||||||
There is a variant of the constructor: syntax using the keyword
|
There is a variant of the constructor: syntax using the keyword
|
||||||
.B constructor-noauth.
|
.B constructor-noauth.
|
||||||
See
|
See
|
||||||
|
|||||||
@@ -539,7 +539,9 @@ static int construct_worker(struct in6_addr *local, int prefix,
|
|||||||
|
|
||||||
}
|
}
|
||||||
else if ((addr6part(local) == addr6part(&template->start6) ||
|
else if ((addr6part(local) == addr6part(&template->start6) ||
|
||||||
addr6part(local) == addr6part(&template->end6)) &&
|
addr6part(local) == addr6part(&template->end6) ||
|
||||||
|
(IN6_IS_ADDR_UNSPECIFIED(&template->start6) &&
|
||||||
|
IFACE_PERMANENT == (flags & (IFACE_PERMANENT | IFACE_DEPRECATED)))) &&
|
||||||
wildcard_match(template->template_interface, ifrn_name))
|
wildcard_match(template->template_interface, ifrn_name))
|
||||||
{
|
{
|
||||||
start6 = *local;
|
start6 = *local;
|
||||||
|
|||||||
Reference in New Issue
Block a user