What I really don't understand is IPv6 has been around... decades now... why the heck havent we started forcing it more and more?
Early bad experiences made a lot of people reluctant to try again.
There's a lot of edge cases to bite people still.
That said, something like 50% of users have working v6 now, which helps to file down the edges. Growth of v6 in the last 10 years has been much more significant than the previous 10 years. I suspect the next 10 years will be pretty significant, too.
I don't think many organizations are in a position to force adoption though.
You have mandates from say US government for government services and vendors and similar in some other countries. Some countries can force it through strong regulations on equipment sales. And then there's Jio (and maybe other ISPs) that have significant market power in some locales and a significant lack of v4 resources and can strongly encourage vendors and partners to support v6 for better service to users on their network.
IPv6 brings more address space but also a whole bunch of other stuff, it is much more complex and changes basically everything to how you manage a network. The fact that it's not been widely adopted after 30 years indicates that people generally think the tradeoff is not worth it.
We're 10 years out from the Epochalypse as well. Past a certain point you need a governing body to intervene to force the issue in advance of problems with systems, and we've got a dearth of functioning governments these days.
Second system effect. It's way more complicated
Replicating even a simple ipv4 lan with mostly stable local addresses and some isp uplink is pretty complex, even assuming all the devices involved support ipv6, which they wont
It's much easier to run a dual stack with v4 for ease of use on the lan and v6 as an additional address that can change whenever and is only used to reach the wan
But the main reason you'd care would be if you can't get a public ipv4 address to NAT to. And if you can't get that, some of the internet breaks anyway.
What I really don't understand is why IPv6 was made so human unfriendly, why not just use 6 three digit blocks? Surely we are not better of now with two parallel IP versions.
Attempts to force it get routed around.
From my readings and limited experience, it's two things.
First, IPv6 in the 90s and 00s is different from IPv6 today. Various extensions and standards have been added that make IPv6 administration easier than it was in the early days. I want to say RDNSS is one of them. Background: one of v6's early selling points was SLAAC, where DHCP could be disposed of and endpoints would auto-configure their own IPs in accordance with the network announced by a router. Problem is, without DHCP, there was no way to get DNS, and DHCPv6 wasn't widely deployed/it was discouraged... so how does one get a DNS server automatically? RDNSS came around to announce DNS servers from the router directly.
TLDR: Early IPv6 sucked more than today.
Second, it's simply a chicken-and-egg problem, particularly at the consumer network level. User-friendly IPv6 router configurations are still rare for home routers, and ISPs have simply dragged their feet. At this point, if we're going to have government mandating all manner of things for consumer products, we should be mandating IPv6 support on home routers and that ISPs delegate at least a /60 to each customer.
You mustn't be on HN very often. People constantly complain about IPv6 being less secure because it doesn't have NAT. And that's part of the reason. Fear and misinformation keeps demand low. The same people don't drive IPv6 implementation where they work, so their fear impacts more than 1 person.
A large chunk of IT people don't understand it. So they don't demand it from their vendors. The vendors see the lack of demand so they spend fewer resources on it. When someone wants to implement IPv6, they see the limited vendor support and decide against it.
The last three companies I've worked at have all been IPv4 only. I set up IPv6 in our lab, but neither the SCADA software nor the PLCs we use support it at all, and none of my coworkers can troubleshoot it if problems pop up.
I've got a buddy that's a technical manager at an ISP and he'll straight up tell you they don't do IPv6 because he and his people don't know it.