When one host sends data to another, that data has both a MAC destination address and an IP address and an IP destination ( Layer 2 destination and Layer 3 destination).
Up to this point we’ve been working with L2 destination addresses as opposed to L3 destination. We’re now going to move up a layer in the OSI model to the addresses that frankly we use much more often in our commands than L2 addresses.
L2 address and everything we’ve looked at works so seamlessly and so well that we don’t even think about it a lot and you tend to think when data goes over there to a remote destination, then it just has one destination address. But keep in mind that we’re looking at two addresses there.

The IP address format we’ve used so far (10.1.1.1/24, etc.) is an IP Version 4 address (IPV4). We also have IP Version 6 to deal with, and we’ll do just that later in this course. To avoid any confusion, unless O mention IPV6 specifically, we’re talking IPV4.
The routing process is all about moving packets across the network in the most efficient manner possible. After a look at general IP addressing info, we’ll take an illustrated look at how routers make a decision on which path from source to destination is the best path or what happens if there is no path at all.
IP Addressing and Binary Conversions
Every device on our network has an IP address, and the laptop I’m writing this post on is no exception, as this partial output of ipconfig shows.

Let’s concentrate on that IP address and subnet mask. We can determine the network this particular host belongs to by doing a bit-by-bit comparison of the address and the mask (to see what network or subnet a particular IP address is on) , and we do that by converting both IP address and the subnet mask to binary strings.
Example: Let’s convert the IP address 192.168.1.100 to a binary string from its current dotted decimal format( each one of those numbers is a separate octet ):
You need to remember this row of numbers : (doubling the number ‘1’ seven time s from right to left)

Now we ask ourselves : “ Can I subtract the number at the top from my current remainder?”
- 192 – 128 = 64
- 64 – 64 = 0

192.168.1.100 = 11000000 10101000 00000001 01100100
255.255.255.0 = 11111111 11111111 11111111 00000000
The subnet mask tells us where the network bits and host bits are in the IP address. He network bits are indicated by a 1 in the subnet mask, and the host bits by 0.
The first 24 bits of the IP address are the network portion of the address, and when we add those bits up, we get 192.168.1.0. Tack on the subnet mask, and the network that host resides on is 192.168.1.0 255.255.255.0 .
You can also express the mask using prefix notation, which is simply a slash followed by the number of consecutive 1s in the mask ( /24 in this case )
- 255.255.255.0 using dotted decimal
- /24 using prefix notation
The IP Address Classes
In September 1981, the following IP address classes were defined in RFC 791. RFCs are Request For Comments, technical proposals and/or documentation. I’ll admit they’re not always the most exciting reading in the world, but it’s worth taking some time to read the RFC that deals with the particular networking subject you’re studying.
Address classes are indicated by the first number in the address. Until they become second nature, a little memorization may be in order, and you should be ready to identify the classes a given address belongs to on test day.
These are the classes and addresses that can be designed to network hosts:
- Class A : 1 – 126
- Class B : 128 – 191
- Class C : 192 – 223
A few numbers from 1- 255 missing there, right? Those belong to reserved address classes that can’t be assigned to hosts.
- Loopbacks: 127, reserved for host loopbacks, NOT Cisco router loopbacks.
- Class D: 224 – 239, reserved for multicasting
- Class E: 240 – 255, reserved for future use and occasionally referred to as “experimental addresses”
In turn, each of the three public address classes has its own default network mask, default number of network bits, and default number of host bits. Again, this info will become second nature to you, but memorizing it for now is a good idea.
- Class A: Network mask 255.0.0.0, 8 network bits, 24 host bits
- Class B: Network mask 255.255.0.0, 16 network bits, 16 host bits
- Class C: Network mask 255.255.255.0, 24 network bits, 8 host bits
The RFC 1918 Private address classes
If you’ve had more than one networking job, you’ve likely noticed that hosts at different sites use similar IP addresses.

RFC 1918 private address classes allow us to reuse certain IP addresses all over the world. It’s possible because we have certain address ranges that are non routable. So these hosts by default can’t just go out to the internet. They can’t even get out of their local area network because the router is going to look at their addresses and say “I don’t rout these packets. I’m not sending these out of here!”. That was OK back in the day when you actually had networks that were designed not to let people go out to the internet.
You may be thinking that non-Internet accessing hosts are a rarity in today’s networks, and you’re right. We can help such hosts reach the outside world by translating a non-routable address to a routable address by using Network Address Translation (NAT) and Port Address Translation (PAT). We’ll hit those topics later; for now, let’s concentrate on these three private address ranges:
- Class A: 10.0.0.0 – 10.255.255.255
- Class B: 172.16.0.0 – 172.31.255.255
- Class C: 192.168.0.0 – 192.168.255.255
Be ready to identify these private classes by the full range as shown above or with dotted decimal / prefix notation masks.
- Class A: 10.0.0.0 255.0.0.0 (10.0.0.0 /8)
- Class B: 172.16.0.0 255.240.0.0 (172.16.0.0 /12)
- Class C: 192.168.0.0 255.255.0.0 (192.168.0.0 /16)