Back to blog

Paying rent on an IPv4 address

Somewhere in the last couple of years, the public IP address quietly became a product. Not a property of your server. A thing you rent, by the hour, for as long as you hold it.

Nobody sent you a memo about it. It showed up on the invoice.

The internet genuinely ran out

An IPv4 address is a 32-bit number. That is 4.29 billion of them, minus the large ranges reserved for private networks, multicast, and other housekeeping. All of it is allocated. IANA handed the last unallocated blocks to the regional registries in 2011, and the registries have been running on fumes and waiting lists ever since.

There is no more supply. There is only a secondary market — addresses now change hands between companies for real money, tens of dollars each, traded and brokered like any other scarce asset. Somewhere there is a spreadsheet where a /24 is a line on a balance sheet.

Which means that when a provider charges you for a public IPv4, they are passing on a cost that is actually real. This is one of the very few line items in cloud billing where the scarcity is physical rather than manufactured. Egress pricing is a margin decision. IPv4 pricing is arithmetic.

We charge for it too

Let us be direct, since this blog has a habit of it.

Kaligon bills for every public IPv4 address you hold, for as long as you hold it — attached to a running machine or not. Detach one from a VM and leave it parked in your account, and it keeps billing. That is deliberate, and we think it is correct: an address reserved to you is an address nobody else on earth can use, and the cost of holding it does not politely pause because your VM did.

So this is not a post about how we are different. On the fee itself, we are not.

Where the dishonesty actually lives

It is not in the charge. It is in the concealment. And there is a familiar catalogue of it:

  • The idle address that bills in silence. You destroy a VM, the address stays reserved to your account, and it quietly meters for months. Nobody tells you it is there. You find it during an audit, or you never find it at all.
  • The fee applied retroactively, across every address you already had, folded into a bill you long ago stopped reading line by line.
  • The charge you cannot see until it has already happened. No entry in the configurator, no number before you commit — just a new row on next month’s invoice with a name like Public IPv4, hourly.
  • Hygiene dressed up as generosity. Charging for unattached addresses “to encourage good practice”, while charging for the attached ones at the same time. Both meters run. Only one has a story attached to it.

The pattern is the one this whole industry keeps repeating. The number is rarely the problem. Finding out the number afterwards is the problem.

What we do instead

You choose how many addresses you want when you configure the machine — anywhere from zero to five — and the price sits right there in the configurator, next to the vCPUs and the RAM, before you have committed to anything. It bills per second, like every other resource we sell. It appears on the pricing page as a single flat rate per address: no tiers, no regional surcharge, no penalty rate for holding one in the wrong state.

If you do not need a public address, take zero. Pay nothing. The machine still exists, still runs, and still talks to everything else in your region.

And if you find yourself wondering why an entire industry is charging rent on a 32-bit integer rather than finishing the migration to the 128-bit one that has more addresses than there are grains of sand on Earth — yes. So are we.

Scarcity is a perfectly good reason to charge for something.

It is a terrible excuse for hiding what you charge.