Everything You Need to Know About IPv4 Address Allocation
IPv4 is old, but it's here to stay

Although IPv4 is old tech, it's here to stay.
This means it's still worth learning how it works, in particular, how different devices on networks are allocated IPs
This article will teach you how IPv4 address allocation works with visual examples, because I believe networks are best taught visually, regardless of experience level.
So without further ado, let's dive in.
A quick diagram
It's worth starting with a simple diagram illustrating how IPv4 address allocation works.
If you don't understand any of the concepts and entities involved, they will be explained in the next few sections of the article.
TL;DR: This diagram shows how IP addresses are delegated from the big players to your home router:

Also, did you notice the error in the final IP address? IPv4 addresses cannot contain.333
because it's outside the 8-bit binary range of.255
. Well done if you spotted it. 😎
IANA
IANA stands for the Internet Assigned Numbers Authority.
IANA is a global organisation managing key elements of the Internet, such as IP Address Allocation and DNS root zone management.
We will focus on the function of IPv4 address allocation for the rest of the article.
In other words, we can say that IANA manages all IPv4 addresses, which can be represented in CIDR notation: 0.0.0.0/0
(More on this later)
That's around 4 billion addresses to allocate to devices around the world.
RIRs
Requesting IP address space directly from IANA isn’t practical, which is why RIRs exist.
RIR stands for Regional Internet Registry, and they receive large IP address blocks from IANA to distribute to different parts of the world.
There are only five in existence, and they're spaced out across the globe to cover most regions.
- ARIN - North America
- RIPE NCC - Europe, Middle East, parts of Central Asia
- APNIC - Asia Pacific
- LACNIC - Latin America, Caribbean
- AFRINIC - Africa
Each RIR will take their IP address block from IANA and share subblocks to large corporations and ISPs as needed.
CIDR Notation & Subnets
In the diagram, you will have noticed the funny notation on the IP addresses 82.0.0.0/8
. We call this Classless Inter-Domain Routing (CIDR) notation.
I won't go into too much detail, because that would go outside the scope of the article, so I will link to a useful GeeksforGeeks article explaining it very well.
DHCP
The diagram above explained IPv4 address from an architectural perspective, but how does a network device "actually" assign itself an IPv4 address?
The process is handled by the Dynamic Host Configuration Protocol (DHCP), and this protocol is used anytime a network device comes online.
Here's a diagram showing DHCP working for local IPv4 address assignment (192.168.1.165)
and public IPv4 address assignment (82.14.222.1
):

The protocol is as simple as shown in the diagram. It's this 4-way process that allows a device to receive its IPv4 address.
Without DHCP, you’d have to rely on manual address allocation, which scales terribly and creates address conflicts.
Conclusion
IPv4 address allocation is a great topic to understand, and I don't see many explanations dedicated to how this works from an architectural perspective before diving into the technical side of things.
I hope this article clarified how IP allocation works. If you have feedback or notice any errors, feel free to leave a comment down below.