Merge lp:~jtv/maas/doc-ipv6-update into lp:~maas-committers/maas/trunk

Proposed by Jeroen T. Vermeulen
Status: Merged
Approved by: Jeroen T. Vermeulen
Approved revision: no longer in the source branch.
Merged at revision: 3199
Proposed branch: lp:~jtv/maas/doc-ipv6-update
Merge into: lp:~maas-committers/maas/trunk
Diff against target: 100 lines (+57/-11)
1 file modified
docs/ipv6.rst (+57/-11)
To merge this branch: bzr merge lp:~jtv/maas/doc-ipv6-update
Reviewer Review Type Date Requested Status
Christian Reis (community) Approve
Raphaël Badin (community) Approve
Graham Binns (community) Approve
Review via email: mp+237396@code.launchpad.net

Commit message

Update documentation for IPv6 support. Add section about disabling IPv4.

To post a comment you must log in.
Revision history for this message
Graham Binns (gmb) :
review: Approve
Revision history for this message
Raphaël Badin (rvb) :
review: Approve
Revision history for this message
Christian Reis (kiko) wrote :

This is approved to land, but I do have a comment below:

review: Approve
Revision history for this message
Jeroen T. Vermeulen (jtv) :

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'docs/ipv6.rst'
2--- docs/ipv6.rst 2014-09-18 12:22:21 +0000
3+++ docs/ipv6.rst 2014-10-07 10:48:29 +0000
4@@ -40,10 +40,11 @@
5 -------------
6
7 You enable IPv6 networking in the same way that you enable IPv4 networking:
8-configure a separate cluster interface for your IPv6 subnet. Provided that you
9-already have a functioning IPv6 network, that's all there is to it. The
10-following sections will go into more detail about what is supported, what is
11-needed, and what to do if you don't yet have a functioning IPv6 network.
12+configure a separate cluster interface for your IPv6 subnet, in addition to the
13+one you need for your IPv4 subnet. Provided that you already have a
14+functioning IPv6 network, that's all there is to it. The following sections
15+will go into more detail about what is supported, what is needed, and what to
16+do if you don't yet have a functioning IPv6 network.
17
18 An IPv6 cluster interface can use the same network interface on the cluster
19 controller as an existing IPv4 network interface. It just defines a different
20@@ -73,11 +74,13 @@
21 issued by DHCP, and does not guarantee that they will stay unchanged.
22
23
24+.. _ipv6-routing:
25+
26 Routing
27 ^^^^^^^
28
29 In IPv6, clients do not discover routes through DHCP. Routers make themselves
30-known on their networks by broadcasting *route advertisements*. These *RAs*
31+known on their networks by sending out *route advertisements*. These *RAs*
32 contain other configuration as well: whether clients should statelessly
33 configure their own unique IP addresses based on their MAC addresses; whether
34 they should request stateless configuration from a DHCP server; and finally,
35@@ -85,12 +88,13 @@
36 network interface can have any number of IPv6 addresses even on a single
37 subnet, several of these address assignment mechanisms can be combined.
38
39-MAAS configures your nodes' default IPv6 route to use the router configured on
40-the cluster interface, if there is one, so that the nodes will know their
41-default gateway. If that is not what you want, or if you are planning to
42-operate DHCPv6 clients that need routing information, you may still want route
43-advertisements configured to make nodes obtain configuration over DHCP. If
44-your router does not provide RAs, another option is to install and configure
45+MAAS statically configures your nodes' default IPv6 route to use the router
46+configured on the cluster interface, if there is one, so that the nodes will
47+know their default gateway. If you are planning to operate DHCPv6 clients that
48+need routing information, you may still want route advertisements configured to
49+make those clients obtain configuration over DHCP.
50+
51+If you want RAs but your gateway does not send them, install and configure
52 ``radvd`` somewhere on the network to advertise its route.
53
54
55@@ -107,3 +111,45 @@
56 However, as long as the address remains allocated to the node, you may still
57 configure its operating system to use that address. The node can then use that
58 address as if it had been configured by MAAS.
59+
60+
61+Disabling IPv4
62+--------------
63+
64+For advanced users, there is an experimental capability to deploy nodes with
65+pure IPv6, with IPv4 networking disabled. To enable this on a node, check the
66+"Disable IPv4 on deployment" box on the node's Edit page. The process of
67+managing and deploying the node will still largely work through IPv4, but once
68+deployed, the node will have IPv6 networking only.
69+
70+In practice nodes may not be functional without IPv4 networking. A few things
71+are known to be needed in any case:
72+
73+
74+Configuring the MAAS URL
75+^^^^^^^^^^^^^^^^^^^^^^^^
76+
77+The *maas-cluster-controller* package has a configuration item for the URL
78+where nodes and cluster controllers can reach the MAAS region API.
79+
80+By default, this URL is set based on the region controller's IPv4 address. To
81+make it work for nodes that won't have IP4, you must set the MAAS URL to use
82+a hostname instead of an IP address. The hostname must resolve to both IPv4
83+and IPv6 addresses, and both on the cluster controller and on the nodes.
84+
85+To change this setting, run::
86+
87+ dpkg-reconfigure maas-cluster-controller
88+
89+It will prompt you for the URL, with its current setting as the initial value.
90+
91+
92+Route advertisements
93+^^^^^^^^^^^^^^^^^^^^
94+
95+When a deployed node boots, it runs cloud-init which retrieves configuration
96+from the MAAS region controller. In order for it to be able to do that over
97+IPv6, a network advertisement daemon needs to be active on the network.
98+
99+See :ref:`Routing <ipv6-routing>` above for more about route advertisements,
100+and how to provide them if your gateway doesn't do it for you.