2016-02-11 23:05:51 |
Carl Baldwin |
bug |
|
|
added bug |
2016-02-11 23:05:57 |
Carl Baldwin |
neutron: status |
New |
Confirmed |
|
2016-02-11 23:06:03 |
Carl Baldwin |
neutron: importance |
Undecided |
Wishlist |
|
2016-02-11 23:06:18 |
Carl Baldwin |
tags |
|
l3-ipam-dhcp rfe |
|
2016-02-12 00:05:40 |
Carl Baldwin |
neutron: status |
Confirmed |
Triaged |
|
2016-03-01 22:28:52 |
Carl Baldwin |
summary |
[RFE] Differentiate between static and floating subnets |
[RFE] Differentiate between service and floating subnets |
|
2016-03-01 22:36:55 |
Carl Baldwin |
description |
I've been thinking about this for a little while now. There seems to be something different about floating IP subnets and other (I'll call them static in this context) subnets in some use cases.
- On an external network where operators wish to use private IPs for router ports (and DVR FIP ports) and public for floating IPs.
- Enable using floating IPs on provider networks without routers [1]. This has come up a lot. In many cases, operators want them to be public while the static ones are private.
- On routed networks where VM instance and router ports need IPs from their segments but floating IPs can be routed more flexibly.
These boil down to two ways I see to differentiate subnets:
- public vs private
- L2 bound vs routed
We could argue the definitions of public and private but I don't think that's necessary. Public could mean globally routable or routable within some organization. Private would mean not public.
An L2 bound subnet is one used on a segment where arp is expected to work. The opposite type can be routed by some L3 mechanism.
One possible way to make this distinction might be to mark certain subnets as floating subnets. The rules, roughly would be as follows:
- When allocating floating IPs, prefer floating subnets. (fallback to non-floating to support backward compatibility?)
- Don't allocate non-floating IP ports from floating subnets.
[1] http://lists.openstack.org/pipermail/openstack-operators/2016-February/009551.html |
I've been thinking about this for a little while now. There seems to be something different about floating IP subnets and other (I'll call them "service" in this context) subnets in some use cases.
- On an external network where operators wish to use private IPs for router ports (and DVR FIP ports) and public for floating IPs.
- Enable using floating IPs on provider networks without routers [1]. This has come up a lot. In many cases, operators want them to be public while the static ones are private.
- On routed networks where VM instance and router ports need IPs from their segments but floating IPs can be routed more flexibly.
I don't think we need to implement all of these use cases with this RFE. I think this RFE should just solve the first one about router ports. However, all of them seem to all need some way to distinguish different subnets on the same network for different purposes.
Let's add a service type field to the subnet. To start with, we’ll have two possible values other than the current default of null: "dvr_gateway", and "dvr_and_router_ports". The names aren’t written in stone. The choice between the two depends on if you want your routers to get public addresses for SNAT. IPAM will consider the service type when allocating a port for a particular device_owner. Each device_owner will have a (possibly empty) list of service types to prefer.
Any kind of port can get an address from a subnet without a specified service type. This fallback ensures that legacy behavior is always preserved and there are no surprises when you upgrade.
[1] http://lists.openstack.org/pipermail/openstack-operators/2016-February/009551.html |
|
2016-03-01 22:38:27 |
Carl Baldwin |
neutron: assignee |
|
Brian Haley (brian-haley) |
|
2016-03-01 22:38:53 |
Carl Baldwin |
neutron: milestone |
|
newton-1 |
|
2016-03-04 15:38:56 |
John Belamaric |
bug |
|
|
added subscriber John Belamaric |
2016-03-26 00:19:11 |
Armando Migliaccio |
tags |
l3-ipam-dhcp rfe |
l3-ipam-dhcp rfe-approved |
|
2016-03-31 15:31:41 |
Carl Baldwin |
summary |
[RFE] Differentiate between service and floating subnets |
[RFE] Differentiate between service and regular subnets |
|
2016-03-31 19:52:14 |
Brian Haley |
bug |
|
|
added subscriber Brian Haley |
2016-06-03 19:34:38 |
Armando Migliaccio |
neutron: milestone |
newton-1 |
newton-2 |
|
2016-07-15 23:34:12 |
Armando Migliaccio |
neutron: milestone |
newton-2 |
newton-3 |
|
2016-08-18 11:15:48 |
OpenStack Infra |
neutron: status |
Triaged |
In Progress |
|
2016-08-18 11:15:48 |
OpenStack Infra |
neutron: assignee |
Brian Haley (brian-haley) |
John Davidge (john-davidge) |
|
2016-08-22 17:20:21 |
OpenStack Infra |
neutron: assignee |
John Davidge (john-davidge) |
Carl Baldwin (carl-baldwin) |
|
2016-08-23 14:53:04 |
OpenStack Infra |
neutron: assignee |
Carl Baldwin (carl-baldwin) |
John Davidge (john-davidge) |
|
2016-08-25 06:03:51 |
OpenStack Infra |
neutron: status |
In Progress |
Fix Released |
|
2021-01-15 12:28:51 |
Christian Rohmann |
bug |
|
|
added subscriber Christian Rohmann |