IPv6Network - Address Selection Choice is good, but it comes with problems of its own, as anyone who has ever ordered a cup of coffee at Starbucks can attest to. The explicit support for multiple addresses in IPv6 requires the system or applications to choose which address to use for a given communication session.
The coexistence of IPv4 and IPv6 in the same host makes this issue even more pressing. RFC 3484 provides guidelines in this area. It lists no fewer than 10 rules for choosing a destination address and eight rules for selecting a source address. Most of these rules are fairly obvious, such as preferring a non-deprecated address over a deprecated one and not using a link-local source address to communicate with a destination that has a global address. It gets more interesting with the “policy table.” On systems that support this mechanism, such as Windows XP and FreeBSD 5.4, the administrator can instruct the system to prefer certain address ranges over others.