> Win7 requires me to kill ipv6, because there's no good way to tell the system to prefer ipv6.
If you have tunneled connectivity, thus non-native being announced on an Ethernet interface you will likely have to set in the registry:
SYSTEM\CurrentControlSet\services\Dnscache\Parameters\AddrConfigControl = 0 (DWORD)
That way AAAA lookups are always performed and also preferred. Though it still depends on the application if it actually uses getaddrinfo() at all and does not resort addresses itself, which some applications do and some others do not.
> Let me easily set priority of v4 vs. v6.
With Lion Apple has implemented a variant (quite unrelated to the IETF drafts) of Happy Eyeballs in their systems. As such, depending on previous connection history, latency and other factors you might get IPv4 or IPv6 connections at random. And nope, there is no knob at all to turn off that behavior. Right back at you.
(oh and yes, I have a Mac too, which is why it kinda annoys me, but if you just slow down IPv4 a bit on the outbound router you always get IPv6 as the Mac thinks that IPv4 is "slower" than IPv6... still a knob would be useful, yes, bug reported a long time ago)