summaryrefslogtreecommitdiffstats
path: root/etc/inc/services.inc
diff options
context:
space:
mode:
authorJean Cyr <jcyr@dillobits.com>2013-11-06 21:21:41 -0500
committerJean Cyr <jcyr@dillobits.com>2013-11-06 21:21:41 -0500
commit91d647b42081b80a2d38fdf578d20826f66cdfa6 (patch)
treeebda9599639968d4699116bc5a0d09e8d5da69bd /etc/inc/services.inc
parent90caf54ebf46763f4856d446ab0aa77259282119 (diff)
downloadpfsense-91d647b42081b80a2d38fdf578d20826f66cdfa6.zip
pfsense-91d647b42081b80a2d38fdf578d20826f66cdfa6.tar.gz
Give clients the IPV6 address of the DNS server
For IPV6 WAN tracking interfaces, dhcpdv6 does not provide an IPV6 address for the DNS server... fix that. The IPV6 address should be the LAN interface IPV6 address, which is served by dnsmask, unbound, or bind.
Diffstat (limited to 'etc/inc/services.inc')
-rw-r--r--etc/inc/services.inc4
1 files changed, 4 insertions, 0 deletions
diff --git a/etc/inc/services.inc b/etc/inc/services.inc
index 623040e..012ee71 100644
--- a/etc/inc/services.inc
+++ b/etc/inc/services.inc
@@ -980,6 +980,7 @@ function services_dhcpdv6_configure() {
$dhcpdv6cfg[$ifname]['prefixrange']['from'] = Net_IPv6::compress($range['start']);
$dhcpdv6cfg[$ifname]['prefixrange']['to'] = Net_IPv6::compress($range['end']);
+ $dhcpdv6cfg[$ifname]['dns6ip'] = get_interface_ipv6($ifname);
}
}
}
@@ -1085,6 +1086,9 @@ EOD;
if (is_ipaddrv6($dhcpv6ifconf['prefixrange']['from']) && is_ipaddrv6($dhcpv6ifconf['prefixrange']['to'])) {
$dhcpdv6conf .= " prefix6 {$dhcpv6ifconf['prefixrange']['from']} {$dhcpv6ifconf['prefixrange']['to']}/{$dhcpv6ifconf['prefixrange']['prefixlength']};\n";
}
+ if (is_ipaddrv6($dhcpv6ifconf['dns6ip'])) {
+ $dhcpdv6conf .= " option dhcp6.name-servers {$dhcpv6ifconf['dns6ip']};\n";
+ }
// default-lease-time
if ($dhcpv6ifconf['defaultleasetime'])
$dhcpdv6conf .= " default-lease-time {$dhcpv6ifconf['defaultleasetime']};\n";
OpenPOWER on IntegriCloud