IPv4 Addresses Explained

Run a Speed Test

IPv4 gives every device on the internet a 32-bit numeric label — 4.3 billion addresses that the world ran out of in 2011.

The 32-Bit Address Format

IPv4 (Internet Protocol version 4) was defined in RFC 791 in 1981. At its core, an IPv4 address is a 32-bit binary number used to uniquely identify a device on an IP network. In binary, it looks like 01011111000000010000000000000001 — 32 ones and zeros. That is difficult for humans to work with, so IPv4 addresses are written in dotted-decimal notation instead.

The 32 bits are divided into four groups of 8 bits (called octets). Each octet is converted to its decimal equivalent, giving a range of 0–255 for each section. The four decimal values are joined with dots: 93.184.216.34 is the address for example.com. Every device connected to the internet — or to any IP network — needs at least one IPv4 address to send and receive packets.

The total number of possible IPv4 addresses is 2 to the power of 32, which equals 4,294,967,296 — just over 4.3 billion. When this design was finalized, that seemed impossibly large. By the 1990s, it was clear it would not be enough.

Reading an IPv4 Address: Dotted Decimal Notation

Each of the four octets in an IPv4 address represents 8 binary bits. The leftmost octet is the most significant (highest value), and the rightmost is the least significant. In the address 192.168.1.100:

192 = 11000000 in binary, 168 = 10101000, 1 = 00000001, 100 = 01100100. Concatenated, the full 32-bit address is 11000000101010000000000101100100.

Every octet can range from 0 (binary 00000000) to 255 (binary 11111111). Addresses like 256.0.0.1 are invalid — no octet can exceed 255. This dotted-decimal format is used in routing tables, DNS A records, firewall rules, server configurations, and network diagnostic tools.

The Three Address Classes and CIDR

Early IPv4 divided the address space into classes based on the first few bits. Class A used the first 8 bits as the network portion (supporting 16 million hosts per network), Class B used 16 bits (65,536 hosts per network), and Class C used 24 bits (254 hosts per network). Large organizations received Class A allocations — entire /8 blocks of 16 million addresses — even if they only needed a fraction of them. This wasteful classful allocation accelerated address exhaustion.

CIDR (Classless Inter-Domain Routing), introduced in 1993, replaced the fixed class boundaries with variable-length subnet masks. A CIDR notation like 192.168.1.0/24 means the first 24 bits identify the network and the remaining 8 bits identify hosts, giving 254 usable host addresses. This allowed much more efficient allocation — organizations could receive exactly the size block they needed, not the next-largest class.

Special Address Ranges

RangePurpose
127.0.0.0/8Loopback — always refers to the local machine (127.0.0.1 = localhost)
10.0.0.0/8Private network (RFC 1918) — 16 million addresses for internal use
172.16.0.0/12Private network (RFC 1918) — 1 million addresses for internal use
192.168.0.0/16Private network (RFC 1918) — 65,536 addresses, most common for home networks
169.254.0.0/16Link-local (APIPA) — assigned automatically when DHCP fails
0.0.0.0Unspecified address — means "any address on this host" in socket bindings
255.255.255.255Limited broadcast — sent to all hosts on the local network segment

Why IPv4 Ran Out — and How NAT Extended It

IANA (the Internet Assigned Numbers Authority) allocated the last blocks of unassigned IPv4 addresses to the five regional registries in February 2011. The regional registries then exhausted their own pools over the following years — APNIC (Asia-Pacific) in 2011, RIPE NCC (Europe) in 2012, ARIN (North America) in 2015. The internet had officially run out of new IPv4 addresses.

NAT (Network Address Translation) dramatically extended IPv4's usable life by allowing many devices to share a single public IP address. Your home router has one public IPv4 address assigned by your ISP, but all the devices in your home — phones, laptops, smart TVs — each have a private IP address (from the 192.168.0.0/16 range, typically). The router translates between private addresses and the public address, keeping track of which internal device initiated each connection. Without NAT, IPv4 would have been completely unusable for consumer internet access by the mid-2000s.

Today, ISPs themselves use CGNAT (Carrier-Grade NAT), putting entire neighborhoods behind a single public IP address. This adds a second layer of NAT and causes problems for certain applications — peer-to-peer software, gaming, VoIP — that need inbound connections.

IPv4 vs IPv6: The Transition

IPv6 was designed specifically to solve the IPv4 address exhaustion problem, using 128-bit addresses that provide 340 undecillion unique addresses. Despite being standardized in 1998, IPv6 adoption has been slow — as of the mid-2020s, roughly 40–45% of Google users reach the site over IPv6. The rest still use IPv4.

The two protocols are not directly compatible — an IPv4 packet cannot be received by a pure IPv6 interface and vice versa. The transition relies on dual-stack deployments (running both protocols simultaneously) and translation mechanisms. IPv4 will remain critical infrastructure for many years, even as IPv6 gradually takes over new deployments.

Frequently Asked Questions

How many IPv4 addresses exist?

IPv4 uses 32-bit addresses, giving a theoretical maximum of 232 = 4,294,967,296 addresses (about 4.3 billion). Many ranges are reserved for private use, loopback, multicast, and other purposes, leaving fewer than 3.7 billion publicly routable addresses.

What is the difference between IPv4 and IPv6?

IPv4 uses 32-bit addresses (e.g., 192.168.1.1) supporting ~4.3 billion addresses. IPv6 uses 128-bit addresses (e.g., 2001:db8::1) supporting 340 undecillion addresses. IPv6 also eliminates NAT requirements, includes built-in autoconfiguration, and has a simplified header format.

What is 127.0.0.1?

127.0.0.1 is the loopback address — it always refers to your own machine. The entire 127.0.0.0/8 range is reserved for loopback. Connecting to 127.0.0.1 or localhost routes traffic internally without sending any packets onto the network.

What does 255.255.255.255 mean?

255.255.255.255 is the limited broadcast address — all 32 bits set to 1. Packets sent to this address are broadcast to all hosts on the local network segment. Routers do not forward limited broadcast packets beyond the local subnet.

Is IPv4 still used?

Yes — IPv4 remains dominant despite address exhaustion. Most internet traffic still flows over IPv4, often through NAT. IPv4 and IPv6 coexist in dual-stack deployments and IPv4 will remain in widespread use for many years.

What are the private IPv4 address ranges?

RFC 1918 defines three private IPv4 ranges: 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16. These addresses are not routable on the public internet and can be reused freely within private networks.

Related Guides

More From This Section