[openstack-dev] [Neutron][IPv6] Prefix delegation and user facing API thoughts

John Belamaric jbelamaric at infoblox.com
Mon Mar 23 15:31:18 UTC 2015

On 3/18/15, 9:12 PM, "Sean M. Collins" <sean at coreitpro.com> wrote:

> My hope is that either the new IPAM subsystem for subnet allocations
>would provide this, or that a small API extension could "paper over" some
>of the sharper edges.

In IPAM we have added this concept of a subnet request. The built-in
support would allow you to request "any subnet" or a "specific subnet".
This concept applies to both pool-based and non-pool-based requests.

Currently, a request needs to be essentially encoded in the "cidr" field
of the subnet creation API call, in order to provide complete API
backwards compatibility. A blank CIDR indicates "any subnet"; a specific
CIDR indicates to allocate that subnet. However, the intention is that
individual drivers could add their own types of requests. This is
supported in the request factory defined in [1]. This means, for example,
we can implement a request class RFC3633SubnetRequest that handles
acquiring the CIDR via prefix delegation. The user will pass "RFC3633" as
the cidr attribute in that case, so that the correct request class is
instantiated. A similar mechanism can be used for address requests - for
example, EUI64 and other auto-generated addresses.

To enable this, an additional change needed beyond [1] is to use the
request factory for validation of the "cidr" field rather than the API

[1] https://review.openstack.org/#/c/153236/25/neutron/ipam/__init__.py

More information about the OpenStack-dev mailing list