What Global address will be assigned depends on the OS of the host. By default, Windows and some Linux versions will use Privacy Extensions and random address generation, and that makes the assigned address unpredictable, and it will periodically change. An original SLAAC implementation would use the MAC address. Assuming a 48-bit MAC address, such as used by ethernet, the MAC address will be split in half, fffe
will be inserted in the middle to extend it to 64 bits, and the U/L
bit will be flipped. This method made some people nervous because a particular MAC address could be tracked on different networks. Privacy Extensions and random address generation were introduce. On some OSes, even the Link-local addresses use this.
A prefix does not need to be 64-bits, but it will break features of IPv6, including SLAAC, if it is not 64-bits. The two addresses in your example RA are 64-bit prefixes, so that is what the interfaces will use for auto-address assignment.
The fc00::/7
address range is the ULA (Unique Local Address) range, of which the first half (fc00::/8
) is reserved for a global-entity-to-be-named-later to make assignments. The second half (fd00::/8
) can be used for locally assigned addresses, but they mut use a pseudo-random number generator for the 40-bit Global ID. See RFC 4193, Unique Local IPv6 Unicast Addresses, Section 3.2.1. Locally Assigned Global IDs:
3.2.1. Locally Assigned Global IDs
Locally assigned Global IDs MUST be generated with a pseudo-random
algorithm consistent with [RANDOM]. Section 3.2.2 describes a
suggested algorithm. It is important that all sites generating Global
IDs use a functionally similar algorithm to ensure there is a high
probability of uniqueness.
The use of a pseudo-random algorithm to generate Global IDs in the
locally assigned prefix gives an assurance that any network numbered
using such a prefix is highly unlikely to have that address space
clash with any other network that has another locally assigned prefix
allocated to it. This is a particularly useful property when
considering a number of scenarios including networks that merge,
overlapping VPN address space, or hosts mobile between such networks.