Networking exercise
Subnetting
A Class A, B, or C TCP/IP network can be further divided, or subnetted, by a system administrator. This
becomes necessary as you reconcile the logical address scheme of the Internet (the abstract world of IP
addresses and subnets) with the physical networks in use by the real world.
A system administrator who is allocated a block of IP addresses may be administering networks that are
not organized in a way that easily fits these addresses. For example, you have a wide area network with
150 hosts on three networks (in different cities) that are connected by a TCP/IP router. Each of these three
networks has 50 hosts. You are allocated the class C network 192.168.123.0. (For illustration, this address is
actually from a range that is not allocated on the Internet.) This means that you can use the addresses
192.168.123.1 to 192.168.123.254 for your 150 hosts.
Two addresses that cannot be used in your example are 192.168.123.0 and 192.168.123.255 because
binary addresses with a host portion of all ones and all zeros are invalid. The zero address is invalid
because it is used to specify a network without specifying a host. The 255 address (in binary notation, a
host address of all ones) is used to broadcast a message to every host on a network. Just remember that
the first and last address in any network or subnet cannot be assigned to any individual host.
You should now be able to give IP addresses to 254 hosts. This works fine if all 150 computers are on a
single network. However, your 150 computers are on three separate physical networks. Instead of
requesting more address blocks for each network, you divide your network into subnets that enable you
to use one block of addresses on multiple physical networks.
In this case, you divide your network into four subnets by using a subnet mask that makes the network
address larger and the possible range of host addresses smaller. In other words, you are 'borrowing' some
of the bits usually used for the host address, and using them for the network portion of the address. The
subnet mask 255.255.255.192 gives you four networks of 62 hosts each. This works because in binary
notation, 255.255.255.192 is the same as 1111111.11111111.1111111.11000000. The first two digits of the
last octet become network addresses, so you get the additional networks 00000000 (0), 01000000 (64),
10000000 (128) and 11000000 (192). (Some administrators will only use two of the subnetworks using
255.255.255.192 as a subnet mask. For more information on this topic, see RFC 1878.) In these four
networks, the last 6 binary digits can be used for host addresses.
Using a subnet mask of 255.255.255.192, your 192.168.123.0 network then becomes the four networks
192.168.123.0, 192.168.123.64, 192.168.123.128 and 192.168.123.192. These four networks would have as
valid host addresses: 192.168.123.1-62 192.168.123.65-126 192.168.123.129-190 192.168.123.193-254
Remember, again, that binary host addresses with all ones or all zeros are invalid, so you cannot use
addresses with the last octet of 0, 63, 64, 127, 128, 191, 192, or 255.
You can see how this works by looking at two host addresses, 192.168.123.71 and 192.168.123.133. If you
used the default Class C subnet mask of 255.255.255.0, both addresses are on the 192.168.123.0 network.
However, if you use the subnet mask of 255.255.255.192, they are on different networks; 192.168.123.71 is
on the 192.168.123.64 network, 192.168.123.133 is on the 192.168.123.128 network.