Availability of Internet Addresses
30 May 2007
There are various addressing schemes on the internet - IPv4 and the new, still not very well adopted IPv6, MAC addresses, etc. I wonder how the number of each of these fares when stacked up against the world's population of ~7 billion people.
# IPv4 Addresses
An IPv4 address consists of 4 numbers, each between 0 and 256, separated by dots (e.g. 52.11.108.247). The theoretical maximum number of addresses is therefore 256 to the 4th power:
2564 = 256 x 256 x 256 x 256 = 4,294,967,296
If we divide this by our 7 billion people, we get:
4,294,967,296 / 7,000,000,000 = 0.61
This is 0.61 IP addresses per person, or an IP address per 0.61 / 1 = 1.63 people.
Eek, that doesn't seem to be enough! Remember that every home has a public IP, and each internet connected mobile device (mobile phones, etc) also has a public IP.
# IPv6 Addresses
IPv6 was created to help alleviate the issue of a lack of IPv4 addresses. An IPv6 address consists of 6 groups of two hexadecimal (0-9 or a-f) digits, separated by colons (e.g. 16:a2:aa:73:60:4b). The theoretical maximum number of addresses is therefore 16 to the 16th power:
1616 = 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 = 18,446,744,073,709,600,000
If we divide this by our 7 billion people, we get:
18,446,744,073,709,600,000 / 7,000,000,000 = 2,635,249,153
This is around 2.6 billion addresses per person - much better! It's interesting that IPv5 doesn't really seem to have taken off as an alternative to IPv4 as of yet - a lot of infrastructure supports IPv6, but wherever public IPv6 addresses are given out it's alongside an IPv4 address.
# MAC Addresses
MAC addresses are used for both Ethernet and Bluetooth, and are unique IDs allotted to all network communication devices (e.g. network cards, wireless devices), and consist of 6 pairs of hexadecimal characters, separated by colons (e.g. 05:AB:F5:20:94:9C). The theoretical maximum number of addresses is therefore 16 to the 12th power:
1612 = 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 x 16 = 281,474,976,710,656
If we divide this by our 7 billion people, we get:
281,474,976,710,656 / 7,000,000,000 = 40,211
This is about 40 thousand addresses per person - which seems acceptable.