Private addressing and Automatic or Dyanmic addressing were developed in response to a
dwindling number of available public addresses. To resolve the issue, in 1996,
IANA and IETF came up with private
addressing, which allows
organizations to use a large address space internally on their network while
using only a few public addresses, rather than using only public addresses.
For this to happen, IANA requires that some public addresses be
removed from the global pool. These addresses were either pulled back or
voluntarily surrendered by address holders. The addresses available for usage
include 1 Class A network, 16 Class B networks, and 255 Class C networks, which
are summarized in the table below. These addresses are now widely used by all
organizations on the Internet.
These addresses and others can be found in RFC5735, Special Use IPv4 Addresses.
Private IP Address Ranges
|
|
Address Class
|
Address Range
|
Class A
|
10.0.0.0–10.255.255.255
|
Class B
|
172.16.0.0–172.31.255.255
|
Class C
|
192.168.0.0–192.168.255.255
|
Private addresses are
not allowed to be routed out to the Internet, so devices using private
addresses cannot communicate directly with devices on the Internet. To make
private IP addressing functional and resolve this issue, at least one public
address is required, which will be used with Network Address Translation (NAT)
or Port Address Translation (PAT). So a company using private addresses
internally still requires at least one address to connect their private network
with the Internet.
Microsoft took a leading role in defining RFC3927 Dynamic Configuration of IPv4
Link-Local Addresses. This defines the process that computers should take
in situations where there are no other methods of applying dynamic IP address
assignments. This process was created to deal with situations where you do not
want to — or cannot — manually assign static IP addresses and there is no
Dynamic Host Configuration Protocol (DHCP) server on your network to
automatically assign addresses.
The solution was to use another IP address range — in this case,
a Class B network of 169.254.0.0 — to let IP hosts choose their own address. In
this range, there are approximately 65,000 addresses from which the IP host can
choose, so the basic process for the host is as follows:
1. Randomly choose an address from the range 169.254.0.1–169.254.255.254.
2. Send an Address Resolution Protocol (ARP) request for the MAC address
that has the chosen address to eliminate the chance of duplicate IP address
conflicts.
If no response is
received to the ARP request, no other computer is using that IP address so the
host can start using the IP address chosen in Step 1.
The preceding steps outline the Automatic Private IP Addressing
(APIPA) process. When two or more computers on the same data link support the
use of, and are configured to use, APIPA, these hosts can communicate with each
other. This process was created to simplify ad
hoc (or temporary) networks
in which TCP/IP is the primary networking protocol because APIPA eliminates the
need to manually assign addresses to hosts.