Why is IPv6 so complicated?
signa11
88 points
192 comments
April 18, 2026
Related Discussions
Found 5 related stories in 55.2ms across 4,930 title embeddings via pgvector HNSW
- IPv6 is the only way forward quaintdev · 48 pts · April 07, 2026 · 59% similar
- IPv6 address, as a sentence you can remember LorenDB · 55 pts · April 01, 2026 · 55% similar
- The Road Not Taken: A World Where IPv4 Evolved billpg · 71 pts · March 12, 2026 · 54% similar
- New patches allow building Linux IPv6-only Bender · 115 pts · April 01, 2026 · 52% similar
- IPv8 Proposal EvanZhouDev · 72 pts · April 16, 2026 · 46% similar
Discussion Highlights (20 comments)
leonidasrup
"The IPv6 mess" by DJB https://cr.yp.to/djbdns/ipv6mess.html
peyton
What I don’t understand is why coexistence was so important. TFA notes a lot of protocols were in use back then. Also what’s with all the problems? I’ve had RA packets leak across VLANs via firewall misconfigurations, some my fault and some not. I get that people designing internet protocols had a lot to think about, but why am I fighting stuff like this?
themafia
> The main reason for IPv6, and its only real reason for existence, was bigger addresses. Which also allowed for better route aggregation in the core BGP tables. Better node mobility support. Better multicast support. Genuine link local addresses. IPv4 had a lot of unfortunate edge cases. I think IPv6's greatest strength and also responsible for it's slow rollout was it's insistence on solving several of these problems at once, along with IPSec as the article notes, and hammering them into the hard requirements for the core stack.
ggm
India on around 80% in the apnic labs active measurement of end users. https://stats.labs.apnic.net/ipv6/in They report nearly a billion users, predominantly in mobile. So, "only" 750 to 800 million users. Think about that: 3x the population of the USA using it most of the time, in one economy. Here's the rankings: https://stats.labs.apnic.net/ipv6/XA?o=cINw30x1r1 This is a different measure to Google's. They measure different things,
muppetman
This annoys me, especially the last “It takes at least 25 years” rhetoric. It didn’t take 25 years for SSL. SSH. Gzip encoding on HTTP pages. QUIC. Web to replace NNTP. GPRS/HSDPA/3G/4G/5G They all rolled out just fine and were pretty backwards and forwards compatible with each other. The whole SLAAC/DHCPv6/RA thing is a total clusterfuck. I’m sure there’s many reasons that’s the case but my god. What does your ISP support? Good luck. We need IPv6 we really do. But it seems to this day the designers of it took everything good/easy/simple and workable about v4 and threw it out. And then are wondering why v6 uptake is so slow. If they’d designed something that was easy to understand, not too hard to implement quickly and easily, and solved a tangible problem it’d have taken off like a rocket ship. Instead they expected humans to parse hex, which no one does, and massive long numbers that aren’t easily memorable. Sure they threw that one clever :: hack in there but it hardly opened it up to easy accessibility. Of course hindsight is easy to moan but the “It’s great what’s the problem?” tone of this article annoys me.
kristopolous
if it was easier to use and less of a PITA, it wouldn't be taking decades.
rawoke083600
Honestly... Its more machine vocab than human level vocab. Ipv4 is jsut about able still to hold in your head, have a convo or more importantly you can: "Shout an ipv4 across the open office floor from your desk to your tech colleague" If you shout an ipv6 address in public, you jsut seem broken
smolder
It's not. I learned how IPv6 worked SO LONG AGO that I really can't understand remaining confusion.
bryden_cruz
I recently had to set up basic IP-based country detection in Nginx for a project. Parsing and handling IPv4 is trivial. The second I had to account for IPv6 string formats and update the Geo databases to match, the complexity just spiked for no good reason. It feels like we traded address exhaustion for parsing nightmares.
eviks
This is not very substantive, but rather procedural, like this example of an answer doesn't tell you much, but tells you the official paper IDs: > Actually, we tried that: the "IPv4-Compatible IPv6 address" format was defined in {{RFC3513}} but deprecated by {{RFC4291}} because it turned out to be of no practical use for coexistence or transition. Why/how did it turn out?
ExoticPearTree
My first IPv6 implementation was in 2010-2011 (memory a but fuzzy). Carriers supporting BGP over IPv6 were few, websites over IPv6 were also scarce. Fast forward 15 years snd the situation has improved quite dramatically. IPv6 has some quirks that make it harder to digest. - link local gateway address, makes it hard to understand why the subnet does not have a gateway from the ssme address space - privacy extensions: it is very hard to explain to people why they have 3-4 IPv6 addresses assigned to their computer - multicast instead of broadcast - way too many ways for autoconfiguration (SLAAC, DHCPv6) - no real tentative mapping to what people were used to. Every IPv6 presentation I did had to start with “forget everything you know about IPv4” In the enterprise space, if you mention globally reachable address space, the discussion tends to end pretty fast because “its not secure”. Those people love their NAT.
izacus
It is like it is because: * It was designed by people who didn't have the full picture and were missing representatives from hardware vendors, small businesses, home network admins and a bunch of other people that will be affected by design. * It was designed by people who didn't consider the cost of migration and the amount of work that would require (see previous point). * It was designed by people who lived in an ivory tower of "noone will run dual stack for a long time", "everyone will love to run two completely separate network designs". * It was designed on a premise that end-to-end, fully accessbile devices are something we actually want and won't cause privacy issues. I think it should be a study material on how standards and designs by commitee can go wrong if they're not headed by people with extensive experience across the industry with enough authority to push for good solutions. IPv6 tried to do too much (just like many software "let's refactor this legact code") and was done by people who didn't consider all perspectives and costs (again, like many less experienced architects trying to rewrite legacy software).
Paracompact
> Incidentally, "IPv8" proponents often ask why IPv6 didn't simply stick some extra bits on the front of IPv4 addresses, instead of inventing a whole new format. Actually, we tried that: the "IPv4-Compatible IPv6 address" format was defined in {{RFC3513}} but deprecated by {{RFC4291}} because it turned out to be of no practical use for coexistence or transition. Any tl;dr on why/how the simplest solution imaginable would have been "of no practical use for coexistence or transition"? Granted, I understand the other points make a strong enough case by themselves.
roenxi
> There was also unnecessary confusion caused by a rather political decision to make IPv6 require support for IP Security (IPsec), which was an immature technology at the time. This was a definite brake on IPv6 deployment until it was dropped after some years. I don't know anything about the IPv6 situation, but the way this paragraph just slots in so innocently foreshadows some long wordy Wayland retrospective document on why adoption was so slow where someone from deep in the community slips in 1 short "sure we tried to block screenshots and that might have caused some issues with adoption for some users" paragraph in the middle-end. The innocence of the admission is so mild and context-free that it somehow manages to make itself look guilty.
gucci-on-fleek
In my experience, the IPv6 protocol is much simpler than the IPv4 protocol. However, the IPv6 tooling and documentation is still worse than it is with IPv4, and dual-stack is inherently going to be more complicated than implementing any single protocol, so I do have some sympathy towards "IPv6 is hard". For example, the IPv6 packet structure [0] is much simpler than the IPv4 packet structure [1]; SLAAC [2] is much simpler than DHCPv4 [3]; IPv6 multicast [4] is much simpler than IGMP [5]; IPv6's lack of NAT simplifies peer-to-peer networking compared to IPv4; ULAs [6] prevent the annoying address conflicts you get with IPv4 [7]; etc. [0]: https://en.wikipedia.org/wiki/IPv6_packet#Fixed_header [1]: https://en.wikipedia.org/wiki/IPv4#Packet_structure [2]: https://en.wikipedia.org/wiki/IPv6_address#Stateless_address... [3]: https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Pro... [4]: https://en.wikipedia.org/wiki/IPv6#Multicasting [5]: https://en.wikipedia.org/wiki/Internet_Group_Management_Prot... [6]: https://en.wikipedia.org/wiki/Unique_local_address [7]: https://stackoverflow.com/a/52374482/30512871
peanut-walrus
I've always found the most complicated part of IPv6 to be address scopes and source address selection. The fact that one interface can have any number of addresses in different scopes and prefixes complicates things a lot. Another thing that will always trip up new IPv6 network engineers is solicited-node multicast. You know the theory, computers talk to ff02::1 for neighbor discovery and then you hop onto a real network and see none of that actually happening. And probably the most complicated thing for network engineers - how to set up firewall rules if machines are constantly changing their addresses. For developers and security people - just parsing and validating v6 addresses is a whole bunch more work, but at least for this, the tools are available to help you now.
wongarsu
A lot of it seems to boil down to "IPv6 was too early". Had IPv6 been developed a couple years later DHCP would have been mature, and SLAAC would have never been invented (since DHCPv6 is fairly obvious when you have good experiences with DHCP). Also it would have given all the alternative protocols (especially OSI) time to try (and likely fail) to gain traction, freeing IPv6 from the obligation to cram in all of their features. IPv6 could have picked a much smaller set of features that were proven useful by other protocols, then swoop in as the much simpler upgrade from IPv4 than any of the competitors
wongabu
There is no working solution to ipv6 dual WAN failover, 30 years later... A critical design flaw that was simply ignored by the designers despite being used in almost any SME network. inb4 no you can't have all lan devices have multiple ipv6 addresses and choose for themselves, typically 1 WAN is cheap and the second WAN is expensive/slow and should be used only for WAN1 failover Inb4 no you can't just advertise new RA, devices on lan can takes minutes to update. On ipv4, NAT+changing route on router just works, 1-2 seconds failover.
montag
My problem with IPv6 is that I can't double click 2001:db8::1428:57ab to select the entire address. It's a silly complaint but representative of real ergonomic issues.
rao-v
At a high level one of the sad things about IPv6 is that it surrenders a wierd, valuable and emergent property of IPv4 for the average home user in $random_country: IPv4 addresses in logs are not super helpful in tracking a specific person and household’s behavior long term (NAT, reuse etc.) Almost every end user oriented IPv6 deployment makes it significantly easier to use IPv6 addresses to persistently track individual machines (ie individual people) and map them to a household (yes I’m aware of RFCs 7217 and 8981, I’m mostly talking about long term stable prefixes). How much of a real concern this is is debatable but it’s perhaps a little bit unfortunate.