In this article, we are sharing our study of IP address allocation and usage by continents over the past 10 years. The data was collected using IP2Location[1] database from 2007 to 2016. We will discuss several relevant topics i.e. IPv4 address class range, registry, assignment and exhaustion.

Overview of IP Address and Class Scheme

In Internet Protocol version 4 (IPv4), IP addresses[2] consist of 32 bits, which can support 4,294,967,296 (2^32) unique host interface addresses in theory. We represent a 4-bytes IP address by the dotted-decimal notations which use a decimal number for each byte, such as 192.168.1.1.

An IP address can be divided into 2 parts, a network part and a host part. The network part of an IP address identifies the network to which the host is attached. Therefore, all the interfaces attached on the same network have the same network prefix. The size of the network prefix is not always the same due to different classes. The IP addressing scheme divides the total IP address space into five classes; A, B, C, D and E. We can determine in advance which address ranges belong to each class by examining just a few bits of the address.

Regional Internet Registries (RIR) and Assignment

Originally, all the IPv4 address spaces were managed directly by the Internet Assigned Numbers Authority (IANA)[3], a non-profit organization. In 1992, the Internet Engineering Task Force (IETF) recommended that Internet number resources be managed by subsidiary organizations at a regional level. Several Regional Internet Registries (RIRs) were established to assume this regional allocation and management role of IP address assignment. Today, there are five RIRs – APNIC, ARIN, RIPE NCC, LACNIC and AFRINIC which are responsible for all continents.

Hilbert Curve Mapping

We were using Hilbert curve[4] mapping to represent the topology of IP address assignment by continents. In a nutshell, Hilbert curve is a continuous fractal space-filling curve that preserves the locality, and the locality was the main reason that we selected this mapping concept for the charts.

The Hilbert curve map is square in shape because it is a matrix in the form of the power of 2. The map contained the information of IPs ranging from 0.0.0.0 to 255.255.255.255 arranged into 256 blocks, in 16 x 16 matrix form. In the matrix, each block contains the geolocation information of the 1st octet of the IP address. Now, we have learned that each block represents the information of an octet range (8.x.x.x for instance). Please take note that the position of the blocks is not in a linear sequence from left to right due to the fractal space-filling as described in Hilbert curve. We have made an overlay of the tracing so that you can understand where the octets are positioned on the map.

The 1st position [0,0] contains the information of the 0.x.x.x octet range, followed by [0,1] that contains the 1.x.x.x octet range and then [0,2] which contains the 14.x.x.x octet range, so on and so forth. You may have noticed that the adjacent blocks are neither arranged in row-by-row nor column-by-column basis. To better illustrate the Hilbert curve filling, please see the below navigation pattern.

Chart 1: Hilbert Curve

We grouped the geolocation information into 7 continents, namely the North America, South America, Europe, Africa, Asia, Oceania and Antarctica. There are additional two groups, Unassigned and Reserved IP addresses. Unassigned group refers to the IP addresses that have not been allocated at the time the data was compiled. Reserved IP refers to the IP ranges which were reserved by IETF.

Chart 2: IP Address Space using Hilbert Curve

IPv4 Address Exhaustion

IPv4 address exhaustion is the depletion of the pool of unallocated IPv4 addresses. At the time of writing, all RIRs except AFRINIC have declared the exhaustion of IP address pool within their registries.

In the 2016 map, we observed some unassigned IP address ranges, but it could be due to reservation by RIRs for future use such as for IPv6 transition. The only class A which is still available is 102.0.0.0/8 managed by AFRINIC.

Explosive Growth in Asia

Based on the maps from 2007-2012 and Table 1, we have observed a significant increase in the number of IP addresses assigned in Asia by APNIC. In recent years, this trend has decreased due to the exhaustion of the IP address pool.

Table 1: Year to Year Changes in IP Address Allocation

However, we have also observed usage of IP address in Asia from ranges assigned to other registries such as RIPE NCC, ARIN and AFRINIC. In some cases, it was due to the IP address owner’s business activities such as running a distributed CDN or multi-regional data centers. It is also likely that Asian organizations renting IP address ranges from LIRs due to strong demand of IPv4 address and exhaustion in APNIC.

Time Lapse IP Address Map

We have created an animated GIF so that you could see how IP address allocations have evolved over the years from 2007 to 2016.