70-240 in 15 minutes a week: Implementing, Managing, and Troubleshooting Network Protocols and Services Page 2
Understanding IP addressing is central to making sense of how TCP/IP works. First off, every single TCP/IP-based host needs a unique IP address to communicate properly on a network. This address is made up of two main parts, a network (or subnet) address and a host address. Determining which portion is which is actually the function of the subnet mask.
One thing you should be aware of is a marked shift in how we look at IP addresses in Windows 2000. Most of you are probably familiar with the idea of classful IP address, or IP addressing based on class of address. As a review, in a classful system, we had three main classes of address:
Class A - The first octet of addresses in this class always started between 1-126. Only the first octet designated the network. For example, 220.127.116.11 with default mask 255.0.0.0
Class B - The first octet of addresses in this class always started between 128-191. The first two octets designated the network. For example, 18.104.22.168 with default mask 255.255.0.0
Class C - The first octet of addresses in this class always started between 192-223. The first three octets designated the network. For example, 22.214.171.124 with default mask 255.255.255.0
Note: Use of the default mask means you are not subnetting the network (all hosts are logically part of the same big network)
The classful system of addressing really isn't used any more, mostly because it is terribly inefficient and wastes addresses. In its place, CIDR, or Classless Inter-Domain Routing took over. In CIDR, addresses don't really have a class (it is often referred to as classless addressing). Instead, addresses are looked at in conjunction with their associated mask value as a way of distinguishing between different networks. For example, your company might be provided with the address 126.96.36.199/20. The notation used in the previous example is referred to as CIDR notation. What it actually represents is a network ID, followed by the number of bits used in the subnet mask. In this case, it means that you have a network ID of 188.8.131.52, with a mask using 20 bits, or 255.255.240.0. If you still don't see it, try looking at this:
255.255.240.0 = 11111111 11111111 11110000 00000000
Essentially, the /20 means that the first 20 bits in the subnet mask are set to the binary value of 1. Note that in our example, it means that this company has a range of IP addresses available to them that starts at 184.108.40.206 and goes to 220.127.116.11. That means they have 4094 addresses at their disposal, instead of an entire Class B range, which would be 65534. So who manages giving you these ranges? Usually your ISP. The reason is that most companies actually don't need that many addresses, since they can use private address ranges internally. Only hosts that need to be accessible by systems on the public Internet need a 'real' IP address. By the way, if you have no idea how came up with the numbers above, don't worry, it is all going to be covered in the subnetting portion of the article.
I mentioned private IP addresses in the previous paragraph. These are ranges of IP addresses that have been reserved for internal usage on private networks and are not routable on the Internet. The private ranges of IP addresses are often misconceived to be classful, when in fact they are classless. The private ranges of IP addresses, as defined in RFC 1597 are:
10.0.0.0/8 (hosts from 10.0.0.1 to 10.255.255.254)
172.16.0.0/12 (hosts from 172.16.0.1 to 172.16.31.254)
192.168.0.0/16 (hosts from 192.168.0.1 to 192.168.255.254)
Since these ranges are private and can be used by anyone, they can be further subnetted to meet the needs of an organization. Note that Windows 2000 also uses another range, 169.254.0.0/16 for automatic private IP addressing (APIPA).
After all that, what I'm trying to get across to you is that the subnet mask helps us better understand the context of an IP address. You need to recognize that on its own, the IP address tells us nothing of how the network is configured. If I tell you I have a host with an IP address of 18.104.22.168 and a mask of 255.255.248.0 (which works out to /21), then I can also tell you that local hosts (or hosts on this same network/subnet) range in IP address from 22.214.171.124 to 126.96.36.199. If the range above was provided to me by my ISP, I could still subnet it further to meet my own subnetting needs. More on the details of how to subnet later...