300 likes | 311 Views
Learn CIDR, subnetting, private IP addresses, and networking protocols ICMP, IMAP, DHCP in this comprehensive guide. Understand how CIDR eliminates class distinctions and allows for efficient IP address allocation.
E N D
Scaling the Network: Subnetting and Other Protocols Networking CS 3470, Section 1
Today • CIDR • Subnetting • Private IP addresses • ICMP, IMAP, and DHCP Protocols
Packet Encapsulation ** Creative Commons: http://en.wikipedia.org/wiki/File:UDP_encapsulation.svg
IP Addressing • Classful addressing scheme separates groups of addresses into classes • Class A • 8 bits used for network (256) • 24 bits used for hosts and network devices (16,777,216) • Binary address starts with 0 • Class B • 16 bits for networks (65,536) • 16 bits for hosts and network devices (65,536) • binary address starts with 10 • Class C • 24 bits for the network (16,777,216) • 8 bits for the host (256) • Binary address starts with 110
Classless Inter-Domain Routing • Classful addressing scheme wasteful • IP address space exhaustion • Class B net allocated enough for 65K hosts • Even if only 2K hosts in that network • Solution: Classless Inter Domain Routing (CIDR) • Eliminate class distinction • No A,B,C • Keep multicast class D
host part network part 11001000 000101111 0000000 00000000 200.23.128.0/17 Classless Addressing • Addresses allocated in contiguous blocks • Number of addresses assigned always power of 2 • Network portion of address is of arbitrary length • Address format: a.b.c.d/x • x is number of bits in network portion of address
host part network part 11001000 000101111 0000000 00000000 200.23.128.0/17 Subnet Motivation • This network can have 215 = 32,768 hosts! • Imagine the size of the routing tables if we had a flat network of all these hosts! • We want to split this network up into smaller networks
host part network part 11001000 000101111 0000000 00000000 200.23.128.0/17 Subnet Motivation • We probably want to split this network up into smaller networks (subnets) due to • Security reasons • Logistical reasons • Routing reasons
host part network part 11000000 1010100000001010 00000000 192.168.10.0/24 Let’s play with a small example • Suppose you have this private class C network, and you need to divide it evenly • You will have hosts 0-127 • Friend will have hosts 128-255
host part network part 11000000 1010100000001010 00000000 192.168.10.0/24 Let’s play with a small example • Dividing the network into subnets involves using some of the host bits as the subnet ID • What bit of the host part of the address do we have to flip to signify >= 128 for the host ID?
host part host part network part network part 11000000 10101000000010100 0000000 11000000 10101000000010101 0000000 192.168.10.0/25 192.168.10.128/25 Let’s play with a small example subnet ID • Can address hosts 0-127 • Can address hosts 128-255 subnet ID
host part network part 11000000 10101000000010100 0000000 192.168.10.0/25 Let’s play with a small example subnet ID • Now, how can routers easily figure out where destination IP address 192.168.10.202 should be routed? • 192.168.10.0/25 or 192.168.10.128/25 subnet?
host part network part 11000000 10101000000010100 0000000 192.168.10.0/25 Let’s play with a small example subnet ID • A subnet number is the network part + subnet ID + zeros for the host • 192.168.10.0 • A subnet mask consists of all 1’s for the network+subnet ID and all 0’s for the host part • What is this subnet mask?
host part network part 11000000 10101000000010100 0000000 192.168.10.0/25 Let’s play with a small example subnet ID • Subnet mask: 255.255.255.128 11111111 11111111 11111111 10000000
host part network part 11000000 10101000000010101 0000000 192.168.10.128/25 Let’s play with a small example subnet ID • Subnet mask: 255.255.255.128 11111111 11111111 11111111 10000000
Subnet Masks • We can figure out where to route by noting that dest subnet = subnet mask & dest IP addr
Subnet Masks dest subnet = subnet mask & dest IP addr • Let’s say destination IP is 192.168.10.202 and lets & with subnet mask 192 . 168 . 10 . 128 We send packet to 192.168.10.128/25 network! 11000000 10101000 00001010 110001010 & 11111111 11111111 11111111 100000000 11000000 10101000 00001010 100000000
Longest-Prefix Match • Suppose two network IDs exist: 1) 128.186.0.0/16 2) 128.186.134.0/24 • Suppose you have destination IP of 128.186.134.100 • Both subnet mask & IP of 1 and 2 will yield match – what to do? • Longest-prefix match– route to network with the most matching host bits.
Subnetting Notes • Would use a default router if nothing matches • Not necessary for all ones in subnet mask to be contiguous • Can put multiple subnets on one physical network • Subnets not visible from the rest of the Internet
Routing with CIDR • Destination IP is BA.DB.EE.F2
Special IP Addresses • Network address: host id = all 0’s • Local broadcast address: all 1’s • Used during system startup • Directed broadcast address: host id = all 1’s • Routers will forward this broadcast address • Local host address (this computer): all 0’s • Used during system startup • Loopback address • network id = 127, any host id (e.g. 127.0.0.1)
Private IP Addresses • Some addresses are not globally routable • IP packets created by these addresses cannot be transmitted into the public domain • Commonly used for home, office, and enterprise LANS
Private IP addresses • Router uses Network Address Translation (NAT) to send IP packets from private IP addresses onto public networks • Router places it’s own IP address as destination • Maintains table, knows which host to route addresses Router keeps translation table
IP Address Configuration • May configure a network statically by giving each host it’s IP address and routing information (like gateway) • Or may configure a server to do this for you dynamically
DHCP Server • Dynamic Host Configuration Protocol (DHCP) • DHCP server is responsible for providing configuration information to hosts • There is at least one DHCP server for an administrative domain • DHCP server maintains a pool of available addresses
DHCP Protocol • State Protocol • DHCPDISCOVER (client) • DHCPOFFER (server) • DHCPREQUEST (client) • DHCPACK (server) • DHCPNAK (server) • DHCPINFORM (client)
DHCP • Newly booted or attached host sends DHCPDISCOVER message to a special IP address (255.255.255.255) • Rest of messages are unicast back and forth
DHCP • IP leases are valid for a predefined period of time (T1) • Leases are renewed at T1/2 • Leases are released if they have not been renewed at the expiration of the lease time
Internet Control Message Protocol (ICMP) • Defines a collection of error messages that are sent back to the source host whenever a router or host is unable to process an IP datagram successfully • Destination host unreachable due to link /node failure • Reassembly process failed • TTL had reached 0 (so datagrams don't cycle forever) • IP header checksum failed • The ping application is a very common ICMP-message-generator