I feel like this blog does not accurately describe how large the ipv6 address space even after accounting for it being reduced by 2^64 for the host portion of the address. If it did it would make the concerned comments about /28 ipv6 network sizes seem very misplaced.
A single static ipv4 address is a /32 slice into the ipv4 space and is considered a reasonable to size give out to a single person or even a small business that asks for it. Of course larger companies and telecom operators need larger network allocations and they have gotten them for many years in the past.
Now realize that if a /64 ipv6 network is the minimum size like a single ipv4 address then you see that the ipv6 address space has 2^32 /32 ipv6 networks. Now with ipv6 any technical person and acquire a entire ipv4 internet sized network in a continuous (globally routeable if you want) range.
And if any sized business today can expect buy a single "class c" /24 range of ipv4 it makes sense that large global compaines get a ipv6 /20 network to run their entire network on it.For example cloudflare[1] uses 6 regional /32 networks and a /29 network for all their routing needs. Imaging trying to build cloudflare with less than 32 addresses in a single /24 ipv4 allocation.
ipv6 is so large that you can just design your network without worrying about subnet size and route based on real policy or security boundaries alone. We will run out of MAC addresses before we run out of ipv6
People get caught up in how many IPv6 addresses exist, as if we will always have enough to go around. Recently Capital One was assigned a /16, enough for every ATM in the US to be its own ISP and make its own customer allocations. We continue to repeat the same mistakes that made people believe we needed v6 in the first place.
We will never run out of IPv6, but I believe in my lifetime you won't be able to get new v6 allocations anymore because they will have all been handed out to the large corporations with deep pockets. Oops, no addresses left - but you can rent one from a cloud provider for a few dollars a month.
> We continue to repeat the same mistakes that made people believe we needed v6 in the first place.
The IPv6 designers already thought of that and prepared for that eventuality. Only 1/8 of all available IPv6 addresses (the ones starting with the bits 001) is available for allocation under the current rules. If and when that gets exhausted, there will still be more than 5/8 of all IPv6 addresses available to be allocated under more strict rules. (See https://www.iana.org/assignments/ipv6-address-space/ipv6-add... and https://www.rfc-editor.org/rfc/rfc3513.html#section-4 for more details.)
Then, we’ll make IPv8, with 2^1024 address, which will be incompatible with IPv6 and IPv4 and all software on release, and will take decades before any appreciable uptake. Addresses will use hexadecimal, as well as the entire 4-byte Unicode table of emoji and Egyptian hieroglyphics, with octet separated by $ and { symbols for heightened readability.
Yet there will still be comments asking why IPv8 can't be IPv4 with another few sets of digits tagged onto the end, as if that would somehow be compatible with the current implementation of IPv4.
A /16 is the first quarter of the network prefix. That is indeed like assigning an IPv4 /8 to General Electric in 1985 and then wondering why, 40 years later, we’re out of address space.
Except, we're not actually "out" out. There is a very active IPv4 transfer / resale market. There is a LOT of unused or underused address space out there. I know one local firm with a completely unused /16 that they have not announced in years.
Thanks, I missed this story. According to https://old.reddit.com/r/ipv6/comments/17yuqvp/til_capital_o..., the largest allocations by RIRs other than ARIN do not exceed /19, and those are for national telecom providers. Who are these ARIN people and how can they be held accountable for their idiotic management of public resources, which appear to be consistently terrible for decades?
The IPv6 address space is so huge, I, as an individual, was able to get a /44 no questions asked. Back in the 90's, I was able to get a IPv4 /24, no questions asked.
> I feel like this blog does not accurately describe how large the ipv6 address space even after accounting for it being reduced by 2^64 for the host portion of the address.
One way of thinking about it:
* Stars in the Milky Way: 400 Billion
* Galaxes in the universe: 2 Trillion
So (4x10^11)x(2x10^12)=8x10^23 stars in the universe.
* Size of IPv6 address space: 3.4x10^38
Find the ratio between addresses and stars:
* 3.4x10^38 / 8x10^23
IPv6 offers about 430 trillion times more addresses than estimated stars in the universe. From Tom Coffee's presentation "An Enterprise IPv6 Address Planning Case-Study"
Perhaps in more human terms: on the surface of the Earth (including oceans), there are 8.4 IPv4 addresses per km^2. Not counting the oceans, that would be 28 IPv4 addresses per km^2 land.
IPv6 gives 10^17 addresses per mm^2 (yes, square millimeter).
In terms of volume, 10^8 IPv6 addresses per mm^3 throughout the Earth.
Another way of looking at it:
*math property: x^y = x^(a+b) = (x^a)x(x^b)
* IPv4 addresses are 32 bits (2^32)
* 2^32 ~ 4.3 billion
* So the IPv4 Internet has ~4.3B devices on it
* IPv6 subnets are 64 bits, /64 (2^64)
So, an IPv6 2^64 subnet is the same as (2^32)x(2^32), which means (4.3B)x(IPv4 Internet). I.e., a single IPv6 subnet can hold the equivalent of four billion (IPv4) Internets.
It’s really hard to even comprehend how large IPv6 is. I have found that extreme examples tend to help people get there. Here are some I’ve used in the past.
There are enough IPv6 Addresses for 4.77 x 10^28 for every living person.
If each IPv6 address was a grain of sand…
That’s 2.39 × 10^18 of addresses per person, or roughly enough sand sized addresses to equal about 1.8 times the volume of earths ocean per person.
At sand scale all IPv6 addresses would take the volume of 12 sols.
Conversely, all the IPv4 addresses in this sand scale would slightly over fill an oil drum.
Chess has 1e100 possible games but the more practical metric is that the average game involves 40 black moves and 40 white moves.
Similarly, it’s better to think of the depth of a network’s topology. The size of the tree when full is immaterial, especially when the last 64 bits is intended to be so sparse that random address assignment is viable.
So instead of talking about there being 2^128 addresses, it’s more useful to talk about there being 4k global regions (/12 RIRs), assigning /32s to ISPs in their region.
Each ISP can assign a /48 to each customer site, which can then subdivide into 256 buildings with 256 VLANs each (or some other balance of the these, eg 8 buildings with 64 floors each and 128 VLANs on each floor) with the hosts selecting randomly (or SLAACly) from the final 64 bits.
Some ISPs where customers are in a single dwelling will only give you a /56.
Hah - all of those examples use a planet as comparison. The first 16 bits of the address should be reserved to be used by the Planetary Internet Addressing Council (PIAC)
Allocating all addresses to Earth seems very shortsighted.
(Some sarcasm should be assumed.)
It doesn't really matter how you explain large-number math to people who are bad at large-number math (aka all of us) - there's always some bright-spark who misses the point.
Well we could argue that this support for trillions of IP addresses is nice, except that IPv6 does not technically work in interplanetary environments due to various hardcoded timeouts.
The first martians are likely to run their own local network and then use a VPN over DTN for their everyday communications by email (and appear coming from a single IPv6 address).
One good thing though: since most of the humanity’s knowledge is going to be packed in an LLM they won’t really actually need internet to learn about things. But lack of videos may be annoying.
I see only one IPv6 timeout, for fragmented packet reassembly, in other words between reception of fragments. So it's a bound on jitter not latency, and I see no reason it couldn't be increased for interplanetary links.
One problem of ipv6 is proponents saying there are 2^128 addresses.
It's really hard to comprehend how many unusable ipv6 addresses are.
Having more than 2^16 hosts on a subnet is pretty much impossible. Sticking with "grain of sand" units, but using volumes all from wolfram alpha:
There's 2^80 usable IPs in the entire ipvv6 space, because of the /64 subnets. That's plenty. But for every subnet, that's 40 cubic metres unusable for every subnet, and a sphere 1mm wide of usable addresses.
My ISP give me a /48. I have under 30 addressable devices over 3 vlans. I'm using 40 cubic miles of space. A ratio of about 10 trillion:1
But that's nothing. The IP allocators are happy to give a bank a /16, or in your "grain of sand" measurements 30 times the volume of the moon.
To match my unused:used ratio of 10 trillion to one, chase manhattan would need 2^70 devices, which is billions of addresses per cell.
All the space that fanboys go on about is almost all unusable, so the extreme examples don't really help at all.
The thing is, there are just as many /28 IPv6 ranges as /28 IPv4 ranges. And the experience with IPv4 is that it's those larger ranges that we've run out of the quickest. The whole power of IPv6 is that assigning a huge global business a /32 gives them enough addresses to run more devices that exist on the whole Internet today. But if we're distributing large swaths of IPv6, we'll run out just the same, unless we try to later claw them back like we did with some IPv4 /8 spaces.
Now, of course, a /28 in IPv4 is a tiny range, while a /28 in IPv6 is huge. And there are, of course, a lot of /28s. The fear is only that we may start seeing larger and larger allocations for no good reason whatsoever. Apparently already some random private company (Capital One) has received a /16 IPv6 range - this is an absurd allocation that should simply not be allowed if we don't want to have to move to a new IP version in a few decades.
Now problem mostly eased, thanks to Moore law, but 20 years ago router memory need to store prefixes-routes graph was very expensive and have some problems with grow.
For example, I know people, bought very expensive server PC boards (but cheap compared to enterprise networking hardware), with DDR2 capability, because it was fastest at that time and promises large RAM space.
Imagine their frustration, when they seen, this hardware cannot allocate prefixes list for their installation (just not enough RAM) and they have to buy new hardware with DDR3.
This even caused "curse of /24", when some providers decided to just discard /24 prefixes and work only with /16 directly and for smaller allocations use some default route.
And this is just because nature of Internet, which is by definition "network of networks", mean, in ideal case all networks should have peer connections at least to all first circle neighbor networks, but better if have peers to few first circles, plus connections to large local hubs.
And now problem become harder, because of grow of p2p solutions, which by definition avoid hub model and use all peers directly.
BTW, colleague from telecom share latest problem - few days ago appear huge traffic. In very short time found source - after appear new "Stalker" game, their developers made huge number of fixes, so fixes are larger than installation, and they somewhere bought so powerful distribution network, distribution of fixes flooded all connections for few days.
Except that IPv6 is actually not that large. You effectively can't use networks that are smaller than /64, because stateless autoconfiguration can't use any other prefix size (there's an effort to fix it, but it'll take a decade at best)
That was my whole point. There are not 2^128 ipv6 addresses for Individual use but there are 2^64 /64 networks.
If you rent a vps with a ipv6 “address” you will see that you are given a /64 network.
There is no effort to “fix” the bottom 64 bits because it’s not needed. There are enough /56 networks to for the next 500 years and 99% of people can do everything they need with an isp provided /56. IPv4 has survived with 48 bit nat for this long so 64 bit is even more buffer space
You can absolutely use them, you just need static or DHCP addressing just like the old days. But thanks SLAAC for forcing my ISP to give me /64 or bigger so I can always subnet into /96 for example.
I do want to point out one thing that is a common misconception by IT engineer types:
> The use of NATs force the interactions into client-initiated transactions... (abbreviated)
There is absolutely ZERO chance that that, let's say Roomba, is going to let you connect directly to your vacuum robot at your home, from your cell, over ipv6, without going through their proxy server in an AWS Datacenter in Virgina.
The nativity of engineers is face-palm inducing.
Roomba will _never_ give up that control over your device. Same with your Tesla, your iPhone, your security cameras, or your ring doorbell. Zilch, none, nada. Giving you direct control, even if ipv6 were fully implemented, is simply not on the roadmap for the companies. They want to control you. They want to control your devices. They will not release the death grip on this, as it releases their control over your property post purchase.
This sounds incredibly cynical but it's playing out in front of us. By restricting the use of their services, they now control and downstream resale of the device and can force people to buy new, rather than repair or renovate. And of course the leaders in all of this anti-repair initiatives are the so called "Green" companies of the world.
I connected my AC directly to my desktop. I can't be sure it isn't also phoning home, but I know I am controlling it without a remote server.
You are doing a "there can only be one binding constraint" analysis, and I don't think that is get. Yes, a lot of incumbents want client-server only, but IPv4 still gives them power enforcing the status quo. If we had IPv6 everywhere, they would need to try harder to enforce it, and we would have to try less hard to change it.
Is Amazon not demand? Do they exist outside economics?
(Legally they're supposed to use those addresses within a year(?) of buying them, but I won't pretend that anyone would really notice whether that's the case or not.)
> but I won't pretend that anyone would really notice
I've got a /24 that I obtained back in the Wild West days of the early 1990's, when all you had to do was send an email form and a few minutes later you'd get one assigned. I haven't used it in over 20 years now, but nobody has ever come to take it from me.
I don't know what you mean. Do you think Amazon was paying very high prices for IPs they don't need? Were they trying to corner the market and create a monopoly?
The investment in infrastructure is cyclical. A lot of ISPs started large expansion projects, fueled by the lockdowns in 2020-s that highlighted the inadequate infrastructure. A lot of content companies also acquired additional IPv4 space for servers.
A combination of “getting there first” (and thus, a bunch of decaying infra that doesnt support v6- and needing it all updated) and the “free-net” thing where you can choose your ISP in some apartments.
For those not in the know: internet is usually negotiated by your entire apartment building, but some (especially the largest rental building association “MKB”) give you the choice to choose your provider.
The way it actually works is complicated, but nobody will invest in this “open networks” system, so it is stuck in time fully, and even providers (like Bahnhof) who want to give v6: can’t with that system.
It seems hard to find info on the open network stuff, I know it all from a friend working at Bahnhof, here’s at least part of it:
There seem to be some correlation between large population size and higher deployment. Maybe there are too few internet connections to be really worth it.
One thing I've wondered is how routing will work out in the long term for IPv6.
If I recall correctly, IPv6 routing was supposed to be hierarchical based on ISP and region, and that would help routing tables. But what if companies in the US, for example, buy a /19 and then divide it up and use it across the globe?
I assume routers will have to come with a lot more RAM.
The Internet gave up on that a while ago. IPv6 routing works like IPv4 where people just advertise whatever routes they want. Router RAM has been fixed with newer HBM-based ASICs supporting millions of routes.
Desktop application, for classic client/server should allocate a transient IPv6 local address only for one session (namely a desktop policy system must give that right to user selected applications only), and I even wonder if browsing one site should not get its own IPv6. Ofc, the local ISP IPv6 router should be scaled for a reasonable domestic usage.
Ofc, server like desktop applications should randomly choose an IPv6 there, but it has to stay stable since this number will have to be given to other people to connect to such server (I am talking dodging DNS $$$ racketeering or Big Tech "name<->IPv6" mapper service, aka for the smhol internet).
Only if the ISP is providing a /64 prefix ofc.
In my country, nearly 100% of domestic internet lines are working like that, and it has been the case for years. The main issue, is IPv6 on mobile internet: in my country most mobile internet has IPv6 enabled... but it seems you don't get a /64 prefix but a different /128 ip address at each authentication of your sim card.
If it ends up not being a trick of my current IPv6 mobile internet modem, this is very bad, REALLY bad: I cannot give a stable mobile internet IPv6 to my contacts for communication (sort of a phone number dedicated to them). Mechanically, it will force people to use classic centralized client-server services, hence force people into Big Tech.
A single static ipv4 address is a /32 slice into the ipv4 space and is considered a reasonable to size give out to a single person or even a small business that asks for it. Of course larger companies and telecom operators need larger network allocations and they have gotten them for many years in the past.
Now realize that if a /64 ipv6 network is the minimum size like a single ipv4 address then you see that the ipv6 address space has 2^32 /32 ipv6 networks. Now with ipv6 any technical person and acquire a entire ipv4 internet sized network in a continuous (globally routeable if you want) range.
And if any sized business today can expect buy a single "class c" /24 range of ipv4 it makes sense that large global compaines get a ipv6 /20 network to run their entire network on it.For example cloudflare[1] uses 6 regional /32 networks and a /29 network for all their routing needs. Imaging trying to build cloudflare with less than 32 addresses in a single /24 ipv4 allocation.
ipv6 is so large that you can just design your network without worrying about subnet size and route based on real policy or security boundaries alone. We will run out of MAC addresses before we run out of ipv6
[1] https://www.cloudflare.com/ips/
reply