It's easier to remember the IPs of good DNSes, too.

lambalicious@lemmy.sdf.org to Programmer Humor@programming.dev – 307 points –

Today in our newest take on "older technology is better": why NAT rules!

182

You are viewing a single comment

You're not "wasting" them if you just don't need the extra bits

We are talking about addresses, not counters. An inherently hierarchical one at that (i.e. it goes from top to bottom using up all bits). If you don't use the bits you are actually wasting them.

you can gradually make the other bits available in the form of more octets

So why didn't we make other bits available for IPv4 gradually? Yeah, same issue as that: Forwards compatibility. If you meant that this "IPv5" standard should specify compulsory 64-bit support from the very beginning, then why are you arbitrarily restricting the use of some bits in the first place?

If you're worried about wasting registers it makes even less sense to switch from a 32-bit addressing space to a 128-bit one in one go

All the 128 bits are used in IPv6. ;)

We are talking about addresses, not counters. An inherently hierarchical one at that. If you don’t use the bits you are actually wasting them.

Bullshit.

I have a 64-bit computer, it can address up to 18.4 exabytes, but my computer only has 32GB, so I will never use the vast majority that address space. Am I "wasting" it?

All the 128 bits are used in IPv6. ;)

Yes they are all "used" but you don't need them. We are not using 2^128 ip addresses in the world. In your own terminology: you are using 4 registers for a 2 register problem. That is much more wasteful in terms of hardware than using 40 bits to represent an ip address and wasting 24 bits.

I have a 64-bit computer, it can address up to 18.4 exabytes, but my computer only has 32GB, so I will never use the vast majority that address space. Am I "wasting" it?

You are using the addressing bits in the form of virtual memory. Right now. Unless you run a unikernel system, then in that case you could be right, but I doubt it.

Anyway, this is apples and oranges. IP addresses are hierarchical by design (so you have subnets of subnets of subnets of ...), memory addresses are flat for the most part, minus some x86 shenanigans.

Yes they are all "used" but you don't need them. We are not using 2^128 ip addresses in the world.

But we do need them! The last 64 bits of your IPv6 addresses are randomized for privacy purposes, it's either that or your MAC address is used for them. We may not be using those addresses simultaneously but they certainly are used.

Despite that, there still are plenty of empty spaces in IPv6, that's true. But they will still be used in the future should the opportunity arise. Any "wastage" is artificial, not a built-in deficiency of the protocol. Whereas if we restricted the space to 40 bits, there will be 24 bits wasted forever no matter how.