← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 2115776] [NEW] Neutron fails to delete records for a VM or FIP when there is A and AAAA records with the same name

 

Public bug reported:

In Caracal on 22.04:
designate-* 1:18.0.0-0ubuntu1~cloud0
neutron-*   2:24.1.0-0ubuntu1~cloud0

[Scenario]
1. You have a network with --dns-domain set to a zone that exists in Designate
2. Within this network you create an IPv6 subnet with --dns-publish-fixed-ip set
3. In addition, you have set it up so that floating IPs will be automatically registered in Designate when added to an instance.

This whole scenario is basically Use case 1 and 3a from
https://docs.openstack.org/neutron/latest/admin/config-dns-int-ext-
serv.html

[The issue]
With this given scenario, you'll get both an A and an AAAA record with the same name (which is completly normal and wanted). When the VM is deleted, the DNS records fails to delete with a neutron_lib.exceptions.dns.DuplicateRecordSet exception.

https://paste.openstack.org/show/bPOZX1GHmL6CFu8KVYHk/

If I've read the code correctly,
https://github.com/openstack/neutron/blob/stable/2024.1/neutron/services/externaldns/drivers/designate/driver.py#L159
neutron will first lookup all records registered for an IP, then double
check that the set of IPs registered on the names returned corresponds
with the original IP. This will then fail when we i.e lookup 1.2.3.4,
get vm.example.com., resolves vm.example.com, and get both 1.2.3.4 and
2001:db8::dead:beef back.

[Expected behaviour]
Neutron should understand that it's perfectly fine to dualstack, and have A/AAAA records with the same name, and act accordingly when trying to delete records.

** Affects: neutron
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/2115776

Title:
  Neutron fails to delete records for a VM or FIP when there is A and
  AAAA records with the same name

Status in neutron:
  New

Bug description:
  In Caracal on 22.04:
  designate-* 1:18.0.0-0ubuntu1~cloud0
  neutron-*   2:24.1.0-0ubuntu1~cloud0

  [Scenario]
  1. You have a network with --dns-domain set to a zone that exists in Designate
  2. Within this network you create an IPv6 subnet with --dns-publish-fixed-ip set
  3. In addition, you have set it up so that floating IPs will be automatically registered in Designate when added to an instance.

  This whole scenario is basically Use case 1 and 3a from
  https://docs.openstack.org/neutron/latest/admin/config-dns-int-ext-
  serv.html

  [The issue]
  With this given scenario, you'll get both an A and an AAAA record with the same name (which is completly normal and wanted). When the VM is deleted, the DNS records fails to delete with a neutron_lib.exceptions.dns.DuplicateRecordSet exception.

  https://paste.openstack.org/show/bPOZX1GHmL6CFu8KVYHk/

  If I've read the code correctly,
  https://github.com/openstack/neutron/blob/stable/2024.1/neutron/services/externaldns/drivers/designate/driver.py#L159
  neutron will first lookup all records registered for an IP, then
  double check that the set of IPs registered on the names returned
  corresponds with the original IP. This will then fail when we i.e
  lookup 1.2.3.4, get vm.example.com., resolves vm.example.com, and get
  both 1.2.3.4 and 2001:db8::dead:beef back.

  [Expected behaviour]
  Neutron should understand that it's perfectly fine to dualstack, and have A/AAAA records with the same name, and act accordingly when trying to delete records.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/2115776/+subscriptions