IPv4, centralization of the internet, and capitalism sucking balls yet again
The internet is designed to be decentralized, to have no central authority. It is designed to be the web of many networks communicating with each other. Anyone in theory is able to host their own services, their websites, and connect with others freely... except this is very much not the case. And well, there is quite a few reasons for this, to say the least – but here I want to focus on the one of them – IPv4 address exhaustion.
A short infodump about IPv4 and IPv6.
IPv4, in very simplified terms, is a set of protocols used to essentially handle all the internet flow, with its specification finalized in early 80s. It honestly works fine, except for one issue – the address range.
The creators of the internet standards didn't think the internet will be a big thing, so they've made the address range a 32-bit number – which gives us a bit under 4.3 billion addresses. Furthermore, they allocated these addresses to organizations willy nilly, and suddenly there was a credible threat of exhausting the pool of available addresses.
So, what's the solution? Well, of course, extending the address space, right? And well, yes. That is the solution. And as such, in 1998 the standard for IPv6 was introduced. Main draw? 128 bits of address – ergo, 2^128 (roughly 340 undecillion) possible addresses. Main problem? It needs new hardware pretty much everywhere – and as such, there were steps made to stall the address exhaustion problem. Some steps were societal – some organizations have released their huge IP ranges back to the common pool, and the IANA made the IP allocation policy way harsher to slow down the use of this limited resource. Some were technical, such as the introduction of NAT44 and eventually NAT444, for which I will explain the basic idea a bit later.
Yet this still was not enough – the last block of IPv4 addresses was assigned in 2019, and the IPv6 deployment is more or less nowhere. Of course, there is a question that immediately comes to the mind – why?
Why despite all this time, IPv6 was not widely implemented?
The answer, while maybe not exactly simple, boils down to one thing: the capitalism. Not only there is little capitalistic incentive to roll out IPv6, considering it is a large cost due to requiring new infrastructure, but also keeping IPv4 alive for as long as possible is something that is actually beneficial to the capitalists.
The “benefit” of IPv4 that I am talking about is simple – the aforementioned scarcity and address exhaustion. The estabilished players on the ISP and cloud provider markets have wide enough pools of IPv4 addresses reserved for themselves to still last them for a while. They very treat it as a commodity in similar vein to how landlords and real estate traders treat the land and housing – abusing the scarcity for profit, renting the IPv4 addresses for not insignificiant amount of money.
The scarcity of the IPv4 addresses also makes hosting things on premises – whether for business or for personal stuff – far more difficult than it should be. And the reason for this are NAT44 and NAT444 – the address conservation mechanisms I have mentioned a few paragraphs ago. As simply as I can put it, NAT44 allows multiple devices on the same network to share the same public IP, while NAT444 expands this concept to multiple networks at once. As ingenious of a solution this is, allowing various devices to initiate connections with relative ease – it causes a massive problem when you want someone from outside to connect to your devices. There are ways to work around this, but they are pretty darn technical and in some cases pretty unreliable.
Now, one may ask why I am mentioning difficulties with on premises hosting of various things as something that is advantageous for capitalists. And the answer is simple – it pushes people towards the use of cloud provider services instead of their own hardware and it pushes people towards the corporate social media instead their very own places on the internet. This in turn contributes towards the centralization of the internet within the hands of few big corpos, centralization that allows them to dictate the terms for smaller players and self-hosters and to determine what is even allowed on the internet in the first place.
Capitalism is pain
There is a capitalistic incentive to prolong the life of IPv4 protocols for as long as possible, and little incentive to transition towards IPv6. Not only the big players gain advantage from the issues of IPv4, they also would bear most of the costs of this techonogical transition.
Funnily enough, most of the current networking hardware in use handle both IPv4 and IPv6 just fine. Hell, most likely your computer, your phone, and whatever networking devices you have at your home handle both IPv4 and IPv6 too. The issue is infrastructure – the thing that we common folk have little influence on. It doesn't matter that you can have your own IPv6 address subnet when your ISP doesn't want to implement IPv6 in their own infrastructure. This means for IPv6 to become a proper thing, we have to wait until either the capitalist class decides to be nice or the politicians decide to force the capitalist class to properly implement IPv6. In some countries that forcing factor does show up, in others it seems really unlikely that any politician will even bother – but every host that is migrated to IPv6 is at least some progress towards a freer internet.
Let's just hope that we will be able to see IPv6 dominate over IPv4 within our lifetimes.