diff options
author | Jean Cyr <jcyr@dillobits.com> | 2013-11-06 21:15:07 -0500 |
---|---|---|
committer | Jean Cyr <jcyr@dillobits.com> | 2013-11-06 21:15:07 -0500 |
commit | 70da417266f2f4161bd8a1214e0bfee8b073620c (patch) | |
tree | 48b039127d268fe4297152b8f51e0913b8332a01 /etc/inc/services.inc | |
parent | 8a0ae97fa0e249aa13538103e662aa6191ebde65 (diff) | |
download | pfsense-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.inc | 4 |
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"; |