Sure, we'd save a little bit of time from the extra features, but I don't see how anyone's deployment approach would be different.
But if you've changed things so radically that it discourages moving to the replacement protocol, isn't that a problem?
> The changes made with IPv6 actually simplified deployment compared to IPv4.
Perhaps, but they also make transitioning from IPv4 to IPv6 orders of magnitude more difficult.
And that's not even beginning to talk about supporting services such as RA, etc.
IPv6 has been available much longer than IPv4 was when the Internet went mainstream in the mid 90's. Yes, it's work to deploy. You might need to even upgrade to a router built in the past 10 years. Organizations have had decades to learn about it and deploy it. People just don't like change... especially corporate IT departments.
Well, all change causes pain. People don't like change when there isn't an obvious benefit to offset the pain it brings. When they do see the benefit, though, they tend to embrace change. I think the mistake that was made with IPv6 was a social one: it's a huge amount of change (pain) for a benefit that is invisible or irrelevant to a whole lot of people.
IT departments, like most departments, dislike expense more than they dislike change.
In reading the discussions leading up to IPv6, it was clear that the actual experts involved saw a few ways to maintain such compatibility. It was decided not to do that, though, because tradeoffs are (as always) involved. There are features they wanted to include that wouldn't have been possible while maintaining compatibility, and it was thought that a breaking change was worthwhile now as long as the IPv6 protocol was good enough that no breaking change would be required in the future.
For applications a subset of the IPv6 address space is set aside for IPv4 connections. So applications only need to support IPv6 and can communicate with IPv4 destinations using ::ffff:<ipv4-address>, so for example ::ffff:8.8.8.8 is a valid ipv6 address. But that still requires the host to have a IPv4 address for this to work (it's only so applications can support both while only requiring support for one address family).
For IPv6 hosts connecting to IPv4 hosts there are different methods that translate IPv6 to IPv4 (NAT64, SIIT, etc.), but most (if not all) just embed the whole IPv4 address space inside IPv6 (and again you can have something like 2001:db8::8.8.8.8) and then translate based on extracting the IPv4 address from the IPv6 address. And in combination with DNS64 you can have ipv6-only hosts that can communicate just fine with IPv4-only hosts (all ipv4 traffic gets routed via NAT64).
The problem is however the inverse. IPv4 is not forward-compatible. A IPv4-only host can only ever form outgoing connections to other IPv4 hosts, since there is no way to put more than 32-bits of information into the 32-bit destination field of the IPv4-packet. You can of course expose certain ipv6-only hosts to the ipv4-internet using for example SIIT, but that requires a 1:1 mapping between the IPv4 and IPv6 host. If you don't have that explicit mapping, how would a gateway know which IPv6 address you meant?
Every time IPv6 negativists come to the thread they make it look like you need to be a rocket scientist to configure two hosts for IPv6.
> You can't incrementally shift toward IPv6
Yes, you can, you don't need to throw out your lovely IPv4 networks and addresses. Yes, it's dual-stack.
> you have to run [..] tunnel, which adds at least another layer of complexity to everything
No more complexity than running a PPPoE/PPTP tunnel to get IPv4 connectivity.
> And that's not even beginning to talk about supporting services such as RA, etc.
Oh God! You need to read another 20 pages on top of the previous 20 pages you read to understand IPv6! So, so hard!
BTW you obviously forgot what there was a time when you didn't know nothing about IPv4, including what is the default router, what is ARP, what is CIDR, netmask, routing etc, etc. Yet somehow you know that now. Same applies to IPv6. You had 20 years to learn it, yet in 2023 you still complaining what to use a technology you need to learn.
I'm describing various reasons why there is such slow adoption of IPv6. Ridiculing and being mad at people for avoiding it isn't likely to make them feel any differently. Understanding the resistance might be helpful in terms of getting people over that hump.
You are not a devil's advocate nor a public defender, yet you defend those people, using the same nonsense reasons they use to defend their position.
> I'm describing various reasons why there is such slow adoption of IPv6.
For the most part those reasons boils down to 'I have my way and don't do a shit to learn something new'.
> Ridiculing
Yes, they deserve it.
> and being mad at people
A grown-ass person who can't find the reason and time to learn something new? I'm not mad at them, but I don't like when people defend them.
> Understanding the resistance might be helpful in terms of getting people over that hump.
See 'I have my way' part above.
v6 isn't radical in the slightest. It works very similarly to v4.
Maybe.
> If I could go back in time to 1995 I would kick some people at IETF meetings.
Sure.
But how is any of that relevant enough to bring up today? Now, IPv6 is what we have, and the standards are what they are, flaws and all.
The only reason I can think of is psychological: People don’t want to learn new things, so they find reasons to dislike the new thing to be able to pretend they don’t need to learn it.
Yet IPv6 is very complex with tons of moving parts compared to IPv4, and a lot of it works very differently so I can't rely on my existing IPv4 knowledge. In fact it frequently a hinderance.
Which IPv6 does pretty well even if you aren't a network engineer. More than 40% of all requests to google are from IPv6 and the vast majority of those connections are from people that never heard of IPv6.
I'm not just talking about connected to Google, I mean to each other. So ULA, DNS, DHCPv6 vs SLAAC etc is in play.
Outside of smartphones (in the US, apparently), moving from IPv4 to IPv6 is genuinely painful and often requires deeper knowledge of networking to accomplish.
Yes, if you're using a smartphone or your needs are otherwise trivial (for instance, you don't have a real network at home but just have one or two devices connected to your modem), then none of this is a big deal. But outside of that, things can be very different.
Right. Those are the "trivial" cases I mentioned.
That was the only point I was making.
That's not an endorsement on my part at all, just a recognition of what has happened.
I confess that I'm doing the same thing in my home network -- I won't move to IPv6 until I have no other choice, because that move will take a ton of time, sweat, and tears.
Just to stave off misguided attacks on me: I am not saying IPv6 sucks and we shouldn't move to it. Not at all. But moving to it is a very expensive proposition.
Now I'm interested on what kind of "home network" you have that makes v6 that hard.
I'll start by acknowledging that it's larger and more complex than a whole lot of networks. I have three subnets (not counting a second WiFi AP for guest use that just routes directly to the internet and bypasses my network entirely).
I have a subnet for my 4 internet-facing servers, a subnet for devices that for one reason or another aren't capable of working through my VPN, and a subnet for my general use. This is entirely encrypted using a VPN server I also run.
I have a total of around 70 different computers and devices on the network.
When I played with moving to IPv6, two things became immediately obvious to me. The first is that it will break most of what I have going on, so I'll have to go through and debug most of the systems to make them work right again. The second is that I'll need to rethink the entire network topology (except for my "lame devices" subnet -- those devices also can't use IPv6, so I'll have to maintain an IPv4 network just for them).
Rethinking the topology is probably the part that I'm least excited about, because it seems that I'll have to essentially become an IPv6 expert to design and implement that sort of change.
In any case, I anticipate at least a week of having a broken network ("broken" meaning just basic internet connectivity) while I figure all that stuff out.
> I can't rely on my existing IPv4 knowledge.
So you are a network engineer, but you just don’t want to move with the times?
In my experience, that depends highly on what you want to accomplish. For example, tell me how much less complex it is to inform a device on the network of what the address of the NTP server is in IPv6 compared to the IPv4 address. Assume you rely entirely on SLAAC, because that's the preferred way, or so they said.
> So you are a network engineer, but you just don’t want to move with the times?
I don't call myself a baker just because I can make a loaf of bread, but I then I've never been one to over-inflate my CV...
It's not like I don't want to move with the times, but I find IPv6 quite complex and rough around the edges in practice, especially for a homelab network.
Who's "they"?
I think RA for addressing/DNS and stateless DHCPv6 for everything else is the way to go these days.
But SLAAC makes me equally nervous. If/when I shift my home network to IPv6, I'll probably just go with static routing to avoid both of them.
If you're that paranoid then you also need to worry about IPv4 ARP and IPv6 ND attacks. Again, managed switches are required to drop unauthorized ARP and ND replies.
Yes, thank you. I'm aware of these features.
I never claimed that my nervousness is rational. But it's very real. This is complex stuff, and since I haven't been working with IPv6 for decades, I can't shake the fear that I've made a configuration error and am not aware that I've made a configuration error.
It is? It sure seems more complex to me in most ways. There are a couple of things that are simpler, but not many.
Of course, neither is true.
I am not opposed to IPv6 in any way, but I'm also delaying changing my home network to IPv6 for as long as possible.
It's not from fear of change or not wanting to learn new things at all (I know IPv6 as well as I know IPv4). It's just that making that change is a whole lot of work, and IPv6 doesn't bring any benefit to me that I care about. I'll put in that effort when the situation changes and I get some benefit from it.
(An octet is a byte btw, so it'd be an increase from 4 to 8.)
If I had a time machine and had to take a relatively naive crack at the problem, I'd make IPv6 really really simple: it'd just be IP-in-IP.
On the internet you're routed with an outer address, and the local router forwards it using the inner address. Speaking v6 over v4 is free because v4 routers ignore the inner packet. Speaking v4 over v6 just doesn't include the inner packet. Other local hosts are just contacted through v4.