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