mirror of https://github.com/apache/cloudstack.git
IPv6 support doc
This commit is contained in:
parent
89c96d805f
commit
85b69ba99c
|
|
@ -34,13 +34,137 @@
|
|||
<row>
|
||||
<entry>
|
||||
<para>createNetworkOffering</para>
|
||||
</entry>
|
||||
<entry>
|
||||
<para>The following request parameters have been added:</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>isPersistent</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>startipv6</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>endipv6</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6gateway</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6cidr</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>
|
||||
<para>listNetworkOfferings</para>
|
||||
<para>listNetworks</para>
|
||||
</entry>
|
||||
<entry>
|
||||
<para>The following request parameters is added: isPersistent.</para>
|
||||
<para>This parameter determines if the network or network offering created or listed by
|
||||
using this offering are persistent or not.</para>
|
||||
<para>The following request parameters has been added: isPersistent</para>
|
||||
<para>This parameter determines if the network or network offering listed by using this
|
||||
offering are persistent or not.</para>
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>
|
||||
<para>createVlanIpRange</para>
|
||||
</entry>
|
||||
<entry>
|
||||
<para>The following request parameters have been added:</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>startipv6</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>endipv6</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6gateway</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6cidr</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>
|
||||
<para>deployVirtualMachine</para>
|
||||
</entry>
|
||||
<entry>
|
||||
<para>The following parameter has been added: ip6Address.</para>
|
||||
<para>The following parameter is updated to accept the IPv6 address:
|
||||
iptonetworklist.</para>
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>
|
||||
<para>CreateZoneCmd</para>
|
||||
</entry>
|
||||
<entry>
|
||||
<para>The following parameter are added: ip6dns1, ip6dns2.</para>
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>
|
||||
<para>listRouters</para>
|
||||
<para>listVirtualMachines</para>
|
||||
</entry>
|
||||
<entry>
|
||||
<para>For nic responses, the following fields has been added.</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>ip6address</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6gateway</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6cidr</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>
|
||||
<para>listVlanIpRanges</para>
|
||||
</entry>
|
||||
<entry>
|
||||
<para>For nic responses, the following fields has been added.</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>startipv6</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>endipv6</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6gateway</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6cidr</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>
|
||||
<para>listRouters</para>
|
||||
<para>listZones</para>
|
||||
</entry>
|
||||
<entry>
|
||||
<para>For DomainRouter and DataCenter response, the following fields have been
|
||||
added.</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>ip6dns1</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>ip6dns2</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,191 @@
|
|||
<?xml version='1.0' encoding='utf-8' ?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
|
||||
%BOOK_ENTITIES;
|
||||
]>
|
||||
|
||||
<!-- Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
<section id="ipv6-support">
|
||||
<title>IPv6 Support in &PRODUCT;</title>
|
||||
<para>&PRODUCT;supports Internet Protocol version 6 (IPv6), the recent version of the Internet
|
||||
Protocol (IP) that defines routing the network traffic. IPv6 uses a 128-bit address that
|
||||
exponentially expands the current address space that is available to the users. IPv6 addresses
|
||||
consist of eight groups of four hexadecimal digits separated by colons, for example,
|
||||
5001:0dt8:83a3:1012:1000:8s2e:0870:7454. &PRODUCT; supports IPv6 for public IPs in shared
|
||||
networks. With IPv6 support, VMs in shared networks can obtain both IPv4 and IPv6 addresses from
|
||||
the DHCP server. You can deploy VMs either in a IPv6 or IPv4 network, or in a dual network
|
||||
environment. If IPv6 network is used, the VM generates a link-local IPv6 address by itself, and
|
||||
receives a stateful IPv6 address from the DHCPv6 server.</para>
|
||||
<para>IPv6 is supported only on KVM and XenServer hypervisors. The IPv6 support is only an
|
||||
experimental feature.</para>
|
||||
<para>Here's the sequence of events when IPv6 is used: </para>
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>The administrator creates an IPv6 shared network in an advanced zone.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The user deploys a VM in an IPv6 shared network.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The user VM generates an IPv6 link local address by itself, and gets an IPv6 global or
|
||||
site local address through DHCPv6.</para>
|
||||
<para>For information on API changes, see <xref linkend="changed-apicommands-4.1"/>.</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<section id="guidelines-ipv6">
|
||||
<title>Prerequisites and Guidelines</title>
|
||||
<para>Consider the following:</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>CIDR size must be 64 for IPv6 networks.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The DHCP client of the guest VMs should support generating DUID based on Link-layer
|
||||
Address (DUID- LL). DUID-LL derives from the MAC address of guest VMs, and therefore the
|
||||
user VM can be identified by using DUID. See <ulink
|
||||
url="http://tools.ietf.org/html/rfc3315">Dynamic Host Configuration Protocol for IPv6
|
||||
</ulink>for more information.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The gateway of the guest network generates Router Advisement and Response messages to
|
||||
Router Solicitation. The M (Managed Address Configuration) flag of Router Advisement
|
||||
should enable stateful IP address configuration. Set the M flag to where the end nodes
|
||||
receive their IPv6 addresses from the DHCPv6 server as opposed to the router or
|
||||
switch.</para>
|
||||
<note>
|
||||
<para>The M flag is the 1-bit Managed Address Configuration flag for Router Advisement.
|
||||
When set, Dynamic Host Configuration Protocol (DHCPv6) is available for address
|
||||
configuration in addition to any IPs set by using stateless address
|
||||
auto-configuration.</para>
|
||||
</note>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Use the System VM template exclusively designed to support IPv6. Download the System
|
||||
VM template from <ulink url="http://nfs1.lab.vmops.com/templates/routing/debian/ipv6/"
|
||||
>http://nfs1.lab.vmops.com/templates/routing/debian/ipv6/</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The concept of Default Network applies to IPv6 networks. However, unlike IPv4
|
||||
&PRODUCT; does not control the routing information of IPv6 in shared network; the choice
|
||||
of Default Network will not affect the routing in the user VM.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>In a multiple shared network, the default route is set by the rack router, rather than
|
||||
the DHCP server, which is out of &PRODUCT; control. Therefore, in order for the user VM to
|
||||
get only the default route from the default NIC, modify the configuration of the user VM,
|
||||
and set non-default NIC's <code>accept_ra</code> to 0 explicitly. The
|
||||
<code>accept_ra</code> parameter accepts Router Advertisements and auto-configure
|
||||
<code>/proc/sys/net/ipv6/conf/interface</code> with received data.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section id="limitsipv6">
|
||||
<title>Limitations of IPv6 in &PRODUCT; </title>
|
||||
<para>The following are not yet supported:</para>
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>Security groups</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Userdata and metadata</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Passwords</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>The administrator cannot specify the IPv6 address of a VM</para>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
</section>
|
||||
<section id="network-conf-dhcpv6">
|
||||
<title>Network Configuration for DHCPv6</title>
|
||||
<para>Use DUID-LL to get IPv6 address from DHCP server</para>
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>Set up dhclient by using DUID-LL.</para>
|
||||
<para>Perform the following for DHCP Client 4.2 and above:</para>
|
||||
<orderedlist numeration="loweralpha">
|
||||
<listitem>
|
||||
<para>Run the following command on the selected VM to get the dhcpv6 offer from
|
||||
VR:</para>
|
||||
<programlisting>dhclient -6 -D LL <dev></programlisting>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<para>Perform the following for DHCP Client 4.1:</para>
|
||||
<orderedlist numeration="loweralpha">
|
||||
<listitem>
|
||||
<para>Open the following to the dhclient configuration file:</para>
|
||||
<programlisting>vi /etc/dhcp/dhclient.conf</programlisting>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Add the following to the dhclient configuration file:</para>
|
||||
<programlisting>send dhcp6.client-id = concat(00:03:00, hardware);</programlisting>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Get IPv6 address from DHCP server as part of the system or network restart.</para>
|
||||
<para>Based on the operating systems, perform the following:</para>
|
||||
<para>On CentOS 6.2:</para>
|
||||
<orderedlist numeration="loweralpha">
|
||||
<listitem>
|
||||
<para>Open the Ethernet interface configuration file:</para>
|
||||
<programlisting>vi /etc/sysconfig/network-scripts/ifcfg-eth0</programlisting>
|
||||
<para>The <code>ifcfg-eth0</code> file controls the first NIC in a system.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Make the necessary configuration changes, as given below:</para>
|
||||
<programlisting>DEVICE=eth0
|
||||
HWADDR=06:A0:F0:00:00:38
|
||||
NM_CONTROLLED=no
|
||||
ONBOOT=yes
|
||||
BOOTPROTO=dhcp6
|
||||
TYPE=Ethernet
|
||||
USERCTL=no
|
||||
PEERDNS=yes
|
||||
IPV6INIT=yes
|
||||
DHCPV6C=yes</programlisting>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Open the following:</para>
|
||||
<programlisting>vi /etc/sysconfig/network</programlisting>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Make the necessary configuration changes, as given below:</para>
|
||||
<programlisting>NETWORKING=yes
|
||||
HOSTNAME=centos62mgmt.lab.vmops.com
|
||||
NETWORKING_IPV6=yes
|
||||
IPV6_AUTOCONF=no</programlisting>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
<para>On Ubuntu 12.10</para>
|
||||
<orderedlist numeration="loweralpha">
|
||||
<listitem>
|
||||
<para>Open the following:</para>
|
||||
<programlisting>etc/network/interfaces:</programlisting>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Make the necessary configuration changes, as given below:</para>
|
||||
<programlisting>iface eth0 inet6 dhcp
|
||||
autoconf 0
|
||||
accept_ra 1</programlisting>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
</section>
|
||||
</section>
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version='1.0' encoding='utf-8' ?>
|
||||
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
|
||||
%BOOK_ENTITIES;
|
||||
]>
|
||||
|
|
@ -25,6 +25,7 @@
|
|||
<section id="whats-new-in-api-4.1">
|
||||
<title>What's New in the API for 4.1</title>
|
||||
<xi:include href="add-remove-nic.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
<xi:include href="ipv6-support.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
<xi:include href="vmx-settings-dev.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
<xi:include href="reset-ssh-key-dev.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
<xi:include href="changed-apicommands-4.1.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
|
||||
|
|
|
|||
Loading…
Reference in New Issue