3 ms·
You may be underestimating how many IPv6 addresses there are! 2^128 is huge. Like, if we assigned one trillion new addresses every second since the birth of the
by matthewmacleod 9y ago
You may be underestimating how many IPv6 addresses there are! 2^128 is huge. Like, if we assigned one trillion new addresses every second since the birth of the universe, we’d still have enough left over to do the same in another 800 million parallel universes. Truly astronomical numbers.
Obviously not all of these addresses will be used; in practice we aren’t going to run out any time soon.
- exikyut 9y agoFor reference, 2^128 = 340282366920938463463374607431768211456 or 340,282,366,920,938,463,463,374,607,431,768,211,456
- joeblau 9y agoWhile you're right, it is huge. This mistake has been made in computing time and time again. You think you've got adequate scale for your solution but you didn't anticipate X which introduces new growth that out paces your design.
- gvx 9y agoAssuming the internet has been growing exponentially since the beginning and will continue to do so indefinitely. IPv4 has 32 bits and lasted us 34 years so far. Let's call it 32 years. Address space would need a nice and tidy 1 bit extra per year. That would mean IPv6 would last until around the year 2110. But will the internet keep growing exponentially until then? How many people will even be alive by then? According to https://en.wikipedia.org/wiki/Projections_of_population_growth https://en.wikipedia.org/wiki/Projections_of_population_grow..., predictions used by the UN range from 7 to 18 billion people. Let's round it up to 20 billion people. How many IPv6 addresses could we give out to each person? According to https://www.wolframalpha.com/input/?i=2%5E128+%2F+20*10%5E9 https://www.wolframalpha.com/input/?i=2%5E128+%2F+20*10%5E9, 1.7 * 10^28, which is a lot. But okay, we have a lot of computers per person and not all computers are associated with individuals. So what if we do something crazy, like give out IPv6 addresses to the (human) cells in everybody's body? https://www.wolframalpha.com/input/?i=1.7+*+10%5E28+%2F+cells+in+human+body https://www.wolframalpha.com/input/?i=1.7+*+10%5E28+%2F+cell..., that would be about 1.7 * 10^14. What if we give each cell some IPv6 addresses per second (pretending all of our cells live for 80 years)? https://www.wolframalpha.com/input/?i=1.7+*+10%5E14+%2F+(80+years)+in+Hz https://www.wolframalpha.com/input/?i=1.7+*+10%5E14+%2F+(80+... Here we land on 67 thousand addresses, per second, for each human cell in the bodies of 20 billion people, for the span of 80 years. That's how many IPv6 addresses we'll need to use before we run out. We have made this mistake before, but 128 bits really is a lot.
- badsectoracula 9y agoOf course this assumes we don't assign half of the address space to Apple, Facebook, Google and their friends, or something silly like that, like it was done with IPv4 (with the equivalent "friends" at the time).
- cesarb 9y agoI read in one of the IPv6 RFCs (don't recall which one at the moment), that initially only 1/8 of the possible address space will be allocated. If for some reason that space is filled up, there's still another 7/8 which can be allocated with a more conservative policy.
- vbezhenar 9y agoEnd users should receive /64 subnet and servers should receive /48 subnet. Given that many users might want to run some servers, it's just 65536 times more than IPv4. Good enough, but not future proof enough if you ask me.
- philjohn 9y agoCurrent recommendations is end users of ISP's should get a /56