https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277128
Bug ID: 277128 Summary: IPV6 public address lost after networking driver reload and attaching a new network interface Product: Base System Version: Unspecified Hardware: Any OS: Any Status: New Severity: Affects Many People Priority: --- Component: kern Assignee: b...@freebsd.org Reporter: osama...@amazon.com Issue: IPV6 Public address lost after reloading a network driver OR attaching a new interface on a running instance Reproduction: The issue was reproduced in aws EC2 services, it reproduces over all regions: Region: us-west-2 (Oregon) AMI: ami-0e1d8ff3b9c3f2571 Instance: c5.12xlrage Reproduction steps: 1- Create a subnet that allows ipv6 addresses and make sure to tick "Enable auto-assign IPv6 address" in the subnet settings 2- Create a new interface in the newly created subnet 3- Attached the interface to the instance - This interface will be seen as ena0 in the upcoming examples Issue No. 1: ============ At this point you'll see the newly attached interface (ena0) is attached but does not have a public IPv6 address: root@freebsd:/home/ec2-user # ifconfig enas0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9001 options=200423<RXCSUM,TXCSUM,JUMBO_MTU,LRO,RXCSUM_IPV6> ether 02:da:b6:58:d9:d3 inet6 fe80::da:b6ff:fe58:d9d3%enas0 prefixlen 64 scopeid 0x1 inet 172.31.30.153 netmask 0xfffff000 broadcast 172.31.31.255 media: Ethernet autoselect (Unknown <full-duplex>) status: active nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> ena0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9001 options=200423<RXCSUM,TXCSUM,JUMBO_MTU,LRO,RXCSUM_IPV6> ether 02:12:77:45:cf:75 inet6 fe80::12:77ff:fe45:cf75%ena0 prefixlen 64 scopeid 0x3 inet 172.31.207.24 netmask 0xfffff000 broadcast 172.31.207.255 media: Ethernet autoselect (Unknown <full-duplex>) status: active nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> Reboot the instance, you'll see that the new interface will get a public IPv6 address: ec2-user@freebsd:~ $ ifconfig enas0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9001 options=200423<RXCSUM,TXCSUM,JUMBO_MTU,LRO,RXCSUM_IPV6> ether 02:da:b6:58:d9:d3 inet6 fe80::da:b6ff:fe58:d9d3%enas0 prefixlen 64 scopeid 0x1 inet 172.31.30.153 netmask 0xfffff000 broadcast 172.31.31.255 media: Ethernet autoselect (Unknown <full-duplex>) status: active nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> ena0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9001 options=200423<RXCSUM,TXCSUM,JUMBO_MTU,LRO,RXCSUM_IPV6> ether 02:12:77:45:cf:75 inet6 fe80::12:77ff:fe45:cf75%ena0 prefixlen 64 scopeid 0x2 inet6 2600:1f14:c0:8803:618:da09:7da9:310 prefixlen 128 inet 172.31.207.24 netmask 0xfffff000 broadcast 172.31.207.255 media: Ethernet autoselect (Unknown <full-duplex>) status: active nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> Issue No. 2: ============ Reload the driver by running kldunload if_ena.ko && kldload ./if_ena.ko and you'll see that the public IPv6 address is lost ec2-user@freebsd:~ $ ifconfig enas0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9001 options=200423<RXCSUM,TXCSUM,JUMBO_MTU,LRO,RXCSUM_IPV6> ether 02:da:b6:58:d9:d3 inet6 fe80::da:b6ff:fe58:d9d3%enas0 prefixlen 64 scopeid 0x1 inet 172.31.30.153 netmask 0xfffff000 broadcast 172.31.31.255 media: Ethernet autoselect (Unknown <full-duplex>) status: active nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> ena0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9001 options=200423<RXCSUM,TXCSUM,JUMBO_MTU,LRO,RXCSUM_IPV6> ether 02:12:77:45:cf:75 inet6 fe80::12:77ff:fe45:cf75%ena0 prefixlen 64 scopeid 0x2 inet6 2600:1f14:c0:8803:618:da09:7da9:310 prefixlen 128 inet 172.31.207.24 netmask 0xfffff000 broadcast 172.31.207.255 media: Ethernet autoselect (Unknown <full-duplex>) status: active nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> -------Reboot------- root@freebsd:/home/ec2-user/fix-flag # ifconfig enas0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9001 options=200423<RXCSUM,TXCSUM,JUMBO_MTU,LRO,RXCSUM_IPV6> ether 02:da:b6:58:d9:d3 inet6 fe80::da:b6ff:fe58:d9d3%enas0 prefixlen 64 scopeid 0x1 inet 172.31.30.153 netmask 0xfffff000 broadcast 172.31.31.255 media: Ethernet autoselect (Unknown <full-duplex>) status: active nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> ena0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9001 options=200423<RXCSUM,TXCSUM,JUMBO_MTU,LRO,RXCSUM_IPV6> ether 02:12:77:45:cf:75 inet6 fe80::12:77ff:fe45:cf75%ena0 prefixlen 64 scopeid 0x2 inet 172.31.207.24 netmask 0xfffff000 broadcast 172.31.207.255 media: Ethernet autoselect (Unknown <full-duplex>) status: active nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL> Looked at the tcpdump results and saw no dhcpv6 requests Tried to restart the router solicitation daemon, saw router advertisement messages but still no IPV6 -- You are receiving this mail because: You are the assignee for the bug.