Network Administration: Classifying IP Addresses

When the original designers of the IP protocol created the IP addressing scheme, they could have assigned an arbitrary number of IP address bits for the network ID. The remaining bits would then be used for the host ID.

For example, suppose that the designers decided that half of the address (16 bits) would be used for the network, and the remaining 16 bits would be used for the host ID. The result of that scheme would be that the Internet could have a total of 65,536 networks, and each of those networks could have 65,536 hosts.

In the early days of the Internet, this scheme probably seemed like several orders of magnitude more than would ever be needed. However, the IP designers realized from the start that few networks would actually have tens of thousands of hosts.

Suppose that a network of 1,000 computers joins the Internet and is assigned one of these hypothetical network IDs. Because that network will use only 1,000 of its 65,536 host addresses, more than 64,000 IP addresses would be wasted.

As a solution to this problem, the idea of IP address classes was introduced. The IP protocol defines five different address classes: A, B, C, D, and E. Each of the first three classes, A–C, uses a different size for the network ID and host ID portion of the address. Class D is for a special type of address called a multicast address. Class E is an experimental address class that isn’t used.

The first four bits of the IP address are used to determine into which class a particular address fits, as follows:

  • If the first bit is zero, the address is a Class A address.

  • If the first bit is one and if the second bit is zero, the address is a Class B address.

  • If the first two bits are both one and if the third bit is zero, the address is a Class C address.

  • If the first three bits are all one and if the fourth bit is zero, the address is a Class D address.

  • If the first four bits are all one, the address is a Class E address.

The following table summarizes the details of each address class.

IP Address Classes
Class Address Number Range Starting Bits Length of Network ID Number of Networks Hosts
A 1–126.x.y.z 0 8 126 16,777,214
B 128–191.x.y.z 10 16 16,384 65,534
C 192–223.x.y.z 110 24 2,097,152 254