Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
Security Level: Public (Anyone can view this level - this is the default.)
-
CloudStack Basic Networking
Description
In Basic Networking Instances will obtain their IPv6 address using SLAAC (Stateless Autoconfiguration) as described in the Wiki: https://cwiki.apache.org/confluence/display/CLOUDSTACK/IPv6+in+Basic+Networking
When a ip6cidr is configured and is a /64 we can calculate the IPv6 address an Instance will obtain.
There is no need to store a IPv6 address in the database with the /64 subnet (ip6cidr) and the MAC address we can calculate the address using EUI-64:
"A 64-bit interface identifier is most commonly derived from its 48-bit MAC address. A MAC address 00:0C:29:0C:47:D5 is turned into a 64-bit EUI-64 by inserting FF:FE in the middle: 00:0C:29:FF:FE:0C:47:D5. When this EUI-64 is used to form an IPv6 address it is modified:[1] the meaning of the Universal/Local bit (the 7th most significant bit of the EUI-64, starting from 1) is inverted, so that a 1 now means Universal. To create an IPv6 address with the network prefix 2001:db8:1:2::/64 it yields the address 2001:db8:1:2:020c:29ff:fe0c:47d5 (with the underlined U/L (=Universal/Local) bit inverted to a 1, because the MAC address is universally unique)."
The API should return this address in the ip6address field for a NIC in Basic Networking.
End-Users can use this, but it can also be used internally by Security Grouping to program rules.
Attachments
Issue Links
- is related to
-
CLOUDSTACK-674 IPV6 support for instances in Basic Zone
- Resolved
- relates to
-
CLOUDSTACK-674 IPV6 support for instances in Basic Zone
- Resolved
- links to