Hacker News new | past | comments | ask | show | jobs | submit login

What changes exactly makes it orders of magnitudes more difficult?



You can't incrementally shift toward IPv6 -- that is, you have to learn an entirely new system whole hog rather than a piece at a time, you have to touch every machine on your network, and if you want to approximate an incremental change to IPv6, you have to run dual-stack or tunnel, which adds at least another layer of complexity to everything.

And that's not even beginning to talk about supporting services such as RA, etc.


> that is, you have to learn an entirely new system whole hog rather than a piece at a time

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.


Your odd hostility is misplaced here. You seem to think I'm opposed to changing to IPv6, but I'm really not.

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.


> Your odd hostility is misplaced here. You seem to think I'm opposed to changing to IPv6, but I'm really not.

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.


Explaining is not the same as defending. Understanding is not the same as agreeing.


There is some truth to what you say, but I believe incremental deployment is possible. You could roll it out to end users in phases, a VLAN at a time. Same with the server side: migrate only a specific app to V6, perhaps just starting with a front end load balancer, adding external support to make it dual stack.

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.


> 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.


I have a really hard time imagine a system that does not have those problems and provides the larger address space IPv6 provides. What would be your solution thats orders of magnitude easier to implement?


One that is backwards compatible with IPv4 would have eliminated a very large part of the friction here. I really think that if that were a feature of IPv6, we'd be at nearly 100% adoption by now, and IPv4 would be largely a dim memory.


IPv6 has backwards compatibility thats how the IPv6 only mobile networks work. If you think the other way around then my question is how?


I think we're talking about different things with "backwards compatibility". What I mean is the ability for IPv4-only software and hardware to be able to basically function on an IPv6 network. Maybe more slowly, certainly without any of the IPv6 features, but able to basically work.


Thats what I meant with the other way around. That would be awesome but how? Are there any protocolls that could do that? Any research? A paper? Because for my simple mind it seems impossible.


I'm no network engineer, but I can think of a few naive approaches. For instance, IPv6 could include IPv4 addresses inside its address scope, and provide for handling both IPv4 and IPv6 packets. Distinguishing between the two wouldn't be hard.

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.


Depending on what you mean exactly with "IPv6 could include IPv4 addresses inside its address scope", IPv6 actually does that.

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?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: