|
|
An IP address is a 32-bit number written in dotted decimal notation: four 8-bit fields (octets) converted from binary to decimal numbers, separated by dots. The first part of an IP address identifies the network on which the host resides, while the second part identifies the particular host on the given network. The network number field is called the network prefix. All hosts on a given network share the same network prefix but must have a unique host number. In classful IP, the class of the address determines the boundary between the network prefix and the host number.
IP host addresses are divided into three different address classes: Class A, Class B, and Class C. Each class fixes the boundary between the network prefix and the host number at a different point within the 32-bit address. Class D addresses are reserved for multicast IP.
Because Class A addresses have 16,777,214 host addresses, and Class B addresses 65,534 hosts, you can use subnet masking to break these huge networks into smaller subnets.
If you need large numbers of addresses on your network, and they do not need to be routed on the Internet, you can use private IP addresses that the Internet Assigned Numbers Authority (IANA) recommends. The following address ranges are designated as private networks that should not be advertised:
A subnet mask allows you to convert a single Class A, B, or C network into multiple networks. With a subnet mask, you can create an extended network prefix that adds bits from the host number to the network prefix. For example, a Class C network prefix always consists of the first three octets of the IP address. But a Class C extended network prefix uses part of the fourth octet as well.
Subnet masking is easier to understand if you use binary notation instead of dotted decimal. The bits in the subnet mask and the Internet address have a one-to-one correspondence. The bits of the subnet mask are set to 1 if the corresponding bit in the IP address is part of the extended network prefix. The bits in the mask are set to 0 if the bit is part of the host number.
For example, if you have the Class B address 129.10.0.0 and you want to use the entire third octet as part of the extended network prefix instead of the host number, you need to specify a subnet mask of 11111111.11111111.11111111.00000000. This subnet mask converts the Class B address into the equivalent of a Class C address, where the host number consists of the last octet only. If you want to use only part of the third octet for the extended network prefix, then specify a subnet mask like 11111111.11111111.11111000.00000000, which uses only 5 bits of the third octet for the extended network prefix.
You can write a subnet mask as a dotted decimal mask or as a /bits ("slash bits") mask. In the first example, for a dotted decimal mask, you convert each binary octet into a decimal number: 255.255.255.0. For a /bits mask, you add the number of 1s: /24. In the second example, the decimal number is 255.255.248.0 and the /bits is /21.
You can also supernet multiple Class C networks into a larger network by using part of the third octet for the extended network prefix. For example, 192.168.0.0/20.
To determine the subnet mask based on how many hosts you want, see the following table:
| Hosts1 | /Bits Mask | Dotted Decimal Mask |
|---|---|---|
16,777,216 | /8 | 255.0.0.0 Class A Network |
65,536 | /16 | 255.255.0.0 Class B Network |
32,768 | /17 | 255.255.128.0 |
16,384 | /18 | 255.255.192.0 |
8,192 | /19 | 255.255.224.0 |
4,096 | /20 | 255.255.240.0 |
2,048 | /21 | 255.255.248.0 |
1,024 | /22 | 255.255.252.0 |
512 | /23 | 255.255.254.0 |
256 | /24 | 255.255.255.0 Class C Network |
128 | /25 | 255.255.255.128 |
64 | /26 | 255.255.255.192 |
32 | /27 | 255.255.255.224 |
16 | /28 | 255.255.255.240 |
8 | /29 | 255.255.255.248 |
4 | /30 | 255.255.255.252 |
Do not use | /31 | 255.255.255.254 |
1 | /32 | 255.255.255.255 Single Host Address |
| 1The first and last number of a subnet are reserved, except for /32, which identifies a single host. |
The following procedures describe how to determine the network address to use with a subnet mask for a Class C-size and a Class B-size network.
For a network between 2 and 254 hosts, the fourth octet falls on a multiple of the host addresses, starting with 0.
For example, the 8-host subnets of 192.168.0 are:
Subnet with Mask /29 (255.255.248.0) | Address Range1 |
|---|---|
|
|
|
|
|
|
|
|
| 1The first and last address of a subnet are reserved. In the first subnet example, you cannot use 192.168.0.0 or 192.168.0.8. |
To determine the network address to use with the subnet mask for a network between 254 and 65,534 hosts, you need to determine the value of the third octet for each possible extended network prefix. For example, you might want to subnet an address like 10.1.x.0, where the first two octets are fixed because they are used in the extended network prefix, and the fourth octet is 0 because all bits are used for the host number.
For example, 65,536 divided by 4096 hosts equals 16.
Therefore, there are 16 subnets of 4096 addresses each in a Class B-size network.
Step 2 Determine the multiple of the third octet value by dividing 256 (the number of values for the third octet) by the number of subnets:
In this example, 256/16 = 16.
The third octet falls on a multiple of 16, starting with 0.
Therefore, the 16 subnets of the network 10.1 are:
Subnet with Mask /20 (255.255.240.0) | Address Range1 |
|---|---|
|
|
|
|
|
|
|
|
| 1The first and last address of a subnet are reserved. In the first subnet example, you cannot use 10.1.0.0 or 10.1.15.255. |
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Posted: Wed Sep 27 10:13:46 PDT 2000
Copyright 1989-2000©Cisco Systems Inc.