summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSeth Mos <seth.mos@dds.nl>2011-09-03 19:58:29 +0200
committerSeth Mos <seth.mos@dds.nl>2011-09-03 19:58:29 +0200
commitf535d5a0bb339616e287f74b23e46d9594ad2088 (patch)
tree2b7e3e58d4e58be103dc392be6f875fc02dd2469
parent02091d234da2ee7c27619d802cf75931707ab85d (diff)
downloadpfsense-f535d5a0bb339616e287f74b23e46d9594ad2088.zip
pfsense-f535d5a0bb339616e287f74b23e46d9594ad2088.tar.gz
Now that our rtadvd binary supports RDNSS we can tack the search domain and DNS servers onto the stack.
Ticket #1836
-rw-r--r--etc/inc/services.inc19
1 files changed, 18 insertions, 1 deletions
diff --git a/etc/inc/services.inc b/etc/inc/services.inc
index 91f5368..f39fa8e 100644
--- a/etc/inc/services.inc
+++ b/etc/inc/services.inc
@@ -119,7 +119,24 @@ EOD;
break;
}
- $rtadvdconf .= "\t:tc=ether:\n";
+ $rtadvdconf .= "\t:tc=ether:\\\n";
+ /* add DNS servers */
+ if(!empty($dhcpv6ifconf['dnsserver'][0])) {
+ $dnslist = implode(",", $dhcpv6ifconf['dnsserver']);
+ $rtadvdconf .= "\t:rdnss=\"{$dnslist}\":\\\n";
+ } elseif (isset($config['dnsmasq']['enable'])) {
+ $dnslist = get_interface_ipv6($dhcpv6if);
+ $rtadvdconf .= "\t:rdnss=\"{$dnslist}\":\\\n";
+ } elseif (!empty($config['system']['dnsserver'][0])) {
+ $dnslist = implode(",", $config['system']['dnsserver']);
+ $rtadvdconf .= "\t:rdnss=\"{$dnslist}\":\\\n";
+ }
+
+ if($dhcpv6ifconf['domain'] <> "") {
+ $rtadvdconf .= "\t:dnssl=\"{$dhcpv6ifconf['domain']}\":\n";
+ } elseif ($config['system']['domain'] <> "") {
+ $rtadvdconf .= "\t:dnssl=\"{$config['system']['domain']}\":\n";
+ }
$rtadvdconf .= "\n\n";
$rtadvdnum++;
}
OpenPOWER on IntegriCloud