IP Address Extensions: Subnets and Supernets
Download
Report
Transcript IP Address Extensions: Subnets and Supernets
Classless and Subnet Address
Extensions (CIDR)
• Topics:
– There are problems with the IP addressing
scheme we’ve studied
– We’ll study some ways to get around these
problems
Review: IP Addresses
Problems with IP Addresses
• The designers of IP addresses did not
foresee the Internet’s tremendous growth
– Higher overhead to manage network addresses
– Larger routing tables
– IP addresses might one day be exhausted
Solution to IP Addresses
Problems
• The same IP network prefix can be shared
by multiple physical networks
• A site can choose to assign and use IP
addresses in unusual ways internally as long
as:
– All hosts and routers at the site honor the site’s
addressing scheme
– The site’s addressing scheme is transparent to other
sites on the internet
Strategy 1: Transparent Routers
• A network with a class A IP address can be
extended:
H1
H2
10.0.0.0
T
H3
H4
Transparent Routers (cont)
• Hosts on LAN are assigned IP addresses as
if they were on WAN
• LAN does not need its own network prefix
• Traffic for hosts on LAN is multiplexed
through T
• Other hosts and routers on the WAN do not
know T exists
Transparent Routers
• Advantages
– Require fewer network addresses (LAN doesn’t
need a separate network prefix)
– Load balancing
• Disadvantages
– Require a large address space
– Do not provide all the services of standard
routers
Strategy 2: Proxy ARP
• Using ARP, map a single network prefix
into two physical addresses
Main network
H1
H2
H3
Router running proxy ARP
R
H4
Hidden network
H5
H6
Proxy ARP (cont)
• Gives the illusion that all hosts are on the
same physical network
• Router R answers ARP requests on each
network for hosts on the other
• R answers ARPs with its own hardware
address (it lies)
• When R receives a datagram it forwards it
to the correct physical address
Proxy ARP
• Advantages
– Require fewer network addresses
– Only the router running proxy ARP needs to
know what’s going on
• Disadvantages
– Can only be used if the network uses ARP for
address resolution
– Allows spoofing
Strategy 3: Subnet Addressing
• Hierarchical addressing
Network 128.10.1.0
Rest of
the
internet
R
H1
H2
128.10.1.1
128.10.1.2
Network 128.10.2.0
All traffic to
H3
H4
128.10.0.0
128.10.2.1
128.10.2.2
Subnet Addressing (cont)
• R receives all traffic for network 128.10.0.0
• R routes the datagram to a physical network
based on bits in the hostid field of the IP
address
• Another level has been added to the
addressing hierarchy
Subnet Addressing (cont)
• Regular (Class B) IP address:
0
10
8
netid
16
24
hostid
31
• New interpretation (locally only):
0
10
8
netid
16
24
subnet
31
hostid
Subnet Addressing (cont)
• Advantages
– Minimizes network address usage
– Accommodates growth
• Disadvantages
– Added layer of complexity
– Difficult to change once hierarchy is
established
Subnet Addressing (cont)
• Flexible
0
10
8
netid
16
24
subnet
31
hostid
Allows 256 physical networks with 256 hosts each
0
10
8
netid
16 19
sub
31
hostid
Allows 8 physical networks with 8192 hosts each
Subnet Masks
• 32 bits
– 1 if the bit is part of the network address
– 0 if the bit is part of the host address
• Example - a class B network:
0
10
8
netid
16
24
subnet
31
hostid
• Subnet mask:
– 11111111 11111111 11111111 00000000
Subnet Masks
• Subnet bits do not have to be contiguous:
– Mask = 11111111 11111111 00001010 10000000
0
10
8
netid
16
= subnet id
= host id
24
31
Representing Subnet Masks in
Dotted Decimal Notation
• Example - a class B network:
0
10
8
netid
16
24
subnet
31
hostid
• Subnet mask:
– 11111111 11111111 11111111 00000000
• Dotted Decimal:
– 255.255.255.0
Representing Subnet Masks in
3-tuple Notation
• Subnet mask:
– 11111111 11111111 11111111 00000000
• 3-tuple notation
– {<netid>,<subnet id>,<hostid>}
– -1 means “all ones”
– {-1,-1,0}
Routing in the Presence of
Subnets
• All hosts and routers must use a subnet
routing algorithm
Net 1 (not a subnet address)
R1
Net 2 (subnet of address N)
H
R2
Net 3 (subnet of address N)
The Subnet Routing Algorithm
• Recall the standard routing table:
– (netid, next hop)
• N = netid portion of IP address
• Compare N with netid
• Match = send datagram to next hop
• Routing when subnets are in use:
– (subnet mask, netid, next hop)
• N = IP address & subnet mask
• Compare N with netid
• Match = send datagram to next hop
Using Subnet Masks for Routing
• Host-specific routes
– (20.0.0.3, 30.0.0.7)
– (255.255.255.255 , 20.0.0.3 , 30.0.0.7)
• Default routes
– (default, 40.0.0.8)
– (0.0.0.0 , 0.0.0.0 , 40.0.0.8)
• Standard, non-subnet class B network
– (128.0.0.0, 10.0.0.3)
– (255.255.0.0 , 128.0.0.0 , 10.0.0.3)
A Unified Routing Algorithm
Extract the destination IP address, D, from the datagram and
compute the netid, N
If N matches any directly connected network address deliver
the datagram directly over that network
else
for each entry (M,N,NH) in the routing table {
I = M&D
if (I == N) then send datagram to NH
}
if no matches were found declare a routing error
Broadcasting to Subnets
• IP address = 128.0.255.255
– Broadcast to all hosts on network 128
• What if network 128 has subnets?
– Routers that interconnect the subnets must propagate
the datagram to all physical networks
– But the routers must take care not to route the
datagrams in loops (reverse path forwarding)
• Can you broadcast to just one subnet?
– Yes: {network, subnet, -1}
Summary
• Problem: IP v4 addresses (especially class B)
would be exhausted
• Solutions:
– Subnet addressing - conserve network addresses by
using the same network address for multiple physical
networks
– New version of IP (v6) with larger addresses
– Supernet addressing - conserve class B network
addresses by allowing a single organization to use
multiple class C network addresses