← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1581348] [NEW] Can't delete a v4 csnat port when there is a v6 router interface attached

 

Public bug reported:

Reproduce:
1) I enable DVR in devstack. After installation, there is a DVR, an ipv4+ipv6 router gateway in DVR, an ipv4 router interface in DVR, and an ipv6 router interface in DVR.

2) I want to use delete the v4 subnet. So, I delete the ipv4 router gateway.
[fedora@normal-dvr devstack]$ neutron router-interface-delete router1 private-subnet
Removed interface from router router1.

3) I try to delete the v4 subnet, but neutron server tell me that the subnet can't be deleted, because there is still port(s) being used.
[fedora@normal-dvr devstack]$ neutron subnet-delete private-subnet
Unable to complete operation on subnet d0282930-95ca-4f64-9ae9-8c22be9cb3ab: One or more ports have an IP allocation from this subnet.

4) Check the port-list, I found the csnat port is still there.
[fedora@normal-dvr devstack]$ neutron port-list
+--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------------------------------+
| id                                   | name | mac_address       | fixed_ips                                                                                                   |
+--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------------------------------+

| bf042acf-40d5-4503-b62e-7389a6fc9bca |      | fa:16:3e:47:a5:40 | {"subnet_id": "d0282930-95ca-4f64-9ae9-8c22be9cb3ab", "ip_address": "10.0.0.3"}                             |
+--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------------------------------+

5) But look into the snat namespace, there is no such port there.


Then I can't delete the subnet, because the port is there. I can't delete the port, because the port has a device owner network:router_centralized_snat. I even can't attach the subnet back to DVR, neutron server will tell me:  Router already has a port on subnet.

This problem will not be reproduce if there is no ipv6 subnet attached
to DVR.

Expect: Can use ipv4 no matter if there is ipv6 subnet attached to DVR.

** Affects: neutron
     Importance: Undecided
     Assignee: Hong Hui Xiao (xiaohhui)
         Status: New


** Tags: ipv6 l3-dvr-backlog

** Changed in: neutron
     Assignee: (unassigned) => Hong Hui Xiao (xiaohhui)

** Tags added: l3-dvr-backlog

** Tags added: ipv6

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

Title:
  Can't delete a v4 csnat port when there is a v6 router interface
  attached

Status in neutron:
  New

Bug description:
  Reproduce:
  1) I enable DVR in devstack. After installation, there is a DVR, an ipv4+ipv6 router gateway in DVR, an ipv4 router interface in DVR, and an ipv6 router interface in DVR.

  2) I want to use delete the v4 subnet. So, I delete the ipv4 router gateway.
  [fedora@normal-dvr devstack]$ neutron router-interface-delete router1 private-subnet
  Removed interface from router router1.

  3) I try to delete the v4 subnet, but neutron server tell me that the subnet can't be deleted, because there is still port(s) being used.
  [fedora@normal-dvr devstack]$ neutron subnet-delete private-subnet
  Unable to complete operation on subnet d0282930-95ca-4f64-9ae9-8c22be9cb3ab: One or more ports have an IP allocation from this subnet.

  4) Check the port-list, I found the csnat port is still there.
  [fedora@normal-dvr devstack]$ neutron port-list
  +--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------------------------------+
  | id                                   | name | mac_address       | fixed_ips                                                                                                   |
  +--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------------------------------+

  | bf042acf-40d5-4503-b62e-7389a6fc9bca |      | fa:16:3e:47:a5:40 | {"subnet_id": "d0282930-95ca-4f64-9ae9-8c22be9cb3ab", "ip_address": "10.0.0.3"}                             |
  +--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------------------------------+

  5) But look into the snat namespace, there is no such port there.

  
  Then I can't delete the subnet, because the port is there. I can't delete the port, because the port has a device owner network:router_centralized_snat. I even can't attach the subnet back to DVR, neutron server will tell me:  Router already has a port on subnet.

  This problem will not be reproduce if there is no ipv6 subnet attached
  to DVR.

  Expect: Can use ipv4 no matter if there is ipv6 subnet attached to
  DVR.

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


Follow ups