SixXS::Sunset 2017-06-06

Source Address Selection and Unique Local Addresses
[gb] Shadow Hawkins on Saturday, 18 September 2010 02:57:22
I'm not even using any SixXs tunnel/subnet yet (just got an account), though I've been using 6to4 and Unique Local Addresses (fd00::/8) for a few weeks. My question is partly conceptual. If a host had an interface with three IPv6 addresses: - fe80 link local - fd00::/8 Unique Local ( http://en.wikipedia.org/wiki/Unique_local_address ) (RFC 4193) - 2002::/16 6to4 ( http://en.wikipedia.org/wiki/6to4 ) ... and that host was asked to connect to http://ipv6.google.com , shouldn't the host necessarily choose the 6to4 address as the source address for the connection? I thought the answer was a clear "yes", because my understanding of fd00::/8 is that they are not globally routable. However, Windows XP and Windows Vista are both choosing fd00 instead of 2002 as the source address. Unsurprisingly, the connection fails. Is this a Windows bug? If not, maybe my radvd config is to blame. Perhaps this short prefix advertisement config block: prefix fd28:6A42:E044:87CC::/64 {AdvOnLink on; AdvAutonomous on; AdvRouterAddr off; }; Above, fd00::/8 is implemented through a fd...::/64 prefix. Does it look right and proper to you? Windows uses the /64 prefix and then generates its somewhat random "temporary" lower 64 bits, which seems correct. I got around the problem of fd00::/8 being chosen as the source address when connecting to ipv6.google.com by modifying the "prefix policy" tables, making the "label" of the 2002::/16 prefix to be the same as the "label" of the ::/0 prefix, both equal to 1, in the lines of what's suggested on this wiki: http://oldwiki.openwrt.org/IPv6_howto.html Once I did that, maybe 2002 was selected on the basis of longest matching prefix... I don't know. It felt like a hacked/broken solution to a problem I didn't completely understand. I also found this nice article that goes into details of the Windows IPv6 Source Address Selection: http://technet.microsoft.com/en-us/library/bb877985.aspx In the rather complex algorithm described in the article, I would have thought that the selection of fd00::/8 as a source address should have been prevented in step 2, "Prefer the source address that has a scope appropriate for the destination address" (source is Unique Local, destination is public). The 2002::/16 should then have been preferred over the fd00::/8. Other than Windows, a Mac OS X 10.6.4 host in the same network properly selects 2002::/16 instead of fd00::/8 as the source address. It is also auto-configured based on the same radvd advertisement. But this alone doesn't prove that Windows is broken. Have you ever tried adding fd00::/8 to your network? Does it work with Windows? Should I file a bug with Microsoft?... Cheers, Paulo Castro
Source Address Selection and Unique Local Addresses
[us] Shadow Hawkins on Monday, 07 February 2011 16:35:16
Paulo, have you made any progress with this? I too have radvd configured to send out ULAs and my Win 7 64 now has the same issue that you are describing. Thanks, Jason
Source Address Selection and Unique Local Addresses
[us] Shadow Hawkins on Monday, 07 February 2011 16:40:28
Ok, I fixed my issue (operator error) I forgot to start up aiccu on my gateway after I restarted network services on it...now everything seems fine.

Please note Posting is only allowed when you are logged in.

Static Sunset Edition of SixXS
©2001-2017 SixXS - IPv6 Deployment & Tunnel Broker