The original design for the Internet required every organization to have one or more unique IP network numbers. In the early to mid-1990s, it became apparent that the Internet was growing so fast that all IP network numbers would be used. One solution to this problem was to increase the size of the IP address by developing IP Version 6 (IPv6). IPv6 has a much larger address structure than IPv4, allowing for trillions of IPv6 networks.
Three other IP functions have been introduced to reduce the need for IPv4 registered network numbers. These include Network Address Translation (NAT), along with a feature called private IP addressing, which allows organizations to use unregistered IP network numbers internally and still communicate well with the Internet; and Classless Interdomain Routing (CIDR), which allows Internet service providers (ISPs) to reduce the wasting of IP addresses by assigning a company a subset of a network number rather than the entire network. CIDR has been discussed in Section 3.1.4.
Section 6.1: Private IP Addressing
Most organizations have a number of computers that will never be connected to the Internet. These computers do not need globally unique IP addresses but must be unique within the organization's network. Thus, an organization could use any network number(s) it wanted, regardless of whether those network number(s) are in use on the Internet or not. However, a set of IP addresses from Class A, Class B and Class C has been set aside for use in private networks and has been defined in RFC 1918. This RFC defines a set of networks that not be assigned to any organization as a registered network number to be used on the Internet. These network numbers allow organizations to use unregistered network numbers that are not used by anyone else in the public Internet. However, no organization is allowed to advertise these networks using a routing protocol on the Internet.
TABLE 6.1: The Private IP Address Space defined by RFC 1918
|Range of IP Addresses||Number of Networks||Class|
|10.0.0.0 to 10.255.255.255||1||A|
|172.16.0.0 to 172.31.255.255||16||B|
|192.168.0.0 to 192.168.255.255||256||C|