Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> All we needed was an extra pre space to set WHICH address space - ie. '0' is the old internet in 0.0.0.0.10 --- backwards compatible, not dual stack, no privacy nightmare, etc

That is what we have in ipv6. What you write sounds good/easy on paper, but when you look at how networks are really implemented you realize it is impossible to do that. Networks packets have to obey the laws of bits and bytes and there isn't any place to put that extra 0 in ipv4: no matter what you have to create a new ipv6. They did write a standard for how to send ipv4 addresses in ipv6, but anyone who doesn't have ipv6 themselves can't use that and so we must dual stack until everyone transitions.





Actually there is a place to put it... I didn't want to get into this but since you asked:

My prototype/thought experiment is called IPv40 a 40bit extension to IPv4.

IPv40 addresses are carried over Legacy networks using the IPv4 Options Field (Type 35)

Legacy routers ignore Option 35 and route based on the 32-bit destination (effectively forcing traffic to "Space 0". IPv40-aware routers parse Option 35 to switch Universes.

This works right now but as a software overlay not in hardware.

Just my programming/thought experiment which was pretty fun.

When solutions are pushed top down like IPv6 my spider sense tingles -- what problem is it solving? the answers are NOT 'to address address space limitations of IPv4' that is the marketing and if you challenge it you will be met with ad hominen attacks and emotional manipulations.


You didn't save anything as everyone needs to know the new extension before anyone can use it.

Hardware is important - fast routers can't do work in the CPU (and it was even worse in the mid 90's when this started), they need special hardware assistance.


All good points guys -- but my point was to see what is possible. And it was. And it was fun! Of course I know it will perform poorly and it's not hardware.

So you have to update every router to actually route the "non-legacy" addresses correctly. How is this different from IPv6?

That is the easy part - most of the core routers have supported ipv6 for decades - IIRC many are IPv6 only on the backbone. The hard part is if there is even one client that doesn't have the update you can't use the new non-legacy addresses as it can't talk to you.

Just like today, it is likely that most client will support your new address, but ISPs won't route them for you.


Yes of course I know all that. That was the whole point of the overlay first approach. i.e. Build a network that works over the existing network before adding any barriers to entry like specialized hardware requirements.

So either the new octet is in the least-significant place in an ipv40 address, in which case it does a terrible job of alleviating the IP shortage (everyone who already has IP blocks just gets 256x as much as them)

Or, it’s in the most-significant place, meaning every new ipv40 IP is in a block that will be a black hole to any old routers, or they just forward it to the (wrong) address that you get from dropping the first octet.

Not to mention it’s still not software-compatible (it doesn’t fit in 32 bits, all system calls would have to change, etc.)

That all seems significantly worse than IPv6 which already works just fine today.


> it’s in the most-significant place, meaning every new ipv40 IP is in a block that will be a black hole to any old routers, or they just forward it to the (wrong) address that you get from dropping the first octet.

Black hole for old routers. You run the software overlay until you can run the hardware.

I wrote a linux kernel module and an node/relay daemon that runs on every host.

There is a (0.)0.0.0.0 dedicated LAN space that auto-assign IPs. I called it the standard LAN party :) No more 10.0/192.168/etc Gateway always has .1 -- sensible defaults.

Also 0-255. Adds 255 IPv4 internets of address space. Billions and Billions of addresses are more than moar than enough.

Maybe one day I'll put on a fireproof suit and post it here for fun and see how much flame I get.




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

Search: