The following operating systems use IPv6 privacy extensions by default:
All versions of Windows after Windows XP
All versions of Mac OS X from 10.7 onward
All versions of iOS since iOS 4.3
All versions of Android since 4.0 (ICS)
Some versions of Linux (and for others it can be easily configured)
Sure you could track such IPs by looking at routing paths/the subnet prefix but that's not different than IPv4. If you posit that a dynamic IPv4 is completely random you might be surprised, it's just drawn from a small pool that at some point has to be routed for packets to reach it, and even then it's not updated that frequently (usually on router reboot). Comparatively, privacy IPv6 addresses get rotated very frequently (can't recall but could very well be 15min)
Use short-lived IPv6 addresses then. IPv6 doesn't force everyone into one or the other. You can operate both short lived, anonymized and permanent IPv6 side-by-side in the same network.
Theoretically, in practice ISPs have been largely been handing out PDs and calling it a day (for consumers at least). This means you get many networks worth of v6 but they won't statically assign those many networks of v6 to you. That said they don't actively try to make them change and they aren't under pressure to use every last IP like IPv4 and for many carriers it's unlikely you'll ever have your v6 PD assignments change after a boot (ATT fiber is a good example). Of course if you do you're usually just shit out of luck as extremely few carriers provide the option to customers on v6 for whatever reasoning.