Suppress IPv6 metadata DAD failure and delete address
IPv4 DAD is non-existent in Linux or its failure is silent, so we
never needed to catch and ignore it. On the other hand IPv6 DAD
failure is explicit, hence comes this change.
This of course leaves the metadata service dead on hosts where
duplicate address detection failed. But if we catch the
DADFailed exception and delete the address, at least other
functions of the dhcp-agent should not be affected.
With this the IPv6 isolated metadata service is not redundant, which
is the best we can do without a redesign.
Also document the promised service level of isolated metadata.
Added additional tests for the metadata driver as well.
Conflicts: neutron/tests/unit/agent/linux/test_dhcp.py conflict with 74224e79e031636018b970fac9c2aa72516eb12d neutron/tests/unit/agent/metadata/test_driver.py conflict with 3d575f8bd066ce2eb46353a49a8c6850ba9e4387
Change-Id: I6b544c5528cb22e5e8846fc47dfb8b05f70f975c
Partial-Bug: #1953165
(cherry picked from commit 2aee961ab6942ab59aeacdc93d918c8c19023041)
(cherry picked from commit 071255f098e0e73fd5220f83cbbc8ac1c421f3ab)
Reviewed: https:/ /review. opendev. org/c/openstack /neutron/ +/880957 /opendev. org/openstack/ neutron/ commit/ 1c615281f7632f3 f1cf4bd37eefe90 c50c6dfe25
Committed: https:/
Submitter: "Zuul (22348)"
Branch: stable/zed
commit 1c615281f7632f3 f1cf4bd37eefe90 c50c6dfe25
Author: Bence Romsics <email address hidden>
Date: Mon Mar 6 13:04:01 2023 +0100
Suppress IPv6 metadata DAD failure and delete address
IPv4 DAD is non-existent in Linux or its failure is silent, so we
never needed to catch and ignore it. On the other hand IPv6 DAD
failure is explicit, hence comes this change.
This of course leaves the metadata service dead on hosts where
duplicate address detection failed. But if we catch the
DADFailed exception and delete the address, at least other
functions of the dhcp-agent should not be affected.
With this the IPv6 isolated metadata service is not redundant, which
is the best we can do without a redesign.
Also document the promised service level of isolated metadata.
Added additional tests for the metadata driver as well.
Conflicts:
neutron/ tests/unit/ agent/linux/ test_dhcp. py
conflict with 74224e79e031636 018b970fac9c2aa 72516eb12d
neutron/ tests/unit/ agent/metadata/ test_driver. py
conflict with 3d575f8bd066ce2 eb46353a49a8c68 50ba9e4387
Change-Id: I6b544c5528cb22 e5e8846fc47dfb8 b05f70f975c 59aeacdc93d918c 8c19023041) fd5220f83cbbc8a c1c421f3ab)
Partial-Bug: #1953165
(cherry picked from commit 2aee961ab6942ab
(cherry picked from commit 071255f098e0e73