summaryrefslogtreecommitdiffstats
path: root/etc/inc/services.inc
diff options
context:
space:
mode:
authorJean Cyr <jcyr@dillobits.com>2013-11-06 21:15:07 -0500
committerJean Cyr <jcyr@dillobits.com>2013-11-06 21:15:07 -0500
commit70da417266f2f4161bd8a1214e0bfee8b073620c (patch)
tree48b039127d268fe4297152b8f51e0913b8332a01 /etc/inc/services.inc
parent8a0ae97fa0e249aa13538103e662aa6191ebde65 (diff)
downloadpfsense-70da417266f2f4161bd8a1214e0bfee8b073620c.zip
pfsense-70da417266f2f4161bd8a1214e0bfee8b073620c.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.
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 0a89302..6f01d2f 100644
--- a/etc/inc/services.inc
+++ b/etc/inc/services.inc
@@ -990,6 +990,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);
}
}
}
@@ -1095,6 +1096,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