Subnet & Classless Address Extensions

advertisement
Content
Subnet & Classless Address
Extensions
{
{
{
Linda Wu
{
{
(CMPT 471 • 2003-3)
Reference: chapter 10
Notes-4
Motivation
Problem: network growth will
exhaust IPv4 address space
eventually
{ Solution: minimize the number of
addresses used
z
z
Notes-4
CMPT 471 • 2003-3
2
Transparent Routers
{
z
Motivation
Transparent routers
Proxy ARP
Subnet addressing
Classless addressing
{
{
{
Avoid assigning netid whenever possible
Share one netid among multiple
networks: transparent router, proxy ARP,
subnet addressing
Arbitrary assignment: classless
addressing
CMPT 471 • 2003-3
3
{
{
Notes-4
A special router T, called transparent router,
connects WAN and LAN
Other hosts and routers on the WAN do not
know T’s existence
The LAN does not have its own netid; the hosts
in the LAN are assigned unused addresses in
the WAN
T sends packets from the WAN to the
appropriate host in the LAN
T accepts packets from the LAN and routes
them across WAN to the destination
CMPT 471 • 2003-3
4
1
Transparent Routers (cont.)
{
Advantages
z
z
{
Proxy ARP
{
z
One netid is shared by multiple networks:
fewer network addresses are required
Support load balancing
z
{
z
Address Resolution Protocol
Maps IP addresses to physical addresses
Proxy
z
Disadvantages
z
ARP
Only work with WAN that has a large
address space
Do not provide all the same services as
conventional routers
an application that closes a straight path between
2 networks and prevents the crackers from
obtaining internal addresses and details of a
private network
Main network
A
B
C
R
Router running proxy ARP
D
E
Hidden network
Notes-4
CMPT 471 • 2003-3
5
Notes-4
Proxy ARP (cont.)
{
z
z
z
{
{
{
Notes-4
{
Main network and hidden network: share the
same netid
A router, R, connects these 2 networks
R knows which hosts lie on which physical
networks, and maintains the illusion that only
one network exists
A in the main network sends packets to E in
the hidden network
{
7
Advantages
z
z
{
z
z
Notes-4
One netid is shared by multiple networks
Proxy ARP can be added to a single
router without disturbing other hosts or
routers on the network
Disadvantages
z
A broadcasts ARP request for E’s physical addr.
R responses ARP request by sending back its own
physical addr.
A sends the packet destined for E to R
R forwards the packet destined for E over the hidden
network
CMPT 471 • 2003-3
6
Proxy ARP (cont.)
How proxy ARP works?
z
CMPT 471 • 2003-3
The network must use ARP for address
resolution
Cannot be generalized to more complex
network topology
Rely on managers to maintain tables of
machines and addresses manually
CMPT 471 • 2003-3
8
2
Subnet Addressing
Subnet Addressing (cont.)
Subnet addressing, subnetting
{ A network is divided into several
smaller subnets
{ Each subnet has its own subnet
address
{ Subnets appear as a single network
to the rest of the internet
{ The router attached to the subnets
knows the network is physically
divided into subnets
{
{
Notes-4
CMPT 471 • 2003-3
141.14.5.1 141.14.5.2
141
Subnet: 141.14.5.0
netid: 141.14.0.0
Class B
9
Notes-4
14 • 191
netid
•
•
hostid
netid
14
•
192
netid
•
z
subnetid
subnetid
192
hostid
864
Exchange
-
8902
IP
address
Connection
Hierarchy in telephone number
Notes-4
CMPT 471 • 2003-3
R2
Subnet: 141.14.128.0
To the rest of the internet
10
mask
With subnetting
( 405 )
141.14.128.2
a 32-bit binary number that gives the network
address when bitwise ANDed with an IP address
e.g.
IP address: 123.24.3.1 (class B)
Mask: 11111111 11111111 00000000 00000000
IP & mask = 123.24.0.0 (network address)
hostid
Area code
141.14.128.1
Mask
z
Hierarchy addressing:
Without subnetting
141
Subnet: 141.14.64.0
CMPT 471 • 2003-3
{
10
141.14.64.1 141.14.64.5 141.14.64.7
Subnet Addressing (cont.)
Subnetting address
•
141.14.5.3
R1
Subnet Addressing (cont.)
{
Subnetting Example
11
Notes-4
Bitwise
AND
CMPT 471 • 2003-3
Network
address
12
3
Subnet Addressing (cont.)
{
Subnet Addressing (cont.)
Default masks
{
Subnet mask
Masks for class A, B, C addresses
z 1s: preserve the netid
z 0s: set the hostid to 0
z Number of 1s is predetermined: 8/16/24
Class
Binary mask
z
z
z
Change some of the leftmost 0s in the
default mask to 1s to make a subnet mask
Preserve netid and subnetid, set hostid to 0
Contiguous subnet mask (recommended)
11111111 11111111 11000000 00000000
z
Dotted-decimal
mask
Noncontiguous subnet mask
11111111 11111111 00110000 001000000
A
11111111 00000000 00000000 00000000 255.0.0.0
Default mask: 255.255.0.0
B
11111111 11111111 00000000 00000000 255.255.0.0
11111111
C
11111111 11111111 11111111 00000000 255.255.255.0
Subnet mask: 255.255.224.0
11111111
Notes-4
CMPT 471 • 2003-3
13
Notes-4
Subnet Addressing (cont.)
A company is granted network address
200.16.64.0 (class C). It needs 6 subnets.
Design the subnet.
141.14.64.0
z
Network address
z
z
72 Æ 010 01000
z
224 Æ 111 00000
z
010 00000 (64)
Notes-4
CMPT 471 • 2003-3
14
Subnet design example
z
Bitwise
AND
00000000
CMPT 471 • 2003-3
{
255.255.224.0
IP address
11111111 111 00000
00000000
Subnet Addressing (cont.)
Subnet mask
141.14.72.24
11111111 00000000
15
Notes-4
# of 1s in the default mask = 24 (class C)
6 subnets < 23: need 3 more 1s in the subnet
mask
Total # of 1s in the subnet mask: 24 + 3 = 27
Total # of 0s in the subnet mask: 8 – 3 = 5
(hostid bits)
Mask is: 11111111 11111111 11111111 11100000,
or, 255.255.255.224
# of hosts per subnet: 25 = 32
CMPT 471 • 2003-3
16
4
Subnet Addressing (cont.)
z
Subnet Addressing (cont.)
Subnet address ranges
1st:
2nd:
3rd :
4th :
5th :
6th :
7th :
8th :
200.16.64.0
200.16.64.32
200.16.64.64
200.16.64.96
200.16.64.128
200.16.64.160
200.16.64.192
200.16.64.224
Notes-4
~
~
~
~
~
~
~
~
{
z
200.16.64.31
200.16.64.63
200.16.64.95
200.16.64.127
200.16.64.159
200.16.64.191
200.16.64.223
200.16.64.255
CMPT 471 • 2003-3
z
{
z
17
Notes-4
First mask (26 1s)
62 hosts
255.255.255.192
62 hosts
Second mask (27 1s)
30 hosts
255.255.255.224
30 hosts
CMPT 471 • 2003-3
Hosts per subnet (class B)
1 (20)
65534 (216 – 2)
2
2 (22-2)
16382 (214 – 2)
254
(28-2)
254 (28-2)
No single subnetid partition works for all
organizations
An organization may select subnetid partition on
a per-network basis; all hosts and routers
attached to the network must follow the partition
CMPT 471 • 2003-3
18
Subnet Addressing (cont.)
{
Subnet broadcasting
z
Subnet broadcast address
{
2 bits in subnetid? No, only 4 subnets.
3 bits in subnetid? No, at most 32 hosts per
subnets.
62 hosts
router
# of subnets
0
Notes-4
A class C site has 5 subnets with host numbers:
60, 60, 60, 30, 30
z
Subnet bits
Variable-length subnetting
z
Variable-length subnetting example
z
All 1s or all 0s subnet is not recommended
All 1s and all 0s host addresses are reserved
8
Subnet Addressing (cont.)
{
Fixed-length subnetting
{
z
hostid is all 1s
3-tuple form: {netid, subnetid, -1}, “-1”
means “all 1s”.
{netid, -1, -1}
Means “deliver packet to all hosts with
network address netid, even if they are in
separate physical subnets”
{ Operationally, such broadcasting make
sense only if routers that interconnect the
subnets agree to propagate the packets
to all subnets
{
19
Notes-4
CMPT 471 • 2003-3
20
5
Classless Addressing
{
{
{
Classless Addressing (cont.)
Also called supernetting
Combine several address blocks to create
a larger address range: supernet
Instead of using a single netid for
multiple subnets, it allows a network’s
addresses to span multiple netids
z
{
z
CMPT 471 • 2003-3
21
The routers outside of the supernet treat
each block separately
{ Each router has N entries in its routing table,
N = # of blocks; therefore, increase the size
of the routing table tremendously
Notes-4
Classless Addressing (cont.)
CMPT 471 • 2003-3
Choose address blocks based on a set
of rules so that each router has only
one entry in the routing table: required
by CIDR (Classless Inter-Domain
Routing)
{
Blocks defining in different addressing
schemes
Block: [first address, last address]
z Classful address
one block, default mask is always known
the first address only can define the block
Subnetting
{ the first address in the subblock (subnet) and
subnet mask define the subblock
Supernetting
{ the first address of the supernet and supernet
mask define the superblock
{ IP address & supernet mask = first address
(network address)
{
# of blocks is a power of 2 (1, 2, 4, 8 …)
{ The size of each block is a power of 2
{ The blocks are contiguous in the address
space (no gaps between the blocks)
{ The size of supernet = (# of blocks) *
(size of each block): a power of 2
{ The first address can be evenly divisible
by supernet size
CMPT 471 • 2003-3
22
Classless Addressing (cont.)
{
{
Notes-4
Choose address blocks randomly
{
E.g., an organization that needs 1000 addresses
can be granted 4 class C blocks instead of 1 class
B block
X.Y.32.0 ~ X.Y.32.255
X.Y.33.0 ~ X.Y.33.255
X.Y.34.0 ~ X.Y.34.255
X.Y.35.0 ~ X.Y.35.255
Notes-4
z
Address block assigning
z
z
23
Notes-4
CMPT 471 • 2003-3
24
6
Classless Addressing (cont.)
{
Classless Addressing (cont.)
Supernet mask
z
z
{
The reverse of a subnet mask
Has less 1s than the default mask for this class
Supernet mask examples
z
Subnet mask Divide 1 network into 8 subnets
11111111 11111111 11111111
111 00000
Default mask (class C)
Block #: 16 = 24
Change the last 4 1s in the default mask (class
C) to 0s to get the supernet mask:
11111111 11111111 11111111 00000000
Subnetting
11111111 11111111 11111111
000
A supernet is made out of 16 class C
blocks, what is its supernet mask?
00000
11111111 11111111 11110000 00000000
Supernetting
Supernet mask Combine 8 networks into 1 supernet
11111111 11111111 11111 000 000 00000
Notes-4
CMPT 471 • 2003-3
25
Notes-4
Classless Addressing (cont.)
z
{
{
Notes-4
{
27
Slash notation (CIDR notation):
A.B.C.D/n
z
First address
205.16.37.44 AND 255.255.248.0
= 205.16.32.0
(11001101 00010000 00100000 00000000)
Mask 11111111 11111111 11111000 00000000,
1s: 21, 0s: 11
Last address: 205.16.39.255 (11001101
00010000 00100111 11111111)
CMPT 471 • 2003-3
26
Classless Addressing (cont.)
A supernet with mask 255.255.248.0
includes an address 205.16.37.44, what is
the address range?
{
CMPT 471 • 2003-3
z
z
z
z
Notes-4
For identifying a CIDR block
A.B.C.D: an IP address
n: # of bits that are shared in every
address in the block, i.e., # of 1s in the
mask
Prefix: common part of the address range
(similar to netid), prefix length = n
Suffix: varying part of the address range
(similar to hostid), suffix length = 32 - n
CMPT 471 • 2003-3
28
7
Classless Addressing (cont.)
{
Classless Addressing (cont.)
Relationship between mask and prefix
length
/n
/1
/2
/3
/8
Mask
128.0.0.0
192.0.0.0
224.0.0.0
255.0.0.0 (class A)
/n
/12
/16
/24
/32
{
z
Mask
255.240.0.0
255.255.0.0 (class B)
255.255.255.0 (class C)
255.255.255.255
CMPT 471 • 2003-3
130.34.12.64/26. It needs to have 4 subnets.
What is the subnet address and address range
for each subnet?
{ Prefix length = 26, suffix length = 6 Æ # of
addresses in the block: 26 = 64
{ 4 subnets Æ 16 addresses per subnet
{ 4 subnets Æ subnet prefix /28 (2 more 1s
in the mask)
29
Notes-4
Classless Addressing (cont.)
z
{
1st: 130.34.12.64/28 ~ 130.34.12.79/28
{ 2nd: 130.34.12.80/28 ~ 130.34.12.95/28
{ 3rd: 130.34.12.96/28 ~ 130.34.12.111/28
{ 4th: 130.34.12.112/28 ~ 130.34.12.127/28
{
130.34.12.96/28
R2
R3
30
Reserved CIDR blocks
z
z
z
130.34.12.112/28
130.34.12.80/28
R1
CMPT 471 • 2003-3
Classless Addressing (cont.)
Subnet address ranges
130.34.12.64/28
Increase supernet prefix length (n) to
define the subnet prefix length
Example: an organization is granted the block
Class A: a.b.c.d/8
Class B: a.b.c.d/16
Class C: a.b.c.d/24
Notes-4
Subnetting with classless addressing
z
Private addresses, unroutable addresses
Used with private networks
Never assigned to networks in the global
Internet
Router in the global Internet knows they
are reserved addresses, and can detect it
if a packet destined to the reserved
address accidentally reaches the Internet
Site: 130.34.12.64/26
Notes-4
CMPT 471 • 2003-3
31
Notes-4
CMPT 471 • 2003-3
32
8
Classless Addressing (cont.)
{
Notes-4
Reserved CIDR blocks: list
Prefix
First address
Last address
10/8
10.0.0.0
10.255.255.255
172.16/12
172.16.0.0
172.31.255.255
192.168/16
192.168.0.0
192.168.255.255
169.254/16
169.254.0.0
169.254.255.255
CMPT 471 • 2003-3
33
9
Download