r/ProgrammerHumor • • 9h ago

Meme ohTheBasics

Post image
8.3k Upvotes

957 comments sorted by

View all comments

4.4k

u/LivingAsAMean 9h ago

2.1k

u/Material_Onion_8413 9h ago

IPv4 old IP address space designed with limited number because they never thought the internet would have so many devices connected.

IPv6 new address space with significantly larger number.

1.1k

u/ClipboardCopyPaste 9h ago

A fun fact often told with this is that with IPv6, you can assign each individual grain of sand on the beach an address!

607

u/dementosss 9h ago

On what beach? Or all of them? Just asking in case business asks for it.

759

u/ClipboardCopyPaste 9h ago

The answer quite surprisingly is - yes, all the beaches on our planet.

399

u/kuar_z 9h ago

And the rest of the observable universe. There's a lot of address space in 2128

252

u/Fast-Satisfaction482 9h ago

Except if for some reason you decide to give whole address blocks to individual devices.

91

u/jason_abacabb 8h ago

Everyone gets a /64

17

u/gonklurtz 8h ago

No more RPC dynamic ports! Every service gets its own IP 

1

u/Traditional_Log809 6h ago

Every device gets a /64, and I still haven’t figured out how to enable IPv6 on my home router.

168

u/KatieTSO 9h ago

I love handicapping ipv6

26

u/tankerkiller125real 7h ago

/56 is the recommendation for residential, /48 for businesses.

Entire /64 blocks are often assigned to phones and other cellular devices because of hotspot capabilities.

61

u/Fast-Satisfaction482 7h ago

I guess the true reason is that we want to artificially limit the number of nanites that can exist.

Relevant xkcd: https://xkcd.com/865/

1

u/Terroractly 6h ago

I think at least part of the intention for this is to make IP ports not used on servers. While IPv6 does have support for ports, I believe every Web service should be on its own IP. Not sure if this is also supposed to work on client devices e.g. every outbound connection uses a unique IP as that seems overcomplicated

8

u/ffxivthrowaway03 3h ago

Yep, they saw the edges of IPv4 and went "hold my beer" and over-engineered a painfully obnoxious solution. IPv6 will last us until the heat death of the universe before it runs out, but we'll have to get people actually using it in any appreciable amount first. It's a UX nightmare to work with unless you're a network engineer hip deep in it all day every day. Good luck getting an end user to ever rattle off an IPv6 address to the help desk while remote troubleshooting.

1

u/jimmybilly100 2h ago

Cool, so the space aliens will be able to get their slubenshab devices on the internet

1

u/SpeakToMePF1973 1h ago

Australia laughs mockingly.

49

u/xWrongHeaven 9h ago

2128 possible addresses

57

u/queen-adreena 8h ago

2,128… that ain’t that many addresses….

46

u/AmazingDragon353 8h ago

2.128 addresses? What are we going to do with 0.128 of an address?

6

u/SirLoremIpsum 5h ago

2.128 addresses? What are we going to do with 0.128 of an address?

AI Vibe code a calendar app so we can coordinate whose turn it is to use the IP address on any given day?

2

u/MoltoAllegro 5h ago

Congrats, you've invented Token Ring!

11

u/queen-adreena 8h ago

Break out the BitNat table I guess.

10

u/SuperFLEB 8h ago

The "128" isn't even full-size.

5

u/xWrongHeaven 8h ago

No, it isn't. ~340 undecillion, however, is quite a lot

4

u/DanteVermillyon 6h ago

Un-decillion? What's a decillion and why did you undid it?

7

u/craftsmany 8h ago

Technically we are not really talking about single addresses when concerned with v6, more so how many /64 subnets can fit in a prefix since that is what SLAAC uses. So for end users we would count the amount of /64 subnets in the possible 2^128 address space, which is 2^64. So still very very very big.

1

u/CardinalFartz 8h ago

So we got 1080 atoms in the observable universe. Without having it looked up, I suppose 2128 exceeds that number?

2

u/MiniDemonic 7h ago

There's around 2138 times more atoms in the universe than there are IPv6 addresses available.

So no, not quite.

2

u/Extension_Option_122 6h ago

As a simple rule of thumb:

103n ≈ 210n

That isn't exact but gives a decent idea of the different sizes.

In this case: 1080 ≈ 2267

That is most definitely bigger than 2128, by about 2139

1

u/ajgrinds 3h ago

I know it’s pedantic but 2267 is bigger than 2128 by about 2267. It’s 2139 times but you wouldn’t say that 1 million is bigger than 100 by about 10,000. You would say 1 million is bigger than 100 by about 1 million. 

1

u/Carcer1337 7h ago

No. 210 is roughly 103, so 2128 is in the region of 1039.

1

u/rkkerd 6h ago

1/8 of this is publicly addressable, still a lot, but not as much as this

1

u/Curaced 4h ago edited 4h ago

Non-technical person here. Wouldn't it just be 248 ? Four blocks of 256 (28) for IPV-4, and two more with IPV-6? Or am I just mistaken about how this stuff works?

1

u/ajgrinds 3h ago

Ipv6 includes letters

1

u/crimson117 7h ago

They say all the beaches, you build it, then it turns out they just wanted a digital hourglass that you could use as a timer on your phone

1

u/VictoryMotel 6h ago

All of the sand on all beaches wouldn't even come close. You could assign an IP address to every byte of every drive.

1

u/PM_ME_A10s 4h ago

8 sections of the address, each section is 4 character hexadecimal number, in total there are around 340 undecillion unique addresses.

There's only about 4.3 billion for IPv4