IP Addressing
By
Dr. Abdulkarim Oloyede
[Link]. Elect. (BUK, Nigeria), [Link] (York, UK), Ph.D. (York, UK), [Link], MIEEE
Lecture 2022
IP Addresses
IP Addresses:
Classful Addressing
CONTENTS
• INTRODUCTION
• CLASSFUL ADDRESSING
• Different Network Classes
• Subnetting
• Classless Addressing
• Supernetting
•CIDR (classless Interdomain Routing)
INTRODUCTION
What is an IPv4 Address?
An IPv4 address is a
32-bit
address.
The IP addresses
are
unique.
Address Space
…………..
addr1 …………..
addr15
addr2 ………….. …………..
…………..
addr41 addr226
addr31
………….. …………..
Address space rule
…………..
addr1 …………..
addr15
Theaddr2 …………..
address space in a protocol
…………..
…………..
That uses N-bits to define an
Address is: addr41 addr226
addr31
………….. 2 N …………..
IPv4 address space
The address space of IPv4 is
232
or
4,294,967,296.
Binary Notation
01110101 10010101 00011101 11101010
Figure 4-1
Dotted-decimal notation
Hexadecimal Notation
0111 0101 1001 0101 0001 1101 1110 1010
75 95 1D EA
0x75951DEA
Example 1
Change the following IP address from binary
notation to dotted-decimal notation.
10000001 00001011 00001011 11101111
Solution
[Link]
Example 2
Change the following IP address from
dotted-decimal notation to binary
notation:
[Link]
Solution
01101111 00111000 00101101 01001110
Example 3
Find the error in the following IP Address
[Link]
Solution
There are no leading zeroes in
Dotted-decimal notation (045)
Example 3 (continued)
Find the error in the following IP Address
[Link]
Solution
In decimal notation each number <= 255
301 is out of the range
Example 4
Change the following binary IP address
Hexadecimal notation
10000001 00001011 00001011 11101111
Solution
0X810B0BEF or 810B0BEF16
CLASSFUL
ADDRESSING
Figure 4-2
Occupation of the address space
In classful addressing the address space is
divided into 5 classes:
A, B, C, D, and E.
Figure 4-3
Finding the class in binary notation
Figure 4-4
Finding the address class
Example 5
Show that Class A has
231 = 2,147,483,648 addresses
Example 6
Find the class of the following IP addresses
00000001 00001011 00001011 11101111
11000001 00001011 00001011 11101111
Solution
•00000001 00001011 00001011 11101111
1st is 0, hence it is Class A
•11000001 00001011 00001011 11101111
1st and 2nd bits are 1, and 3rd bit is 0 hence, Class C
Figure 4-5
Finding the class in decimal notation
Example 7
Find the class of the following addresses
[Link]
[Link]
Solution
•[Link]
1st byte = 158 (128<158<191) class B
•[Link]
1st byte = 227 (224<227<239) class D
IP address with appending port
number
l [Link]:25
l the for octet before colon is the IP address
l The number of colon (25) is the port number
Figure 4-6
Netid and hostid
Figure 4-7
Blocks in class A
Millions of class A addresses
are wasted.
Figure 4-8
Blocks in class B
Many class B addresses
are wasted.
Figure 4-9
Blocks in class C
The number of addresses in
a class C block
is smaller than
the needs of most organizations.
Class D addresses
are used for multicasting;
there is only
one block in this class.
Class E addresses are reserved
for special purposes;
most of the block is wasted.
Network Addresses
The network address is the first address.
The network address defines the network to the
rest of the Internet.
Given the network address, we can find the
class of the address, the block, and the range of
the addresses in the block
In classful addressing,
the network address
(the first address in the block)
is the one that is assigned
to the organization.
Example 8
Given the network address [Link], find the
class, the block, and the range of the addresses
Solution
The 1st byte is between 128 and 191.
Hence, Class B
The block has a netid of 132.21.
The addresses range from
[Link] to [Link].
Mask
• A mask is a 32-bit binary number.
• The mask is ANDeD with IP address to get
• The bloc address (Network address)
• Mask And IP address = Block Address
Figure 4-10
Masking concept
Figure 4-11
AND operation
The network address is the
beginning address of each block.
It can be found by applying
the default mask to
any of the addresses in the block
(including itself).
It retains the netid of the block
and sets the hostid to zero.
Default Mak
l Class A default mask is [Link]
l Class B default mask is [Link]
l Class C Default mask [Link]
Subnetting/Supernetting
and
Classless Addressing
CONTENTS
• SUBNETTING
• SUPERNETTING
• CLASSLESS ADDRSSING
SUBNETTING
IP addresses are designed with
two levels of hierarchy.
Figure 5-1
A network with two levels of
hierarchy (not subnetted)
Figure 5-2
A network with three levels of
hierarchy (subnetted)
Note
l Subnetting is done by borrowing bits from the
host part and add them the network part
Figure 5-3
Addresses in a network with
and without subnetting
Figure 5-5
Default mask and subnet mask
Finding the Subnet Address
Given an IP address, we can find the
subnet address the same way we found the
network address. We apply the mask to the
address. We can do this in two ways:
straight or short-cut.
Straight Method
In the straight method, we use binary
notation for both the address and the
mask and then apply the AND operation
to find the subnet address.
Example 9
What is the subnetwork address if the
destination address is [Link] and the
subnet mask is [Link]?
Solution
11001000 00101101 00100010 00111000
11111111 11111111 11110000 00000000
11001000 00101101 00100000 00000000
The subnetwork address is [Link].
Short-Cut Method
** If the byte in the mask is 255, copy
the byte in the address.
** If the byte in the mask is 0, replace
the byte in the address with 0.
** If the byte in the mask is neither 255
nor 0, we write the mask and the address
in binary and apply the AND operation.
Example 10
What is the subnetwork address if the
destination address is [Link] and the
mask is [Link]?
Solution
See next slide
Figure 5-6
Solution
Figure 5-7
Comparison of a default mask and
a subnet mask
The number of subnets must be
a power of 2.
Example 11
A company is granted the site address
[Link] (class C). The company needs
six subnets. Design the subnets.
Solution
The number of 1s in the default
mask is 24 (class C).
Solution (Continued)
The company needs six subnets. This number
6 is not a power of 2. The next number that is
a power of 2 is 8 (23). We need 3 more 1s in
the subnet mask. The total number of 1s in
the subnet mask is 27 (24 + 3).
The total number of 0s is 5 (32 - 27). The
mask is
Solution (Continued)
11111111 11111111 11111111 11100000
or
[Link]
The number of subnets is 8.
The number of addresses in each subnet is 25 (5 is the
number of 0s) or 32.
See Next slide
Figure 5-8
Example 3
Example 12
A company is granted the site address
[Link] (class B). The company needs
1000 subnets. Design the subnets.
Solution
The number of 1s in the default mask is 16
(class B).
Solution (Continued)
The company needs 1000 subnets. Thi
number is not a power of 2. The next numbe
that is a power of 2 is 1024 (210). We need 10
more 1s in the subnet mask.
The total number of 1s in the subnet mask i
26 (16 + 10).
The total number of 0s is 6 (32 - 26).
Solution (Continued)
The mask is
11111111 11111111 11111111 11000000
or
[Link].
The number of subnets is 1024.
The number of addresses in each subnet is 26
(6 is the number of 0s) or 64.
See next slide
Figure 5-9
Example 4
Figure 5-10
Variable-length subnetting
SUPERNETTING
What is suppernetting?
l Supernetting is the opposite of subnetting
l In subnetting you borrow bits from the host
part
l Supernetting is done by borrowing bits from
the network side.
l And combine a group of networks into one
large supernetwork.
Figure 5-11
A supernetwork
Rules:
p The number of blocks must be a power of 2 (1,
2, 4, 8, 16, . . .).
p The blocks must be contiguous in the address
space (no gaps between the blocks).
p The third byte of the first address in the
superblock must be evenly divisible by the number
of blocks. In other words, if the number of blocks is
N, the third byte must be divisible by N.
Example 5
A company needs 600 addresses. Which of
the following set of class C blocks can be
used to form a supernet for this company?
[Link] [Link] [Link]
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
[Link] [Link] [Link] [Link]
Solution
1: No, there are only three blocks.
2: No, the blocks are not contiguous.
3: No, 31 in the first block is not divisible by 4.
4: Yes, all three requirements are fulfilled.
In subnetting,
we need the first address of the
subnet and the subnet mask to
define the range of addresses.
In supernetting,
we need the first address of
the supernet
and the supernet mask to
define the range of addresses.
Figure 5-12
Comparison of subnet, default,
and supernet masks
Example 13
We need to make a supernetwork out of 16
class C blocks. What is the supernet mask?
Solution
We need 16 blocks. For 16 blocks we need to change four 1s to 0s in
the default mask. So the mask is
11111111 11111111 11110000 00000000
or
[Link]
Example 14
A supernet has a first address of [Link] and a
supernet mask of [Link]. A router receives three
packets with the following destination addresses:
[Link]
[Link]
[Link]
Which packet belongs to the supernet?
Solution
We apply the supernet mask to see if we can find
the beginning address.
[Link] AND [Link] è [Link]
[Link] AND [Link] è [Link]
[Link] AND [Link] è [Link]
Only the first address belongs to this supernet.
Example 15
A supernet has a first address of [Link] and a
supernet mask of [Link]. How many blocks are in
this supernet and what is the range of addresses?
Solution
The supernet has 21 1s. The default mask has 24 1s. Since
the difference is 3, there are 23 or 8 blocks in this supernet.
The blocks are [Link] to [Link]. The first
address is [Link]. The last address is [Link].
CLASSLESS
ADDRESSING
it was decided that all this class-based stuff had been a bad idea in the first place, and we’d
be better off without it (IPv6 doesn't have classes at all. Lesson learned.).The new scheme,
using bit-masks, is called Classless Inter-Domain Routeing (CIDR) and it replaced the
previous class-based system.
The only real drawback is that instead of just having to send someone
32-bits (the network address) to tell them about a new network, you
now have to send them both a 32-bit network address and a bit mask,
and routers need some additional memory to store the bit masks.
However, once you’ve got classless addressing, there is a very useful
technique you can use to make the job of routers on the Internet easier.
This is variable-length subnet masking (VLSM). The idea is that the
network mask corresponding to a certain IPv4 address doesn’t have to
be the same length everywhere on the Internet. Different routers can
store different subnet masks for the same IPv4 address.
Number of Addresses in a Block
There is only one condition on the number
of addresses in a block; it must be a power
of 2 (2, 4, 8, . . .). A household may be given
a block of 2 addresses. A small business
may be given 16 addresses. A large
organization may be given 1024 addresses.
Figure 5-14
Slash notation
Slash notation is also called
CIDR
notation.
Example 16
A small organization is given a block with the beginning
address and the prefix length [Link]/29 (in slash
notation). What is the range of the block?
Solution
l The beginning address is [Link]. To
find the last address we keep the first 29 bits
and change the last 3 bits to 1s.
l Beginning: 11001111 00010000 00100101 00011000
l Ending : 11001111 00010000 00100101 00011111
l There are only 8 addresses in this block.
Example 16 cont’d
We can find the range of addresses in Example 17 by
another method. We can argue that the length of the suffix
is 32 - 29 or 3. So there are 23 = 8 addresses in this block.
If the first address is [Link], the last address is
[Link] (24 + 7 = 31).
A block in classes A, B, and C
can easily be represented in slash
notation as
A.B.C.D/ n
where n is
either 8 (class A), 16 (class B), or
24 (class C).
Example 17
What is the network address if one of the addresses is
[Link]/27?
Solution
The prefix length is 27, which means that we must
keep the first 27 bits as is and change the remaining
bits (5) to 0s. The 5 bits affect only the last byte.
The last byte is 01010010. Changing the last 5 bits
to 0s, we get 01000000 or 64. The network address
is [Link]/27.
Example 18
An organization is granted the block [Link]/26. The
organization needs to have four subnets. What are the subnet
addresses and the range of addresses for each subnet?
Solution
The suffix length is 6. This means the total number
of addresses in the block is 64 (26). If we create
four subnets, each subnet will have 16 addresses.
Solution (Continued)
Let us first find the subnet prefix (subnet mask). We need four
subnets, which means we need to add two more 1s to the site prefix.
The subnet prefix is then /28.
Subnet 1: [Link]/28 to [Link]/28.
Subnet 2 : [Link]/28 to [Link]/28.
Subnet 3: [Link]/28 to [Link]/28.
Subnet 4: [Link]/28 to [Link]/28.
Figure 5-15
Example 18 cont’d
Example 19
An ISP is granted a block of addresses starting with
[Link]/16. The ISP needs to distribute these addresses to three
groups of customers as follows:
1. The first group has 64 customers; each needs 256 addresses.
2. The second group has 128 customers; each needs 128 addresses.
3. The third group has 128 customers; each needs 64 addresses.
Design the subblocks and give the slash notation for each subblock.
Find out how many addresses are still available after these
allocations.
Solution
Group 1
For this group, each customer needs 256 addresses. This means th
suffix length is 8 (28 = 256). The prefix length is then 32 - 8 = 24.
01: [Link]/24 è[Link]/24
02: [Link]/24 è[Link]/24
…………………………………..
64: [Link]/24è[Link]/24
Total = 64 ´ 256 = 16,384
Solution (Continued)
Group 2
For this group, each customer needs 128 addresses. This means the
suffix length is 7 (27 = 128). The prefix length is then 32 - 7 = 25
The addresses are:
001: [Link]/25 è[Link]/25
002: [Link]/25 è[Link]/25
………………..
128: [Link]/25 è[Link]/25
Solution (Continued)
Group 3
For this group, each customer needs 64 addresses. This means the
suffix length is 6 (26 = 64). The prefix length is then 32 - 6 = 26.
001:[Link]/26 è[Link]/26
002:[Link]/26 è[Link]/26
…………………………
128:[Link]/26 è[Link]/26
Total = 128 ´ 64 = 8,192
Solution (Continued)
Number of granted addresses: 65,536
Number of allocated addresses: 40,960
Number of available addresses: 24,576
Figure 5-13
Variable-length blocks
Example 20
A user with an allocation of [Link] / 23 builds
a network with the following topology:
If there are 180 nodes on subnet m, 50 on subnet p, 40 on subnet q and 60 on subnet n,
suggest a suitable allocation of IPv4 addresses to the various subnets, and deduce a
simple routeing table for router A.
Consider the situation if only class A, class B or class
C addresses were available. Assume
everyone who wanted a class A address had one
million hosts, if everyone who wanted a
class B address had one thousand hosts, and
everyone who wanted a class C address had ten
hosts. How many hosts would there be on the Internet
when all available address space had
been allocated? What proportion of the total available
address space does this make?
There are 126 possible class-A addresses (all '0's and
all '1's are special cases). So that's 126
million hosts.
There are 16382 class-B addresses, so that's another
16,382,000 hosts.
There are 2097150 class-C addresses, so that's
20,971,500 hosts.
Total = 163,353,500.
If everyone used their limit to the full, you would have
126 * (2^24-2) + 16382 * (2^16-2) +
2097150 * (2^8-2) = 3.7202e+009.
Hence, 4.3% of the theoretical capacity of IPv4 would
be being used.
Which of the following addresses lies
in the range [Link] / 26?
[Link]
[Link]
[Link]
[Link]
To match [Link]/26 requires that the
first 26 bits of the address are
[Link]. So
that's anywhere from [Link] to
[Link]. The only given address in
that range is
[Link]