Re: Has anyone truly made the switch?
I suspect that the average CIO confronted with the spectre of finding money to replace/reconfigure every router and switch in their network, and reconfigure every computer in the building(s), and probably do something cute and costly with some expensive custom gear -- all without shutting down operations for more than a holiday weekend
If it were possible to *switch* from IPv4 to IPv6, this would be perfectly feasible. You'd run dual-stack for a week or a month or however long you needed, and be left with a pure IPv6 network at the end, job done. Dual stack, in fact, would be an excellent tool for this sort of transition.
But that's not feasible, because you'd disconnect yourself from the IPv4 Internet. You still need *some* IPv4: including for inbound connections such as VPN (I've never stayed in a hotel which provides IPv6)
So you have three choices:
1. Run IPv4 and IPv6 dual stack across your whole network indefinitely. This gives you double the number of firewall rules, and hard-to-debug problems when a particular device becomes reachable over v4 but not v6, or vice versa. Increased on-going expense and pain, for no business benefit.
2. Migrate to IPv6 and use NAT64/DNS64 - in other words, IPv6 replaces your RFC1918 private IPv4 addresses. Some places are experimenting with this approach, even Microsoft themselves. But you will still have islands of dual-stack required, and lots of pain with legacy devices, in particular legacy applications which can only listen on an IPv4 address. You end up doing nasty things like NAT464. Again, little obvious business benefit to demonstrate.
3. Stay on IPv4 just as you are today, which works as it always did, and avoid all the pain.
Guess which option almost everyone chooses.
What I'd like to see is that at least for "green field" networks, they could be built single-stack IPv6. This doesn't work today unless you're happy to build your own NAT64 infrastructure (*). And even if you do, your NAT64 still needs an IPv4 address from your ISP, so you may as well just do NAT44 instead.
(*) A few ISPs today do provide NAT64/DNS64 for those who want to try it (e.g. AAISP).