summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorsmos <seth.mos@dds.nl>2012-06-06 08:47:23 +0200
committersmos <seth.mos@dds.nl>2012-06-06 08:50:07 +0200
commitfe838158d9889218915b015f1b0a40552b889ad2 (patch)
tree401a8c3e547b0c3577768f0fb396ef46210b724f /etc
parent628306afe8af9ed6a036aea22ba7f29bfe9f8066 (diff)
downloadpfsense-fe838158d9889218915b015f1b0a40552b889ad2.zip
pfsense-fe838158d9889218915b015f1b0a40552b889ad2.tar.gz
Change the DHCPv6 services page into a RA and DHCPv6 section, move some of the variables.
Add drop down to select carp vip for that interface for CARP advertisements Allow setting the RA priority. Redmine ticket #1829
Diffstat (limited to 'etc')
-rw-r--r--etc/inc/services.inc30
1 files changed, 24 insertions, 6 deletions
diff --git a/etc/inc/services.inc b/etc/inc/services.inc
index f5b2c48..af291b5 100644
--- a/etc/inc/services.inc
+++ b/etc/inc/services.inc
@@ -84,11 +84,18 @@ function services_radvd_configure() {
continue;
/* are router advertisements enabled? */
- if($dhcpv6ifconf['mode'] == "disabled")
+ if($dhcpv6ifconf['ramode'] == "disabled")
continue;
-
- $realif = get_real_interface($dhcpv6if);
+ /* check if we need to listen on a CARP interface */
+ $carplist = get_configured_carp_interface_list();
+ if($dhcpv6ifconf['rainterface'] <> "") {
+ if($carplist[$dhcpv6ifconf['rainterface']] <> "") {
+ $realif = $dhcpv6ifconf['rainterface'];
+ } else {
+ $realif = get_real_interface($dhcpv6if);
+ }
+ }
$ifcfgipv6 = get_interface_ipv6($dhcpv6if);
if(!is_ipaddrv6($ifcfgipv6))
continue;
@@ -106,7 +113,18 @@ function services_radvd_configure() {
$radvdconf .= "\tMaxRtrAdvInterval 10;\n";
$radvdconf .= "\tAdvLinkMTU 1280;\n";
// $radvdconf .= "\tDeprecatePrefix on;\n";
- switch($dhcpv6ifconf['mode']) {
+ switch($dhcpv6ifconf['rapriority']) {
+ case "low":
+ $radvdconf .= "\tAdvDefaultPreference low;\n";
+ break;
+ case "medium":
+ $radvdconf .= "\tAdvDefaultPreference medium;\n";
+ break;
+ case "high":
+ $radvdconf .= "\tAdvDefaultPreference high;\n";
+ break;
+ }
+ switch($dhcpv6ifconf['ramode']) {
case "managed":
$radvdconf .= "\tAdvManagedFlag on;\n";
break;
@@ -115,7 +133,7 @@ function services_radvd_configure() {
break;
}
$radvdconf .= "\tprefix {$subnetv6}/{$ifcfgsnv6} {\n";
- switch($dhcpv6ifconf['mode']) {
+ switch($dhcpv6ifconf['ramode']) {
case "managed":
$radvdconf .= "\t\tAdvOnLink on;\n";
$radvdconf .= "\t\tAdvAutonomous off;\n";
@@ -976,7 +994,7 @@ EOD;
}
}
- if($config['dhcpdv6'][$dhcpv6if]['mode'] <> "unmanaged") {
+ if($config['dhcpdv6'][$dhcpv6if]['ramode'] <> "unmanaged") {
$realif = escapeshellcmd(get_real_interface($dhcpv6if));
$dhcpdv6ifs[] = $realif;
exec("/sbin/ifconfig {$realif} |awk '/ether/ {print $2}'", $mac);
OpenPOWER on IntegriCloud