IPv6 prefix delegation does not work with DVR
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| neutron |
Medium
|
Brian Haley |
Bug Description
Using a recent single-node devstack install, I tried to enable IPv6 prefix delegation following the exact instructions in the advanced networking guide - http://
$ neutron net-create ipv6-pd
$ neutron subnet-create ipv6-pd --name ipv6-pd-1 --ip_version 6 --ipv6_ra_mode slaac --ipv6_address_mode slaac
$ neutron router-
The l3-agent threw an exception:
2016-02-02 10:28:07.014 23328 DEBUG neutron.
2016-02-02 10:28:07.068 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 DEBUG oslo_concurrenc
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.069 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
2016-02-02 10:28:07.075 23328 ERROR neutron.
That interface, qg-e4629b84-e8, lives in the SNAT namespace on a network node in dvr_snat mode.
Looking into it.
tags: | added: l3-dvr-backlog |
Changed in neutron: | |
status: | New → Confirmed |
John Davidge (john-davidge) wrote : | #2 |
The note after the first paragraph of the Prefix Delegation section of [1] states that DVR is not supported, so failure is currently the expected behavior. I wonder if it's worth preventing the user from doing this with an error message instead of allowing the l3 agent to throw an exception.
[1] http://
Changed in neutron: | |
assignee: | nobody → Ritesh Anand (ritesh-anand) |
Brian Haley (brian-haley) wrote : | #3 |
John - I completely missed that note, but we'll see what we can do to possibly fix it. If there's any info you can pass along I'd appreciate it.
Changed in neutron: | |
status: | Confirmed → In Progress |
Fix proposed to branch: master
Review: https:/
Changed in neutron: | |
assignee: | Ritesh Anand (ritesh-anand) → Brian Haley (brian-haley) |
Changed in neutron: | |
assignee: | Brian Haley (brian-haley) → Ritesh Anand (ritesh-anand) |
Change abandoned by Armando Migliaccio (<email address hidden>) on branch: master
Review: https:/
Reason: This review is > 4 weeks without comment, and failed Jenkins the last time it was checked. We are abandoning this for now. Feel free to reactivate the review by pressing the restore button and leaving a 'recheck' comment to get fresh test results.
Changed in neutron: | |
assignee: | Ritesh Anand (ritesh-anand) → nobody |
status: | In Progress → Confirmed |
Changed in neutron: | |
assignee: | nobody → Brian Haley (brian-haley) |
status: | Confirmed → In Progress |
Changed in neutron: | |
milestone: | none → ocata-rc1 |
tags: | added: ocata-rc-potential |
Reviewed: https:/
Committed: https:/
Submitter: Jenkins
Branch: master
commit 7b5f01c2e58cd21
Author: Brian Haley <email address hidden>
Date: Tue Jan 24 13:34:58 2017 -0500
Add IPv6 Prefix Delegation support for DVR
Unlike Legacy routers, DVR Edge Routers have their gateway
interfaces in the SNAT namespace as opposed to the router
namespace. Added a new method to the router_info class,
get_
the gateway device lives in. This can then be over-ridden
in the DVR Edge router class.
The Prefix Delegation code will also now listen on the
update_router event from the l3-agent and reset the namespace
name if it changes.
Closes-Bug: #1541406
Change-Id: If6ada5027d0483
Changed in neutron: | |
status: | In Progress → Fix Released |
This issue was fixed in the openstack/neutron 10.0.0.0rc1 release candidate.
sean redmond (sean-redmond1) wrote : | #8 |
This impacts newton, is a backport sensible?
Fix proposed to branch: stable/newton
Review: https:/
Reviewed: https:/
Committed: https:/
Submitter: Jenkins
Branch: stable/newton
commit a2f07de43f250b2
Author: Brian Haley <email address hidden>
Date: Tue Jan 24 13:34:58 2017 -0500
Add IPv6 Prefix Delegation support for DVR
Unlike Legacy routers, DVR Edge Routers have their gateway
interfaces in the SNAT namespace as opposed to the router
namespace. Added a new method to the router_info class,
get_
the gateway device lives in. This can then be over-ridden
in the DVR Edge router class.
The Prefix Delegation code will also now listen on the
update_router event from the l3-agent and reset the namespace
name if it changes.
Conflicts:
Closes-Bug: #1541406
Change-Id: If6ada5027d0483
(cherry picked from commit 7b5f01c2e58cd21
tags: | added: in-stable-newton |
This issue was fixed in the openstack/neutron 9.4.0 release.
Is this devstack-specific, or does it occur outside of devstack as well?