IP Addressing
•
Basic Addressing
•
Working with Addresses
•
Summarization & Subnets
•
VLSM
•
Working with VLSM Networks
•
Classful Addressing
Basic Addressing
10.1.1.1
•
IP addresses are
written in
dotted
decimal
format.
•
Four sections are
separated by dots.
•
Each section contains
a number between 0
and 255.
Dots separate the sections
Basic Addressing
10.1.1.1
• Why is each section a number between 0 and 255?
• Computers operate in
binary, humans operate in decimal.
• Computers treat IP
addresses as a single large 32 digit binary number, but this is hard for people to do.
• So, we split them up into four smaller sections so we can remember and work with them better!
Dots separate the sections
Each section contains a number between 0 and 255
Basic Addressing
10.1.1.1
•
32/4 == 8.
•
2
8= 256.
•
But, computers
number starting at 0,
so to make a space of
256 numbers, we
number from 0 to 255.
00001010 00000001 00000001 00000001
8 8 8 8
32
Each 8 digit group represents a number
Basic Addressing
10.1.1.1
• Each device on a network is assigned an IP address.
• Each IP address has two fundamental parts:
• The network portion, which describes the physical wire the device is attached to.
• The host portion, which identifies the host on that wire.
• How can we tell the difference between the two sections?
00001010 00000001 00000001 00000001
N
et
w
o
rk
H
o
s
Basic Addressing
10.1.1.1
• The network mask shows us where to split the
network and host sections.
• Each place there is a 1 in the network mask, that binary digit belongs to the network portion of the
address.
• Each place there is a 0 in the network mask, that binary digit belongs to the host portion of the address.
00001010 00000001 00000001 00000001
N
et
w
o
rk
H
o
s
t
255.255.255.0
Basic Addressing
10.1.1.1
• An alternative set of terminology is:
• The network portion of the address is called the
prefix.
• The host portion of the address is called the host. • The network mask is
expressed as a prefix length, which is a count of the number of 1’s in the subnet mask.
00001010 00000001 00000001 00000001
P
re
fix
H
o
s
t
11111111 11111111 11111111 00000000
8 + 8 + 8 = 24
Basic Addressing
• The network address is the IP address with all 0’s in the host bits.
• The broadcast address is the IP address with all 1’s in the host bits.
• Packets sent to either address will be
delivered to all the
hosts connected to the wire.
10 1 1 0/24 00001010 000000011 00000001 00000000
prefix host
these bits are 0, so this is the network address
10 1 1 255/24 00001010 000000011 00000001 11111111
prefix host
Working with Addresses
•
Two of the most
common questions
you are going to face
when dealing with IP
addresses are:
• What’s the network?
• What’s the host?
•
How dow we figure
this out?
Working with Addresses (The Hard Way)
• First, convert the IP
address into binary. This is easier than it looks.
• Work with one octet at a time.
• Divide by two, farm out the remainder on the side.
• The bottom is the binary MSD, the top the binary LSD.
192
96 0
divide by 2
remainder
48 0
divide by 2
remainder
24 0
divide by 2
remainder
12 0
divide by 2
remainder
6 0
divide by 2
remainder
3 0
divide by 2
remainder
1 1
divide by 2
remainder
0 1
divide by 2
remainder Le
ft
R
ig
h
Working with Addresses (The Hard Way)
Write down the IP
address. 11000000 10101000 01100100 01010000192 168 100 80
If you have a prefix length, just wrote down the number of 1’s. If you have a network mask,
computer the binary as with the IP
address.
11111111 11111111 11111111 11000000
8 +8 +8 +2 == 26
AND these two. 11000000 10101000 01100100 01000000
Convert back to
dotted decimal. This is the network
address.
Working with Addresses (The Hard Way)
Write down the IP
address. 11000000 10101000 01100100 01010000192 168 100 80
If you have a prefix length, just wrote down the number of 1’s. If you have a network mask,
computer the binary as with the IP
address.
11111111 11111111 11111111 11000000
8 +8 +8 +2 == 26
NOR these two. 00000000 00000000 00000000 00010000
Convert back to
dotted decimal. This is the host address.
Working with Addresses (The Hard Way)
•
To convert from
binary to decimal, use
a simple chart.
•
Add the number
indicated for each 1
set in the binary
number.
128 1 128
64 0 0
32 1 32
16 0 0
8 1 8
4 0 0
2 0 0
1 0 0
Working with Addresses (The Easy Way)
• First, if you are using a network mask, convert it to a prefix length.
• For each octet in the
network mask that is 255, add 8 to the prefix length.
• For the one octet that isn’t 255, convert to binary and add the right number of bits--or use a chart!
255.255.255.192
8 +8 +8 +2 == 26
Working with Addresses (The Easy Way)
• Take the prefix length and divide by 8.
• Take the resulting number, and ignore those octets out of the IP address--these are all part of the network address!
• We’re going to use the remainder to find the
fourth octet of the network address.
26/8 == 3
(remainder 2)
192.168.100.80/26
These three octets are part of the network
Working with Addresses (The Easy Way)
• Take the remainder, and find the corresponding “multiple” on the chart; in this case, 64. • The largest multiple of 64 that
will fit into 80 is 64, so the network is 64.
• Add the three octets we “set aside” earlier, and the network (prefix!) is 192.168.100.64/26. • 80 - 64 == 16, so the host
address is 16.
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
64 x 1 == 64 64 x 2 == 128
Remainder == 2
Network is 64!
80 - 64 == 16 192.168.100.64/26
Working with Addresses (The Easy Way)
• How many hosts are in this network? The remainder tells us there are 64 addresses, minus the network and
broadcast addresses, so 62 hosts.
• To find the broadcast address, subtract 1 from the number of hosts, and add that number to the network address.
• The key is to work in octets, rather than trying to work with the entire IP address at once!
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
Remainder == 2
64 - 2 == 62 hosts
64 addresses
64 + (64 - 1) == 127
Working with Addresses (The Easy Way)
• What if the prefix length is less than 24?
• Take the prefix length and divide by 8.
• Take the resulting number, and ignore those octets out of the IP address--these are all part of the network address!
• We’re going to use the remainder to find the third
octet of the network address.
22/8 == 2
(remainder 6)
192.168.100.80/22
These three octets are part of the network
Working with Addresses (The Easy Way)
• Take the remainder, and find the corresponding “multiple” on the chart; in this case, 4. • The largest multiple of 64 that
will fit into 80 is 64, so the network is 64.
• Add the two octets we “set aside” earlier, and make any octets after the network 0’s (the fourth octet).
• The network (prefix!) is 192.168.100.0/22.
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
4 x 25 == 100 4 x 26 == 104
Remainder == 6
Third octet is 100! Set the fourth octet to 0.
Working with Addresses (The Easy Way)
• To find the number of
hosts, take the number of octets set to 0, which is 1 in this case (the fourth
octet), and multiply by 256.
• Next, take the number relating to the remainder from the chart, and
multiple this by the number we just found above.
• Subtract two.
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
4 x 256 == 1024 1024 – 2 == 1022 hosts
Remainder == 6
Working with Addresses (The Easy Way)
•
The key is to work in octets, rather than
Summarization & Subnets
• A single network address (prefix!) represents a set of hosts attached to a wire. • We can abstract this, and
simply say that a prefix
represents a set of reachable addresses.
• We can say that we’ve
“summarized” information
about the hosts attached to the physical wire by referring to the entire group as a single
Summarization & Subnets
• In effect, we’ve shortened the network part of the address
(prefix!), and lengthened the host portion of the address, in effect describing more hosts
(destinations) in a single address.
• If we can shorten the prefix length to describe multiple hosts with a single network address, why can’t we shorten the prefix length so a single network address describes two networks?
• We can! It’s called address summarization, or just
Summarization & Subnets
10.1.1.0 through
10.1.1.31. 00001010 00000001 00000001 0000000010 1 1 0
11111111 11111111 11111111 11000000
10.1.1.32 through
10.1.1.63. 00001010 00000001 00000001 0100000010 1 1 64
11111111 11111111 11111111 11000000
10.1.1.0 through 10.1.1.63, so it’s the same space!
00001010 00000001 00000001 00000000
10 1 1 0
11111111 11111111 11111111 10000000
Summarization & Subnets
• A network which is a part of another network is
called a subnet.
• There is another term, the supernet, but it’s
definition depends on whether you are using VLSM subnetting, or
VLSM
• VLSM: Variable Length
Subnet Masking
• It simply means that the entire IP address space is treated as one flat address space.
• Any prefix length is
allowed in the network at any point.
10.1.1.0/24
10.1.2.0/25
10.1.2.128/26
10.1.2.192/27
VLSM
•
At this point, you pretty much already know VLSM!
You already know how to find the network address,
broadcast address, and number of hosts in a
network.
•
Two other common problems in working with VLSM
networks remain:
• Building summary addresses from groups of networks. We won’t cover this here (maybe later in routing).
Working with VLSM Networks
• You have 5 subnets with the following numbers of hosts on them: 58, 14, 29, 49, 3
• You are given the address space 10.1.1.0/24.
• Determine what subnets you could use to fit these hosts into it.
• How to solve this:
• Start with the chart!
• Order the networks from the largest to the smallest.
• Find the smallest number in the chart that will fit the number of the largest number of hosts + 2.
Working with VLSM Networks
• 58, 14, 29, 49, 3: reorder to 58, 49, 29, 14, 3. Start with 58. • Smallest number larger than
(58 + 2) is 64. 64 is 2 bits.
• 24 bits of prefix length in the address space given, add 2 for 26.
• First network is 10.1.1.0/26. • The next network is 10.1.1.0
+ 64, so we start the next “round” at 10.1.1.64.
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
32 < (58 + 2) < 64
24 + 2 == 26
10.1.1.0/26 takes care of the first 58 hosts
Working with VLSM Networks
• Next block is 49 hosts.
• Smallest number larger than (49 + 2) is 64. 64 is 2 bits.
• 24 bits of prefix length in the address space given, add 2 for 26.
• We start this block at 10.1.1.64, so network is 10.1.1.64/26.
• The next network is 10.1.1.64 + 64, so we start the next
“round” at 10.1.1.128.
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
32 < (49 + 2) < 64
24 + 2 == 26
10.1.1.64/26 takes care of the next 49 hosts
Working with VLSM Networks
• Next block is 29 hosts.
• Smallest number larger than (29 + 2) is 32. 32 is 3 bits.
• 24 bits of prefix length in the address space given, add 3 for 27.
• We start this block at 10.1.1.128, so network is 10.1.1.128/27.
• The next network is 10.1.1.128 + 32, so we start the next “round” at 10.1.1.160.
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
16 < (29 + 2) < 32
24 + 3 == 27
10.1.1.128/27 takes care of the next 29 hosts
Working with VLSM Networks
• Next block is 14 hosts.
• Smallest number larger than (14 + 2) is 16. 16 is 4 bits (actually equal, but it still works!).
• 24 bits of prefix length in the address space given, add 4 for 28.
• We start this block at 10.1.1.160, so network is 10.1.1.160/27.
• The next network is 10.1.1.160 + 16, so we start the next “round” at 10.1.1.176.
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
(14 + 2) == 16
24 + 4 == 28
10.1.1.160/28 takes care of the next 14 hosts
Working with VLSM Networks
• Last block is 3 hosts.
• Smallest number larger than (3 + 2) is 8. 8 is 5 bits.
• 24 bits of prefix length in the address space given, add 5 for 29.
• We start this block at 10.1.1.176, so network is 10.1.1.176/29.
• This is the last block of hosts, so we’re done!
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
4 < (5 + 2) < 8
24 + 5 == 29
Working with VLSM Networks
• A subnet is any network which is “part of” a larger network space.
• A supernet is any network which covers a larger
space than a given
Classful Addressing
•
Classful subnetting is similar to VLSM,
with two more rules:
•
The IP address space is divided into
“classes,” with each class having a specific
“natural” prefix length. Each block of
address space is called a “major net.”
•
You cannot have more than one prefix length
Classful Addressing
Network Class Beginning Digits in Binary
Natural Prefix Length
Range of
Addresses Example Major Networks
Class A 10XX 8 1.0.0.0/8 through 126.0.0.0/8
11.0.0.0/8 100.0.0.0/8 120.0.0.0/8 Class B 110X 16 128.0.0.0/16
through 191.0.0.0/16
130.1.0.0/16 148.45.0.0/16 190.100.0.0/16 Class C 1110 24 192.0.0.0/24
through 223.0.0.0/24
Classful Addressing
• It’s illegal to have multiple network masks within a single major network.
• There cannot be a mix of / 24’s and /25’s in the
10.0.0.0/8 major network.
• There cannot be a mix of / 25’s and /26’s in the
11.0.0.0/8 network.
10.1.1.0/24
10.1.2.0/24
10.1.3.0/25
10.1.3.128/25
11.1.1.0/25
11.1.1.128/26
Working with Classful Addressing
•
You can find the network address,
broadcast address, and number of hosts
as we described earlier.
•
You can find the number of networks by
Working with Classful Addressing
• 10.1.1.0/25 is in the 10.0.0.0 class A major network.
• The natural prefix length for a class A network is /8.
• Subtract the natural prefix length from the actual
prefix length.
• Divide by 8, holding the remainder on the side.
10.1.1.0/25
10.0.0.0/8 is class A
Working with Classful Addressing
•
Find the remainder in
the power of two’s
chart.
•
Multiply the result,
256, and the number
from the power of
two’s chart.
•
Subtract 2.
8 7 6 5 4 3 2 1 1 2 4 8 16 32 64 128
(256 x 2) x 128 == 65536
10.1.1.0/25
10.0.0.0/8 is class A
25 – 8 == 17 17/8 == 2, 1 remaining
Working with Classful Addressing
•
Subnet 0
• The network with all the between the host and the
natural major net set to 0.
• This only exists in classful
addressing schemes.
10 0 0 0/24 00001010 00000000 00000000 00000000
natural network
natural host
configured
network these bits are 0, so this is subnet 0
Working with Classful Addressing
•
Broadcast Subnet
• The network with all the bits between the host and the natural major network set to 1.
• This only exists in calssful address schemes.
10 255 255 0/24 00001010 11111111 11111111 00000000
natural network
natural host
configured
network these bits are 1, so this is
the broadcast network
Working with Classful Addressing
• You have 5 subnets with the following numbers of hosts on them: 58, 14, 29, 49, 3
• You are given the address space 10.1.0.0/22.
• Determine what subnets you could use to fit these hosts into it.
• How to solve this:
• Start with the chart!
• Find the largest set of hosts.
• Find the smallest number in the chart that will fit the number of the largest number of hosts + 2.
Working with Classful Addressing
• A subnet is any prefix with a prefix length longer than the natural prefix length of the major network.
• A supernet is any prefix with a prefix length
shorter than the natural prefix length of the major network.
172.18.1.0/24 Subnet
10.2.0.0/9 Subnet
172.34.0.0/15 Supernet
192.168.44.64/25 Subnet
Private & Special Address Space
Address Space Range of Addresses
10.0.0.0/8 10.0.0.0 through 10.255.255.255 172.16.0.0/19 172.16.0.0 through 172.31.0.0
192.168.0.0/16 192.168.0.0 through 192.168.255.255
Network Class Beginning Digits in Binary Range of Addresses
Class D (Multicast)
11110x 224.0.0.0 through 239.255.255.255 Class E
Cisco IOS Show IP Route
2651A#sho ip route ....
Gateway of last resort is not set
C 208.0.12.0/24 is directly connected, Serial0/2 ....
S 208.1.10.0/24 [1/0] via 208.0.12.11 ....
144.2.0.0/16 is variably subnetted, 2 subnets, 2 masks S 144.2.2.0/24 [1/0] via 208.0.12.11
S 144.2.3.0/29 [1/0] via 208.0.12.11
C 208.0.7.0/24 is directly connected, Serial0/0
C 208.0.6.0/24 is directly connected, FastEthernet0/0 C 208.0.0.0/24 is directly connected, FastEthernet0/1 S 208.1.0.0/16 [1/0] via 208.0.12.11
two different prefix lengths under the same major network