On a couple of occasions I've had LXC containers restarted but they've ended up in a bad situation with their IP's.
Basically the IPv4 address comes up but experiences disconnects. The IPv6 address fails to come up with "tentative dadfailed".
What's happened here is the veth from the previous container wasn't cleaned up properly.
arp -a or
ip neigh show don't show the problem because as far as they're concerned the offending endpoint is behind
The only way I know of to confirm this is to check the bridge against the LXC info:
$ brctl show br0 br0 8000.fe46606ac64f no veth7UFFVA vethFF6D6Y vethXAOAMY
$ lxc-ls --active lxc-guest-1 lxc-guest-1 $ lxc-info -n lxc-guest-1 | grep veth Link: vethFF6D6Y $ lxc-info -n
| grep veth Link: vethXAOAMY
We see here that
veth7UFFVA is abandoned.
To fix this we need to shut down the LXC instance that's experiencing connectivity issues, then remove the abandoned interface from the bridge.
$ lxc-stop -n
$ brctl delif br0 veth7UFFVA $ lxc-start -n
And confirm in the newly started container that we have a fully assigned IPv6 address.