IPv4 uses -bit addresses, giving roughly billion unique addresses. That seemed like plenty in the s.
By the s, all IPv4 blocks were allocated to Regional Internet Registries (ARIN, RIPE, APNIC, LACNIC, AFRINIC).
Why we ran out:
- Explosive growth of internet-connected devices
- Inefficient early allocations
- Every smartphone, laptop, IoT device needs connectivity
Solutions:
- IPv6 provides -bit addresses
- NAT lets multiple devices share one public IP
NAT became practical because IPv6 adoption was slow.