Bug #2627
closedOld delegated prefixes are not removed from the LAN interface
100%
Description
When the LAN tracks the WAN via DHCPv6 Prefix Delegation and the WAN bounces, thus receiving a new delegated prefix, the old prefix is not removed from the LAN interface. Also, radvd still advertises the old delegated prefix.
In the example below, the newly-delegated IPv6 prefix is x:y:1014:408e::/64.
Destination Gateway Flags Refs Use Mtu Netif Expire default fe80::1%pppoe1 UGS 0 207 1492 pppoe1 ::1 ::1 UH 0 0 16384 lo0 x:y:1014:124::/64 link#1 U 0 0 1500 em0 x:y:1014:124::1 link#1 UHS 0 0 16384 lo0 x:y:1014:408e::/64 link#1 U 0 0 1500 em0 x:y:1014:408e:222:4dff:fe6b:73fc link#1 UHS 0 0 16384 lo0 x:y:1014:52c7::/64 link#1 U 0 156 1500 em0 x:y:1014:52c7::1 link#1 UHS 0 0 16384 lo0 x:y:1015:f005::/64 link#14 U 0 0 1492 pppoe1 x:y:1015:f005::bc1b:b403 link#14 UHS 0 0 16384 lo0
The radvd.conf file after reconnection is:
# Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1280; AdvDefaultPreference medium; prefix x:y:1014:124:0:0:0:0/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS x:y:1014:124::1 { }; DNSSL localdomain { }; };
Updated by Jim Pingle almost 12 years ago
- Target version set to 2.1
- Affected Version set to 2.1-IPv6
Updated by Jim Pingle almost 12 years ago
- Status changed from New to Feedback
Can you try this again on a recent 2.1 snapshot? Several changes to prefix delegation have happened recently.
Updated by Anonymous almost 12 years ago
Running this build:
2.1-BETA1 (amd64)
built on Tue Feb 12 10:20:45 EST 2013
FreeBSD 8.3-RELEASE-p5
Whenever the WAN receives a delegated prefix, no radvd.conf is generated and no prefix is received by LAN hosts.
1st attempt:
[2.1-BETA1][admin@buh-pfsense.localdomain]/root(20): cat /var/etc/radvd.conf # Automatically Generated, do not edit [2.1-BETA1][admin@buh-pfsense.localdomain]/root(27): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3040:1e7::/64 link#10 U bridge0 xxxx:yyyy:3040:1e7:d:3aff:fe2d:8a00 link#10 UHS lo0 xxxx:yyyy:304f:ffff::/64 link#9 U pppoe1 xxxx:yyyy:304f:ffff::bc1b:b766 link#9 UHS lo0
2nd attempt:
[2.1-BETA1][admin@buh-pfsense.localdomain]/root(1): cat /var/etc/radvd.conf # Automatically Generated, do not edit [2.1-BETA1][admin@buh-pfsense.localdomain]/root(2): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3030:1e4::/64 link#10 U bridge0 xxxx:yyyy:3030:1e4:d:3aff:fe2d:8a00 link#10 UHS lo0 xxxx:yyyy:303f:ffff::/64 link#9 U pppoe1 xxxx:yyyy:303f:ffff::567f:969a link#9 UHS lo0
Updated by Jim Pingle almost 12 years ago
Can you gitsync and try again, or wait for the next new snap? It may be that the last snap doesn't have the changes in it. There will be a new snap later this evening.
Updated by Anonymous almost 12 years ago
I will wait for the updated snapshot. In the meantime I went on to disable the DHCPv6 client on the WAN interface (IPv6 Configuration Type: None). This resulted in prefixes being distributed on the LAN and a radvd.conf file being generated.
# Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface bridge0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3020:40d::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3020:40d:d:3aff:fe2d:8a00 { }; DNSSL localdomain { }; };
Updated by Anonymous almost 12 years ago
I am using the build below:
2.1-BETA1 (amd64) built on Thu Feb 14 04:54:28 EST 2013 FreeBSD 8.3-RELEASE-p5
The problem is still there. No radvd.conf is being generated, although an IPv6 address is being bound to the LAN interface from the delegated prefix.
Updated by Ermal Luçi almost 12 years ago
- Status changed from New to Feedback
- % Done changed from 0 to 100
Applied in changeset afe4f2da5079fc68cd0fcdb8d5ba65b173dd5726.
Updated by Ermal Luçi almost 12 years ago
Applied in changeset 1fadb9d1129b68572e04c3fd7b12fe4bd0098519.
Updated by Anonymous almost 12 years ago
Testing was performed on:
2.1-BETA1 (amd64)
built on Wed Mar 6 15:11:09 EST 2013
FreeBSD 8.3-RELEASE-p6
Freshly booted pfSense box, LAN clients do not receive IPv6 addresses.
[2.1-BETA1][admin@localdomain]/root(2): cat /var/etc/radvd.conf # Automatically Generated, do not edit [2.1-BETA1][admin@localdomain]/root(3): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3020:11a::/64 link#10 U bridge0 xxxx:yyyy:3020:11a:d:3aff:fe2d:8a00 link#10 UHS lo0 xxxx:yyyy:302f:ffff::/64 link#9 U pppoe1 xxxx:yyyy:302f:ffff::50c:d0f7 link#9 UHS lo0
Disconnected from pppoe1, still nothing happens on LAN side. Delegated prefix is not removed from LAN interface.
[2.1-BETA1][admin@buh-pfsense.localdomain]/root(8): ifconfig bridge0 | grep inet6 inet6 fe80::1:1%bridge0 prefixlen 64 scopeid 0xa inet6 xxxx:yyyy:3020:11a:d:3aff:fe2d:8a00 prefixlen 64 [2.1-BETA1][admin@localdomain]/root(9): cat /var/etc/radvd.conf # Automatically Generated, do not edit [2.1-BETA1][admin@localdomain]/root(10): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire ::1 ::1 UH lo0 xxxx:yyyy:3020:11a::/64 link#10 U bridge0 xxxx:yyyy:3020:11a:d:3aff:fe2d:8a00 link#10 UHS lo0
Reconnected to pppoe1, LAN interface has no IPv6 prefix installed. Starts handing out IPv6 addresses from the old IPv6 delegated prefix (xxxx:yyyy:3020:11a::/64) that is now invalid.
[2.1-BETA1][admin@localdomain]/root(11): ifconfig bridge0 | grep inet6 inet6 fe80::1:1%bridge0 prefixlen 64 scopeid 0xa inet6 fe80::20d:3aff:fe2d:8a00%bridge0 prefixlen 64 scopeid 0xa [2.1-BETA1][admin@localdomain]/root(12): cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface bridge0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3020:11a::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3020:11a:d:3aff:fe2d:8a00 { }; DNSSL localdomain { }; }; [2.1-BETA1][admin@localdomain]/root(13): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:zzzz:1015:f001::/64 link#9 U pppoe1 xxxx:zzzz:1015:f001:222:4dff:fe6b:73fc link#9 UHS lo0
Updated by Renato Botelho almost 12 years ago
- Status changed from Feedback to New
Updated by Renato Botelho over 11 years ago
- Status changed from New to Feedback
Please test it again with tomorrow's (May 9) snapshots.
Updated by Anonymous over 11 years ago
Freshly booted pfSense box:
Has IPv6 on WAN interface, has no IPv6 on LAN interface, does not give out any IPv6 addresses on LAN interface:
cat /var/etc/radvd.conf # Automatically Generated, do not edit netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:zzzz:305f:ffff::/64 link#9 U pppoe1 xxxx:zzzz:305f:ffff:222:4dff:fe6b:73fc link#9 UHS lo0
Manually disconnected PPPoE WAN:
cat /var/etc/radvd.conf # Automatically Generated, do not edit netstat -rnf inet6 Only link local IPv6 addresses present.
Manually reconnect PPPoE WAN, WAN interface gets IPv6, LAN interface gets IPv6, LAN clients get IPv6 addresses. IPv6 ping from Internet to LAN client works.
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface bridge0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:zzzz:3020:3dc::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:zzzz:3020:3dc:d:3aff:fe2d:8a00 { }; DNSSL localdomain { }; }; netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:zzzz:3020:3dc::/64 link#10 U bridge0 xxxx:zzzz:3020:3dc:d:3aff:fe2d:8a00 link#10 UHS lo0 xxxx:zzzz:302f:ffff::/64 link#9 U pppoe1 xxxx:zzzz:302f:ffff::bc1a:b85c link#9 UHS lo0 xxxx:zzzz:302f:ffff:222:4dff:fe6b:73fc link#9 UHS lo0
Manually disconnect PPPoE WAN, LAN clients still receive old IPv6 delegated prefix addresses, LAN interface has only link-local address:
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface bridge0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:zzzz:3020:3dc::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:zzzz:3020:3dc:d:3aff:fe2d:8a00 { }; DNSSL localdomain { }; }; netstat -rnf inet6 Only link local IPv6 addresses present.
Manually connect PPPoE WAN, WAN interface receives IPv6 address, LAN interface has only link-local address, still sends out old delegated prefix to LAN clients:
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface bridge0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:zzzz:3020:3dc::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:zzzz:3020:3dc:d:3aff:fe2d:8a00 { }; DNSSL localdomain { }; }; netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:zzzz:304f:ffff::/64 link#9 U pppoe1 xxxx:zzzz:304f:ffff:222:4dff:fe6b:73fc link#9 UHS lo0
Manually disconnect PPPoE WAN, only link-local addresses on LAN interface, still sending old delegated prefix:
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface bridge0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:zzzz:3020:3dc::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:zzzz:3020:3dc:d:3aff:fe2d:8a00 { }; DNSSL localdomain { }; }; netstat -rnf inet6 Only link local IPv6 addresses present.
Manually reconnect PPPoE WAN, WAN interface receives IPv6 address, LAN interface has only link-local address, still sends out old delegated prefix to LAN clients:
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface bridge0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:zzzz:3020:3dc::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:zzzz:3020:3dc:d:3aff:fe2d:8a00 { }; DNSSL localdomain { }; }; netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:zzzz:303f:ffff::/64 link#9 U pppoe1 xxxx:zzzz:303f:ffff:222:4dff:fe6b:73fc link#9 UHS lo0
Updated by Anonymous over 11 years ago
Forgot to add, this test was performed on:
2.1-BETA1 (amd64)
built on Thu May 9 07:06:51 EDT 2013
Updated by Renato Botelho over 11 years ago
Could you please share <interfaces> section from config.xml and the content of /var/etc/dhcp6c*.conf with me?
Updated by Anonymous over 11 years ago
As a note, the value configured for "DHCPv6 Prefix Delegation size" is 64, but shows up as 0 in the config below:
<interfaces> <wan> <if>pppoe1</if> <disableftpproxy/> <bandwidth>100</bandwidth> <bandwidthtype>Mb</bandwidthtype> <spoofmac/> <descr><![CDATA[WAN1]]></descr> <blockbogons/> <enable/> <ipaddr>pppoe</ipaddr> <ipaddrv6>dhcp6</ipaddrv6> <dhcp6-duid/> <dhcp6-ia-pd-len>0</dhcp6-ia-pd-len> </wan> <lan> <if>bridge0</if> <bandwidth>100</bandwidth> <bandwidthtype>Mb</bandwidthtype> <enable/> <descr><![CDATA[BRIDGE0]]></descr> <spoofmac/> <ipaddr>192.168.x.y</ipaddr> <subnet>24</subnet> <ipaddrv6>track6</ipaddrv6> <track6-interface>wan</track6-interface> <track6-prefix-id>0</track6-prefix-id> </lan> <opt2> <descr><![CDATA[WAN2]]></descr> <if>em3</if> <alias-address>192.168.a.a</alias-address> <alias-subnet>24</alias-subnet> <blockbogons/> <spoofmac>aa:bb:cc:dd:ee:ff</spoofmac> <enable/> <ipaddr>dhcp</ipaddr> <dhcphostname/> </opt2> <opt3> <descr><![CDATA[OVPN]]></descr> <if>ovpns2</if> <enable/> <spoofmac/> </opt3> <opt4> <descr><![CDATA[DMZ]]></descr> <if>em1</if> <enable/> <spoofmac/> <blockbogons/> <ipaddr>192.168.c.d</ipaddr> <subnet>24</subnet> </opt4> <opt5> <descr><![CDATA[LAN_IF0]]></descr> <if>em0</if> <enable/> <spoofmac/> </opt5> </interfaces>
cat dhcp6c_wan.conf interface pppoe1 { send ia-na 0; # request stateful address send ia-pd 0; # request prefix delegation request domain-name-servers; request domain-name; script "/var/etc/dhcp6c_wan_script.sh"; # we'd like some nameservers please }; id-assoc na 0 { }; id-assoc pd 0 { prefix-interface bridge0 { sla-id 0; sla-len 0; }; };
Updated by Renato Botelho over 11 years ago
- Status changed from Feedback to New
Updated by Renato Botelho over 11 years ago
- Status changed from New to Feedback
Could you please check a recent snapshot?
Updated by Anonymous over 11 years ago
Tried with:
2.1-RC0 (amd64)
built on Mon Jun 24 04:05:41 EDT 2013
FreeBSD 8.3-RELEASE-p8
Boot up. WAN & LAN get correct IPv6 addresses, radvd works. LAN clients receive correct IPv6 addresses. LAN hosts are reachable from the Internet. All is working well.
Manually disconnect the PPPoE WAN (Disconnect button in Status -> Interfaces). IPv6 address not removed from LAN interface. Still handing out IPv6 addresses on LAN.
/root(1): cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3080:76::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3080:76:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; /root(2): ps aux | grep radvd root 94137 0.0 0.1 6828 1524 ?? SN 9:35PM 0:00.01 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 57076 0.0 0.1 9068 1468 1 S+ 9:46PM 0:00.00 grep radvd /root(3): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire ::1 ::1 UH lo0 xxxx:yyyy:3080:76::/64 link#1 U em0 xxxx:yyyy:3080:76:222:4dff:fe6b:73fc link#1 UHS lo0
Manually connect the PPPoE WAN (Connect button in Status -> Interfaces). WAN gets different IPv6 address. LAN still has the same old IPv6 address and is still handing out IPv6 addresses from the old delegated prefix. LAN clients are not reachable from the Internet.
/root(4): cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3080:76::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3080:76:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; /root(5): ps aux | grep radvd root 94137 0.0 0.1 6828 1524 ?? SN 9:35PM 0:00.02 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 37031 0.0 0.1 9068 1468 1 S+ 9:51PM 0:00.00 grep radvd /root(6): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3080:76::/64 link#1 U em0 xxxx:yyyy:3080:76:222:4dff:fe6b:73fc link#1 UHS lo0 xxxx:yyyy:308f:ffff::/64 link#9 U pppoe1 xxxx:yyyy:308f:ffff:222:4dff:fe6b:73fc link#9 UHS lo0
Manually disconnect the WAN interface (physical disconnect). IPv6 addresses not removed from LAN & WAN. Still handing out IPv6 addresses on LAN. The Status -> Interfaces page shows the WAN interface as "down" with no other details.
/root(10): cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3080:76::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3080:76:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; /root(11): ps aux | grep radvd root 94137 0.0 0.1 6828 1524 ?? SN 9:35PM 0:00.03 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 40782 0.0 0.1 9068 1468 1 S+ 9:57PM 0:00.00 grep radvd /root(12): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3080:76::/64 link#1 U em0 xxxx:yyyy:3080:76:222:4dff:fe6b:73fc link#1 UHS lo0 xxxx:yyyy:308f:ffff::/64 link#9 U pppoe1 xxxx:yyyy:308f:ffff:222:4dff:fe6b:73fc link#9 UHS lo0
Manually reconnect the WAN interface (physical reconnect). Status -> Interfaces for WAN shows the old IPv6 address, although you can see below it also received a different one. LAN interface still has the old IPv6 address. Still handing out IPv6 addresses from the old delegated prefix, which is not valid any more. LAN hosts are not reachable from the Internet. WAN is not reachable from the Internet on any of the two IPv6 addresses below.
/root(13): cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3080:76::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3080:76:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; /root(14): ps aux | grep radvd root 94137 0.0 0.1 6828 1524 ?? SN 9:35PM 0:00.05 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 44703 0.0 0.1 9068 1468 1 S+ 10:02PM 0:00.00 grep radvd /root(15): netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:302f:ffff::/64 link#9 U pppoe1 xxxx:yyyy:302f:ffff:222:4dff:fe6b:73fc link#9 UHS lo0 xxxx:yyyy:3080:76::/64 link#1 U em0 xxxx:yyyy:3080:76:222:4dff:fe6b:73fc link#1 UHS lo0 xxxx:yyyy:308f:ffff::/64 link#9 U pppoe1 xxxx:yyyy:308f:ffff:222:4dff:fe6b:73fc link#9 UHS lo0
Updated by Renato Botelho over 11 years ago
- Status changed from Feedback to New
Updated by Renato Botelho over 11 years ago
- Status changed from New to Feedback
It should be better on last snapshots
Updated by Ermal Luçi over 11 years ago
- Status changed from New to Feedback
Applied in changeset 90af1b8bee63ceabb5e1e11e2eb02b3b7b20f5ad.
Updated by Ermal Luçi over 11 years ago
Applied in changeset 45c07f167399a5fc900e54ea97d346a05cf23573.
Updated by Anonymous over 11 years ago
Tested using:
2.1-RC1 (amd64)
built on Sat Aug 17 21:32:08 EDT 2013
FreeBSD 8.3-RELEASE-p9
Step 1
Freshly booted pfSense. WAN & LAN get correct IPv6 addresses, radvd works. LAN clients receive correct IPv6 addresses. LAN hosts are reachable from the Internet. All is OK.
As a side note, WAN IPv6 is not shown on the Status -> Interfaces page, but can be found in the routing table (below).
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3071:e300::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3071:e300:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; ps aux | grep radvd root 61665 0.0 0.1 6828 1524 ?? S 9:49PM 0:00.01 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 9808 0.0 0.1 9068 1464 0 S+ 9:56PM 0:00.00 grep radvd netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3071:e300::/64 link#1 U em0 xxxx:yyyy:3071:e300:222:4dff:fe6b:73fc link#1 UHS lo0 xxxx:yyyy:307f:ffff::bc1b:b466 link#9 UHS lo0
Step 2
Manually disconnected the PPPoE WAN via Status -> Interfaces -> Disconnect button. IPv6 address is removed from LAN interface. Still handing out IPv6 addresses on LAN from a subnet (step 1) that is not connected any more. radvd is still running. radvd has the same PID, so radvd is never killed/refreshed.
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3071:e300::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3071:e300:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; ps aux | grep radvd root 61665 0.0 0.1 6828 1524 ?? S 9:49PM 0:00.02 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 69437 0.0 0.1 9068 1464 0 S+ 10:00PM 0:00.00 grep radvd netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire ::1 ::1 UH lo0
Step 3
Manually connect the PPPoE WAN via Status -> Interfaces -> Connect button. New IPv6 address (WAN) & prefix (LAN) are received. WAN IPv6 address correctly bound to WAN interface. LAN IPv6 address is from the new IPv6 prefix. The radvd config contains the old prefix (step 1). Still handing out IPv6 addresses on LAN from the old subnet (step 1) that is not assigned to us any more. radvd is still running. radvd has the same PID, so radvd is never killed/refreshed.
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3071:e300::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3071:e300:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; ps aux | grep radvd root 61665 0.0 0.1 6828 1524 ?? S 9:49PM 0:00.03 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 81381 0.0 0.1 9068 1464 1 S+ 10:11PM 0:00.00 grep radvd netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3032:3a00::/64 link#1 U em0 xxxx:yyyy:3032:3a00:222:4dff:fe6b:73fc link#1 UHS lo0 xxxx:yyyy:303f:ffff::bc1b:b6b6 link#9 UHS lo0
Step 4
Physically disconnect PPPoE WAN cable. Sensing the physical disconnect takes more than 30 seconds, but the gateway goes down long before that. LAN IPv6 address obtained at step 3 is not removed from the LAN interface. WAN IPv6 address obtained at step 3 is still in the routing table and bound to the PPPoE interface although physical interface was disconnected and interface appears down in the webGUI. Still handing out IPv6 addresses on LAN from the original prefix (step 1) that is not connected any more. radvd is still running. radvd has the same PID, so radvd is never killed/refreshed.
On a side note, why is the LAN MAC address used to build the link-local address of the WAN PPPoE interface instead of the WAN MAC address?
ifconfig em2 em2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM> ether 00:0e:0c:68:c9:9c inet6 fe80::20e:cff:fe68:c99c%em2 prefixlen 64 scopeid 0x3 nd6 options=3<PERFORMNUD,ACCEPT_RTADV> media: Ethernet autoselect status: no carrier ifconfig pppoe1 pppoe1: flags=8890<POINTOPOINT,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1500 inet6 fe80::222:4dff:fe6b:73fc%pppoe1 prefixlen 64 scopeid 0x9 inet6 xxxx:yyyy:303f:ffff::bc1b:b6b6 prefixlen 128 nd6 options=3<PERFORMNUD,ACCEPT_RTADV> cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3071:e300::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3071:e300:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; ps aux | grep radvd root 61665 0.0 0.1 6828 1524 ?? S 9:49PM 0:00.04 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 10492 0.0 0.1 9068 1464 1 S+ 10:17PM 0:00.00 grep radvd netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3032:3a00::/64 link#1 U em0 xxxx:yyyy:3032:3a00:222:4dff:fe6b:73fc link#1 UHS lo0 xxxx:yyyy:303f:ffff::bc1b:b6b6 link#9 UHS lo0
Step 5
Physically reconnect PPPoE WAN cable. PPPoE reconnects instantly. No new WAN IPv6 address is obtained. The old WAN IPv6 address (step 3) appears bound to pppoe1 but is not reachable from the Internet. LAN interface still has the old IPv6 address (step 3). Still handing out IPv6 from the initial prefix (step 1) on LAN. No IPv6 connectivity for LAN clients. radvd is still running. radvd has the same PID, so radvd is never killed/refreshed.
ifconfig pppoe1 pppoe1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1492 inet6 fe80::222:4dff:fe6b:73fc%pppoe1 prefixlen 64 scopeid 0x9 inet6 xxxx:yyyy:303f:ffff::bc1b:b6b6 prefixlen 128 inet6 fe80::bc1a:b899%pppoe1 prefixlen 64 scopeid 0x9 inet aaa.bbb.ccc.157 --> aaa.bbb.ccc.1 netmask 0xffffffff nd6 options=3<PERFORMNUD,ACCEPT_RTADV> cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated for DHCPv6 Server lan interface em0 { AdvSendAdvert on; MinRtrAdvInterval 5; MaxRtrAdvInterval 20; AdvLinkMTU 1500; AdvDefaultPreference medium; prefix xxxx:yyyy:3071:e300::/64 { DeprecatePrefix on; AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; route ::/0 { RemoveRoute on; }; RDNSS xxxx:yyyy:3071:e300:222:4dff:fe6b:73fc { }; DNSSL localdomain { }; }; ps aux | grep radvd root 61665 0.0 0.1 6828 1524 ?? S 9:49PM 0:00.05 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 16538 0.0 0.1 9068 1464 0 S+ 10:23PM 0:00.00 grep radvd netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 xxxx:yyyy:3032:3a00::/64 link#1 U em0 xxxx:yyyy:3032:3a00:222:4dff:fe6b:73fc link#1 UHS lo0 xxxx:yyyy:303f:ffff::bc1b:b6b6 link#9 UHS lo0
Updated by Ermal Luçi over 11 years ago
Is this still an issue for new snapshots of september?
Updated by Ermal Luçi over 11 years ago
I just pushed a commit for this as well https://github.com/pfsense/pfsense/commit/d6df2c4c71678b5edd98892ca40facbb80f4ed1c
Updated by Anonymous over 11 years ago
No improvement with:
2.1-RC2 (amd64)
built on Thu Sep 5 21:38:32 EDT 2013
What's different from the previous build is this:
- at step 3, no new WAN or LAN addresses are obtained
- at step 5, even though physical connection is restored, PPPoE will not reconnect.
Updated by Renato Botelho over 11 years ago
is the option "Use IPv4 connectivity as parent interface" set on WAN interface?
Updated by Anonymous over 11 years ago
Yes, otherwise it would not receive any kind of IPv6 address at all.
Updated by Anonymous over 11 years ago
I have sent you the system log and the config description.
Updated by Chris Buechler over 11 years ago
- Target version changed from 2.1 to 2.1.1
Updated by Renato Botelho over 11 years ago
- Status changed from Feedback to New
Updated by Ermal Luçi almost 11 years ago
Can you please confirm this happens with latest 2.1.1?
If yes can you post your config.xml?
Updated by Ermal Luçi almost 11 years ago
I put a fix which should handle properly all cases to this.
Can you try tomorrows snapshots of 2.1.1?
Updated by Ermal Luçi almost 11 years ago
- Status changed from New to Feedback
Applied in changeset 929776169f0f36b99ef62f7bfe633f8d02db2c43.
Updated by Ermal Luçi almost 11 years ago
Applied in changeset 080fd00bac29b736a5e1e8e91b9efbb3c3ea8305.
Updated by Anonymous almost 11 years ago
Tested this on:
2.1.1-PRERELEASE (amd64)
built on Sat Feb 22 05:12:28 EST 2014
FreeBSD 8.3-RELEASE-p14
1. Freshly booted pfSense box. All looks OK.
NOTE: WAN IPv6 address is not shown anywhere in the WebGUI or console. Maybe this is just a cosmetic bug...
cat /var/etc/radvd.conf # Automatically Generated, do not edit # Generated config for dhcp6 delegation from wan on lan interface igb0 { AdvSendAdvert on; MinRtrAdvInterval 3; MaxRtrAdvInterval 10; AdvLinkMTU 1500; AdvOtherConfigFlag on; prefix aaaa:bbbb:3066:ae00::/64 { AdvOnLink on; AdvAutonomous on; AdvRouterAddr on; }; RDNSS aaaa:bbbb:3066:ae00:21b:21ff:fea6:3ab4 { }; DNSSL localdomain { }; }; ps aux | grep radvd root 95983 0.0 0.0 6828 1476 ?? S 7:26PM 0:00.00 /usr/local/sbin/radvd -p /var/run/radvd.pid -C /var/etc/radvd.conf -m syslog root 80507 0.0 0.0 9068 1468 0 S+ 7:28PM 0:00.00 grep radvd netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 aaaa:bbbb:3066:ae00::/64 link#1 U igb0 aaaa:bbbb:3066:ae00:21b:21ff:fea6:3ab4 link#1 UHS lo0 aaaa:bbbb:306f:ffff::54e8:c7f4 link#11 UHS lo0
2. Manually disconnect WAN from Status -> Interfaces -> Disconnect. IPv6 prefix not being advertised on LAN any more. radvd is no longer running. Everything looks OK.
cat /var/etc/radvd.conf # Automatically Generated, do not edit ps aux | grep radvd root 58519 0.0 0.0 9068 1468 1 S+ 7:31PM 0:00.00 grep radvd netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire ::1 ::1 UH lo0
3. Manually connect WAN from Status -> Interfaces -> Connect. LAN interface has an IPv6 address, but the IPv6 prefix is not being advertised on the LAN interface. radvd is NOT running. IPv6 connectivity broken for LAN clients.
NOTE: WAN IPv6 address is not shown anywhere in the WebGUI or console.
cat /var/etc/radvd.conf # Automatically Generated, do not edit ps aux | grep radvd root 14458 0.0 0.0 6088 1188 1 RL+ 7:32PM 0:00.00 grep radvd netstat -rnf inet6 Routing tables Internet6: Destination Gateway Flags Netif Expire default fe80::1%pppoe1 UGS pppoe1 ::1 ::1 UH lo0 aaaa:bbbb:3084:9d00::/64 link#1 U igb0 aaaa:bbbb:3084:9d00:21b:21ff:fea6:3ab4 link#1 UHS lo0 aaaa:bbbb:308f:ffff::54e8:c7f4 link#11 UHS lo0
I have also sent you my anonymized config at the email address listed under your profile.
Updated by Chris Buechler almost 9 years ago
- Status changed from Feedback to Resolved
resolved some time ago, not an issue at least on 2.2.x and newer.