summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorErmal <eri@pfsense.org>2013-03-05 19:57:10 +0000
committerErmal <eri@pfsense.org>2013-03-05 19:57:10 +0000
commit1fadb9d1129b68572e04c3fd7b12fe4bd0098519 (patch)
treedcb5f57ded8b24b1803a024a0fb48d47d6534ddf /etc
parentafe4f2da5079fc68cd0fcdb8d5ba65b173dd5726 (diff)
downloadpfsense-1fadb9d1129b68572e04c3fd7b12fe4bd0098519.zip
pfsense-1fadb9d1129b68572e04c3fd7b12fe4bd0098519.tar.gz
Remove old ip information even from the tracking interface as well so that track6 config code does not get confused. Fixes #2627
Diffstat (limited to 'etc')
-rw-r--r--etc/inc/interfaces.inc9
1 files changed, 5 insertions, 4 deletions
diff --git a/etc/inc/interfaces.inc b/etc/inc/interfaces.inc
index 2381262..fb7bb9f 100644
--- a/etc/inc/interfaces.inc
+++ b/etc/inc/interfaces.inc
@@ -3159,6 +3159,11 @@ function interface_track6_dhcp6_configure($interface = "lan", $lancfg) {
return;
}
+ $lanif = get_real_interface($interface);
+ $oip = find_interface_ipv6($lanif);
+ if (is_ipaddrv6($oip))
+ mwexec("/sbin/ifconfig {$lanif} inet6 {$oip} delete");
+
if ($wancfg['ipaddrv6'] == "slaac") {
$wanif = get_real_interface($lancfg['track6-interface']);
$ifcfgipv6 = find_interface_ipv6($wanif);
@@ -3169,10 +3174,6 @@ function interface_track6_dhcp6_configure($interface = "lan", $lancfg) {
$dhcp6lanarr[6] = 0;
$dhcp6lanarr[7] = 1;
$dhcp6lan = Net_IPv6::compress(implode(":", $dhcp6lanarr));
- $lanif = get_real_interface($interface);
- $oip = find_interface_ipv6($lanif);
- if (is_ipaddrv6($oip))
- mwexec("/sbin/ifconfig {$lanif} inet6 {$oip} delete");
log_error("dhcp6 {$interface} with ipv6 address {$dhcp6lan} based on {$lancfg['track6-interface']}");
mwexec("/sbin/ifconfig {$lanif} inet6 {$dhcp6lan} prefixlen 64");
}
OpenPOWER on IntegriCloud