The early specification of the IP recognized that it would be necessary to divide one’s given allotment of IP addresses into manageable subnetworks. Such division allows for distributed management, added security (fewer hosts can potentially snoop network traffic), and the use of multiple networking technologies (Ethernet, Token Ring, ATM, etc.). IP also enables convenient partitioning of the physical portions of a network across physical and geographical boundaries. To provide the capability to locally define networks, IP addresses are considered as having two distinct parts: the part that specifies a subnet and the one that specifies a network interface. (Remember that IP addresses are assigned to network interfaces, not host computers, which can have multiple interfaces. For this discussion, however, we assume a one-to-one relationship between hosts and interfaces.) The boundary between the network and host portions of an IP address is delineated by a subnet mask, required by the TCP/IP configuration of any network interface. Like the IP address, the subnet mask is simply a 32-bit number specified in four 8-bit segments using dotted quad decimal notation. The familiar class A, B, and C networks have these subnet masks:
- Class A: 255.0.0.0 (binary 11111111.00000000.00000000.00000000)
8-bit network address and 24-bit host address
- Class B: 255.255.0.0 (binary 11111111.11111111.00000000.00000000)
16-bit network address and 16-bit host address
- Class C: 255.255.255.0 (binary 11111111.11111111.11111111.00000000) ...