Jump to: navigation, search

Ironic/IPv6

< Ironic
Revision as of 09:37, 21 June 2016 by Lucas Alvares Gomes (talk | contribs) (Ironic and IPv6)
Warning.svg

This page is just a vision statement, so do not trust it fully, I (lucasagomes) haven't got Ironic yet working with IPv6.

Ironic and IPv6

Here are the things to consider when thinking about Ironic and IPv6:


PXE Boot

According to Intel (link) it seems that IPv6 for PXE boot is only supported when used with UEFI.

iPXE on the other hand does support IPv6 already* (link), but that kinda means that we need to have iPXE flashed in the NIC (see) otherwise we would still need IPv4 to fetch the iPXE ROM from the TFTP server and chain load it.

NOTE: iPXE doesn't seem to enable IPv6 by default, this is done by downloading the iPXE source from http://ipxe.org/download and then changing the NET_PROTO_IPV6 configuration in src/config/general.h defining (s/#undef/#define) NET_PROTO_IPV6.

IPMI

Configuring the OOBM with IPv6 seems to be vendor specific (see), would be good to have a table here mapping which vendor, hardware model and firmware version does support it.


Neutron

Neutron seems to be fine with IPv6, apparently we only need to change Ironic to be able to specify the IP version when we pass the extra DHCP options to Neutron (link).

UPDATE: Added a patch to be able to specify the IP version when passing the extra DHCP options to Neutron in Ironic (see)


TFTP

A quick look at xinetd and it seems that it supports IPv6 already (link)

Random thoughts

IPv6 was created to solve a address space problem, it's very unlikely that we will ever hit that in a provision network so I would still recommend people wanting to run IPv6 to first consider having a dual-stack IPv6-IPv4 networking where IPv4 is used for the provisioning network.