It hasn't worked out how we thought, sure. But "Failed" is really strong for something that 1/3 of the global Internet can (and does) use every day.
There are more people on IPv6 now, than there are users in the entire US Internet market.
https://stats.labs.apnic.net/ipv6/CN (replace last 2 chars with any ISO3166 code, or XA for the world)
IPv6 has quirks which are a bummer. If we were able to fix the MTU problem by getting people to move to Jumbograms a lot of these go away, because they stem from fragmentation. So it's true, the design of IPv6 end only fragmentation distinct from V4 on the path fragmentation, that was a failure in design. But if you avoid fragmentation (and QUIC does for instance) then the MTU problem isn't a big deal in the end. More packets is faster clock pacing!
I wish people were a bit more pragmatic and a bit less dogmatic about things. Fix MTU. fix links. Fix what you can. Deploy IPv6 because it works. And, it reduces pressure on your CGN.
i tend to regrad ipv6 as the "smartphones + india internet"
Above the IP layer, TCP/UDP rules should be underlying AFI agnostic. But I can believe the firewall DSL don't make that easier.
I thought of scheme where could put the original IPv4 address in option header on every NAT transition to make a variable length address. But that would require changing every router (and lots remove options when NAT), every program, and every protocol. All the stuff that needed to happen with IPv6, with the downside of keeping IPv4 allocations and NAT.
It also mentions a lot of problems with IPv6 that have since been fixed. There is a valid complaint that IPv6 changed too many things so it took a long time to get replacements working.
But you're comparing apples and oranges. What was the size of the established, installed base of network hosts using circuit-switched networks when packet switching started to compete? Did SRI International and other DARPA research institutions run IMPs that utilized circuit-switching to route network traffic? No, they started with packet switching. So essentially, as the Internet caught on, its style of packet switching "won" over landline telephones because it was a question of capability and supported features.
IPv4 and IPv6 are the same protocol, essentially; you swap one out under the hood, and the upper and lower OSI layers don't even notice that anything's changed. Packet switching and circuit switching are two distinct techniques that are opposed to one another: if you wanted to swap one for the other, you'd be rebuilding your network from the ground up.
So, apples and oranges: IPv6 is, by design, a replacement for IPv4, and djb is discussing the seemingly intractable issues faced by those who attempt to cleanly migrate.
I'd like IPv4 to die, but I've also worked at places where it would have a significant (non-internet) international impact if you suddenly shot it in the back of the head.
Yes, there are still people stuck with v4 networks and 2.6-era codebases. These are legacy cases that are increasingly buried deep in the long tail of interoperability.
What a huge mistake.
NAT is obviously a huge crutch but everyone uses it because it’s a dead-simple firewall and makes for dead-simple internal networks. There are NAT-inspired IPv6 analogues but they are not the same.
If NAT with IPv6 was a thing, ISPs could have started shipping routers to customers (as they already do) with IPv6 turned on and we would have already been most of the way to IPv6.
But no, they felt NAT was too hacky and did away with it on a matter of principle.
The issue is that migrating to ipv6 meant changing equipments on the backbone and dealing with the change and no operator wanted to bear the cost. It’s getting better now that there is a dearth of ipv4 and people see an immediate benefit.
A basic firewall without NAT.