Internet Protocol
Classes - Network & Host ID
Introduction
Every protocol suite defines some type of addressing that
identifies computers and networks. IP Addresses are no exception to
this "rule". There are certain values that an IP Address can
take and these have been defined by the IEEE committee (as most things).
A simple IP Address is a lot more than just a number.
It tells us the network that the workstation is part of and the node
ID. If you don't understand what I am talking about, don't let it worry
you too much because we are going to analyse everything here :)
IP Address Classes and Structure
When the IEEE committee sat down to sort out the range
of numbers that were going to be used by all computers, they came out
with 5 different ranges or, as we call them, "Classes"
of IP Addresses and when someone applies for IP Addresses they are given
a certain range within a specific "Class"
depending on the size of their network.
To keep things as simple as possible, let's first have
a look at the 5 different Classes:

In the above table, you can see the 5
Classes. Our first Class is A and
our last is E. The first 3 classes ( A,
B and C) are
used to identify workstations, routers, switches and other devices whereas
the last 2 Classes ( D
and E) are reserved for special use.
As you would already know an IP Address consists of 32
Bits, which means it's 4 bytes long. The first octec (first 8 Bits or
first byte) of an IP Address is enough for us to determine the Class
to which it belongs. And, depending on the Class to which the IP Address
belongs, we can determine which portion of the IP Address is the Network
ID and which is the Node ID.
For example, if I told you that the first octec of an
IP Address is "168" then, using
the above table, you would notice that it falls within the 128-191
range, which makes it a Class
B IP Address.
Understanding the Classes
We are now going to have a closer look at the 5 Classes.
If you remember earlier I mentioned that companies are assigned different
IP ranges within these classes, depending on the size of their network.
For instance, if a company required 1000 IP Addresses it would probably
be assigned a range that falls within a Class
B network rather than a Class A
or C.
The Class
A IP Addresses were designed for large networks, Class
B for medium size networks and Class
C for smaller networks.
Introducing Network ID and Node ID concepts
We need to understand the Network ID and Node ID concept
because it will help us to fully understand why Classes exist. Putting
it as simply as possible, an IP Address gives us 2 pieces of valuable
information:
1) It tells us which network
the device is part of (Network
ID).
2)
It identifies that unique device within the network (Node
ID).
Think of the Network ID as the suburb you live in and
the Node ID your street in that suburb. You can tell exactly where someone
is if you have their suburb and street name. In the same way, the Network
ID tells us which network a particular computer belongs to and the Node
ID identifies that computer from all the rest that reside in the same
network.
The picture below gives you a small example to help you
understand the concept:
Explanation:
In the above picture, you can see a small network. We
have assigned a Class C IP Range for this network. Remember that Class
C IP Addresses are for small networks. Looking now at Host A, you will
see that its IP Address is 192.168.0.2.
The Network
ID portion of this IP Address is in blue,
while the Host
ID is in orange.
I suppose the next question someone would ask is: How
do I figure out which portion of the IP Address is the Network
ID and which is the Host
ID ?
That's what we are going to answer next.
The Network and Node ID
of each Class
The network Class helps us determine how the 4 byte, or
32 Bit, IP Address is divided between network and node portions.
The table below shows you (in binary) how the Network
ID and Node
ID changes depending on the Class:

Explanation:
The table above might seem confusing at first but it's
actually very simple. We will take Class A as an example and analyse
it so you can understand exactly what is happening here:
Any Class
A network has a total of 7
bits for the Network
ID (bit 8
is always set to 0) and 24 bits for the Host ID. Now all we need to
do is calculate how much 7 bits is:
2 to the power
of 7 = 128
Networks and for the hosts : 2
to the power of 24 = 16,777,216
hosts in each Network,
of which 2 cannot be used because one is the Network
Address and the other is the Network
Broadcast address (see the table towards
the end of this page). This is why when we calculate the "valid"
hosts in a network we always subtract "2". So if I asked you
how many "valid" hosts can you have a on Class A Network,
you should answer 16,777,214 and NOT 16,777,216.
Below you can see all this in one picture:

The same story applies for the other 2 Classes we use,
that's Class B
and Class C,
the only difference is that the number of networks and hosts changes
because the bits assigned to them are different for each class.
Class B networks have 14
bits for the Network
ID (Bits 15, 16 are set and can't be changed) and 16
bits for the Host
ID, that means you can have up to '2
to the power of 14' = 16,384
Networks and '2
to the power of 16' = 65,536
Hosts in each Network,
of which 2 cannot be used because one is the Network
Address and the other is the Network
Broadcast address (see the table towards
the end of this page). So if I asked you how many "valid"
hosts can you have a on Class B Network, you should answer 65,534 and
NOT 65,536.

Class C networks have 21
bits for the Network
ID (Bits 22, 23, 24 are set and can't be changed) and
8 bits for
the Host ID,
that means you can have up to '2
to the power of 21' = 2,097,152
Networks and '2
to the power of 8' = 256
Hosts in each Network,
of which 2 cannot be used because one is the Network
Address and the other is the Network
Broadcast address (see the table
towards the end of this page). So if I asked you how many "valid"
hosts can you have a on Class C Network, you should answer 254 and NOT
256.
Now, even though we have 3
Classes of IP Addresses that we can use, there are some
IP Addresses that have been reserved for special use. This doesn't mean
you can't assign them to a workstation but in the case that you did,
it would create serious problems within your network. For this reason
it's best that you avoid using these IP Addresses.
The following table shows the IP Addresses that you should
avoid using:
| IP
Address |
Function |
| Network 0.0.0.0 |
Refers to the default
route. This route is to simplify routing tables used by IP. |
| Network 127.0.0.0
|
Reserved for Loopback. The Address 127.0.0.1 is
often used to refer to the local host. Using this Address, applications
can address a local host as if it were a remote host.
|
|
|
| IP Address with all host
bits set to "0" (Network
Address) e.g 192.168.0.0 |
Refers to the actual network itself.
For example, network 192.168.0.0 can be used to identify network
192.168. This type of notation is often used within routing tables. |
| IP Address with all node
bits set to "1" (Subnet
/ Network Broadcast) e.g 192.168.255.255 |
IP Addresses with all node bits
set to "1" are local network broadcast addresses and
must NOT be used.
Some examples: 125.255.255.255
(Class A) , 190.30.255.255
(Class B), 203.31.218.255
(Class C). See "Multicasts"
& "Broadcasts" for
more info.
|
| IP Address with all
bits set to "1" (Network Broadcast) e.g 255.255.255.255 |
The IP Address with all bits set to "1" is a broadcast
address and must NOT be used. These are destined for
all nodes on a network, no matter what IP Address they might
have.
|
Now make sure you keep to the above guidelines because
you're going to bump into a lot of problems if you don't !
IMPORTANT NOTE:
It is imperative that every network, regardless of Class and
size, has a Network
Address (first IP Address e.g 192.168.0.0 for
Class C network) and a Broadcast
Address (last IP Address e.g 192.168.0.255 for
Class C network), as mentioned in the table and explanation
diagrams above, which cannot
be used.
So when calculating available IP Addresses
in a network, always remember to subtract 2 from the number
of IP Addresses within that network.
|
That all pretty much covers this section.
Next, is the Subnetting section, and before you proceed,
make sure you're comfortable with the new concepts and material we have
covered, otherwise subnetting will be very hard to understand.
Next
- Subnetting Introduction |