10
This feature is available in MAAS versions 1.7 and above, starting with
11
lp:maas revision 2992. If you're writing a client application that makes use
12
of this feature, you can query the region-server API for the
13
``ipv6-deployment-ubuntu`` :ref:`capability<cap-ipv6-deployment-ubuntu>`.
15
MAAS has limited IPv6 support for networking nodes. It works much like IPv4
16
support, but with a number of limitations:
18
* Nodes still boot, register, and install using the IPv4 network.
19
* IPv6 addresses are only configured when using the default Ubuntu installer.
20
* Most BMCs can only be controlled (e.g. to power nodes on/off) using IPv4.
21
* MAAS still uses IPv4 for its internal operation, installing nodes, etc.
22
* For now, MAAS only supports IPv6 on networks where it also manages IPv4 DHCP.
23
* A network interface on a node can only be on one IPv6 subnet.
24
* A network interface on a cluster controller can manage only one IPv6 subnet.
26
The web user interface and REST API can be accessed in the same way on both
27
IPv4 and IPv6. To use an IPv6 address as the hostname in a URL, in your
28
browser or elsewhere, surround it with square brackets. For example, on the
29
local machine (``::1``, the IPv6 equivalent of ``localhost``) you might
34
If your MAAS server has a DNS hostname that resolves to both IPv4 and IPv6
35
addresses, your browser may already be accessing the UI through IPv6 without
42
You enable IPv6 networking in the same way that you enable IPv4 networking:
43
configure a separate cluster interface for your IPv6 subnet, in addition to the
44
one you need for your IPv4 subnet. The IPv6 cluster interface must define a
45
static address range. Provided that you already have a functioning IPv6
46
network, that's all there is to it. The following sections will go into more
47
detail about what is supported, what is needed, and what to do if you don't yet
48
have a functioning IPv6 network.
50
An IPv6 cluster interface can use the same network interface on the cluster
51
controller as an existing IPv4 network interface. It just defines a different
52
subnet, with IPv6 addressing. A node that's connected to the IPv4 subnet will
53
also be connected to the IPv6 subnet on the same network segment.
56
Configuring your IPv6 subnet
57
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
59
When you configure your IPv6 cluster interface, be sure to define a static IP
60
address range. Deployed nodes on the subnet will get static addresses in this
63
IPv6 networks are normally 64 bits wide, so you can be generous with the
64
ranges' sizes. It also means that you can leave the netmask field blank.
66
(There are no broadcast addresses in IPv6, so leave the broadcast address field
69
You may want MAAS to manage DHCP and DNS, but it's not required. In fact nodes
70
do not need a DHCP server at all for IPv6; MAAS configures static IPv6
71
addresses on the node's network interfaces while deploying it. A DHCPv6 server
72
can provide addresses for containers or virtual machines running on the nodes,
73
as well as devices on the network that are not managed by MAAS, but it is not
74
needed for the nodes themselves. MAAS will not be aware of any addresses
75
issued by DHCP, and does not guarantee that they will stay unchanged.
83
In IPv6, clients do not discover routes through DHCP. Routers make themselves
84
known on their networks by sending out *route advertisements*. These *RAs*
85
contain other configuration as well: whether clients should statelessly
86
configure their own unique IP addresses based on their MAC addresses; whether
87
they should request stateless configuration from a DHCP server; and finally,
88
whether they should request a stateful IP address from a DHCP server. Since a
89
network interface can have any number of IPv6 addresses even on a single
90
subnet, several of these address assignment mechanisms can be combined.
92
However, when MAAS configures IPv6 networking on a node, it does not rely on
93
RAs. it statically configures your nodes' default IPv6 route to use the router
94
that is configured on the cluster interface, so that the nodes will know their
95
default gateway. They do not need DHCP and will not autoconfigure global
98
However, if you are planning to operate DHCPv6 clients as well, e.g. on
99
machines not managed by MAAS or on virtual machines hosted by MAAS nodes, you
100
may still want to have RAs configured to make those clients obtain
101
configuration over DHCP.
103
If you need RAs but your gateway does not send them, install and configure
104
``radvd`` somewhere on the network to advertise its route.
107
Other installers and operating systems
108
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
110
Static IPv6 addresses are currently only configured on Ubuntu, when installed
111
using the "fast" installer. Other operating systems, or Ubuntu with the
112
classic Debian installer, will not have their IPv6 addresses configured.
113
The same applies when a user manually installs an operating system on a node,
114
or overwrites its networking configuration: the node will no longer have its
115
static IPv6 address configured, even if MAAS has allocated it to the node.
117
However, as long as the address remains allocated to the node, you may still
118
configure its operating system to use that address. The node can then use that
119
address as if it had been configured by MAAS.
125
For advanced users, there is an experimental capability to deploy nodes with
126
pure IPv6, with IPv4 networking disabled. To enable this on a node, check the
127
"Disable IPv4 when deployed" box on the node's Edit page. The process of
128
managing and deploying the node will still largely work through IPv4, but once
129
deployed, the node will have IPv6 networking only.
131
In practice nodes may not be functional without IPv4 networking. A few things
132
are known to be needed in any case:
135
Configuring the MAAS URL
136
^^^^^^^^^^^^^^^^^^^^^^^^
138
The *maas-cluster-controller* package has a configuration item for the URL
139
where nodes and cluster controllers can reach the MAAS region API.
141
By default, this URL is set based on the region controller's IPv4 address. To
142
make it work for nodes that won't have IP4, you must set the MAAS URL to use
143
a hostname instead of an IP address. The hostname must resolve to both IPv4
144
and IPv6 addresses, and both on the cluster controller and on the nodes.
146
To change this setting, run::
148
dpkg-reconfigure maas-cluster-controller
150
It will prompt you for the URL, with its current setting as the initial value.