* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download IP: Adressing, ARP, and Routing
IEEE 802.1aq wikipedia , lookup
Internet protocol suite wikipedia , lookup
Distributed firewall wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Computer network wikipedia , lookup
Network tap wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Airborne Networking wikipedia , lookup
Routing in delay-tolerant networking wikipedia , lookup
IP: Addressing, ARP, Routing Network Protocols and Standards Autumn 2004-2005 Oct 21, 2004 CS573: Network Protocols and Standards 1 IPv4 IP Datagram Format IPv4 Addressing ARP and RARP IP Routing Basics Subnetting and Supernetting ICMP Network Address Translation (NAT) Dynamic Addressing Oct 21, 2004 CS573: Network Protocols and Standards 2 Internet Addresses (IP Addresses) Defined when IP was standardized in 1981 IP addresses are 32-bit long and consist of: a network address part – network identifier a host address part – host number within that network IP addresses are grouped into classes (A,B,C) depending on the size of the network identifier and the host part of the address A fourth class (Class D) was defined later (1988) for Multicast addresses Oct 21, 2004 CS573: Network Protocols and Standards 3 Internet Address Classes 0 8 Class A 0 Class B 10 Class C 110 Class D 1110 Class E 11110 Oct 21, 2004 16 NETWORK 24 32 bits HOST (24 BITS) NETWORK HOST (16 BITS) NETWORK HOST (8 BITS) IP MULTICAST ADDRESSES (28 BITS) RESERVED FOR EXPERIMENTS CS573: Network Protocols and Standards 4 Internet Address Classes Class A Class B 126 networks (0 and 127 reserved) Assigned to very large size networks where 65K < number of hosts < 16M 16384 networks Assigned to Intermediate size networks where 256 < number of hosts < 65K Class C Oct 21, 2004 2097152 networks Assigned to smaller networks where #hosts < 256 CS573: Network Protocols and Standards 5 Dotted Decimal Notation Internet addresses are represented in text by the dotted decimal notation each byte is written in decimal values (from 0 to 255) example: 10000000 00001010 00000010 00011110 is written as 128. 10. 2. 30 Oct 21, 2004 CS573: Network Protocols and Standards 6 Internet Address Classes Oct 21, 2004 Class Lowest Network Identifier Address Highest Network Identifier Address A 1.0.0.0 126.0.0.0 B 128.0.0.0 191.255.0.0 C 192.0.0.0 223.255.255.0 D 224.0.0.0 239.255.255.255 E 240.0.0.0 247.255.255.255 CS573: Network Protocols and Standards 7 Uniqueness of IP Addresses Network numbers are assigned by a central authority Network numbers are unique worldwide Host numbers are assigned by network managers The Internet Network Information Center (InterNIC) Another authority, the IANA – Internet Assigned Numbers Authority sets policy They must be unique within a given network Thus, IP addresses are unique worldwide. Oct 21, 2004 CS573: Network Protocols and Standards 8 Special Purpose IP Addresses 0.0.0.0 255.255.255.255 Means the host on this network Host part all ones Means limited broadcast. Used as a destination address to send packets to all hosts on the local network where the source is. Packets sent to this address are never relayed Network part all zeros Means this host, used by machines as source address when they boot up (if they don’t know their IP address, and need to get it from a boot server) Broadcast address on the network specified in the network identifier; routers typically do not forward these datagrams Host part all zeros Oct 21, 2004 Broadcast address on the network specified in the network identifier (it was an implementation error in some networks) CS573: Network Protocols and Standards 9 Special Purpose IP Addresses 127.x.x.x 224.0.0.1 Means loopback (datagrams are looped back in software; they are not sent on any physical interface) Multicast address for “All systems on this subnetwork” 224.0.0.2 Oct 21, 2004 Multicast address for “All routers on this subnetwork” CS573: Network Protocols and Standards 10 Internet Addresses ALL 0’s ALL 0’s This Host HOST Limited broadcast (local net) ALL 1’s NET 127 Oct 21, 2004 ALL 1’s ANYTHING Host on this network Directed broadcast (for NET) Loopback CS573: Network Protocols and Standards 11 Translating Between IP and MAC Addresses (ARP and RARP) Each interface has an IP address at Layer 3, and a MAC address at Layer 2 Assume that host A wants to send a packet to host B (A and B on the same network) Host A knows the IP address of host B; however, in order to transmit the packet, host A must somehow know or find out what the MAC (layer 2) address of host B is! Solution: the Address Resolution Protocol (ARP), RFC826 Oct 21, 2004 CS573: Network Protocols and Standards 12 Address Resolution Protocol Used to find the physical address of a target device on the local physical network, given only the target’s IP address Mechanism: Oct 21, 2004 The source broadcasts a special packet asking the device with target IP address to respond with a message carrying the (IP address, physical address) mapping All devices on the local physical network receive the broadcast, but only the target recognizes its IP address and responds to the request When the source receives the reply, it sends the packet to the target using the target’s physical address and places the mapping in its cache (a cache is used to prevent repeated broadcasts for the same destination) CS573: Network Protocols and Standards 13 More on ARP ARP refinements Source includes its <IP address, physical address> mapping in the ARP request anticipating the target’s need for it in the near future. This avoids extra network traffic When all machines receive the ARP request broadcast, they can store the address mapping in their cache. Do they? ARP is used when an IP to physical address mapping changes to notify hosts on the network of the change ARP messages are encapsulated in MAC frames. A special value in the type field of the frame is used to indicate that it is carrying an ARP message (0806 hex is used for ARP) Entries in the local ARP cache for each host time out after a certain period Oct 21, 2004 CS573: Network Protocols and Standards 14 ARP Message Format 0 8 16 24 HARDWARE TYPE HLEN 31 PROTOCOL TYPE PLEN OPERATION SENDER HA (octets 0-3) SENDER HA (octetS 4-5) SENDER IP (octetS 0-1) SENDER IP (octetS 2-3) TARGET HA (octets 0-1) TARGET HA (octets 2-5) TARGET IP (octets 0-3) Oct 21, 2004 CS573: Network Protocols and Standards 15 ARP Message HARDWARE TYPE: specifies type of hardware interface for which the request is made (e.g., 1 for Ethernet) PROTOCOL TYPE: specifies high level protocol address supplied in message (e.g. 0800 hex for IP) HLEN and PLEN: specify length of fields for hardware address and protocol address respectively OPERATION: specifies if this is an ARP request or reply message (1 for ARP request, 2 for ARP response, 3 for RARP request and 4 for RARP response) HA and IP: hardware and IP addresses respectively Oct 21, 2004 CS573: Network Protocols and Standards 16 Reverse ARP Usually, a machine’s IP address is kept on its secondary storage (OS finds it at start up) Issue : Diskless Workstations! files are stored on a remote server need IP address to use TCP/IP to obtain initial boot image Solution : Use physical address to identify machine Given a physical network address, find the corresponding Internet address Reverse Address Resolution Protocol (RARP), RFC903 Oct 21, 2004 CS573: Network Protocols and Standards 17 RARP Mechanism Mechanism allows a host to ask about an arbitrary target Sender broadcasts a RARP request, supplying its physical network address in the Target HA field Only machines authorized to supply the RARP service (RARP servers) process the request and send a reply filling in the target internet address thus sender HA is separate from target HA address RARP server replies to sender’s HA Ethernet frame Protocol Type for RARP is 8035 hex Oct 21, 2004 CS573: Network Protocols and Standards 18 IP Routing Network Protocols and Standards Autumn 2002-2003 Oct 21, 2004 CS573: Network Protocols and Standards 19 Routing IP Datagram Direct Delivery (i.e., not involving routers): Transmission of an IP datagram between two machines on a single physical network does not involve routers The sender encapsulates the datagram in a physical frame, binds the destination IP address to a physical hardware address (using ARP), and sends the resulting frame directly to the destination The two machines are known to be on the same network because they have the same network identifier Router Example: Oct 21, 2004 A sends IP Datagram to B A CS573: Network Protocols and Standards B C 20 Routing IP Datagram Indirect delivery (i.e. through intermediate routers) Oct 21, 2004 Host performs routing decisions based on routing table indicating “next hop” “Next hop” refers to next router IP address on this network, via which the destination is reached Routing decisions are made based on network prefixes (not full IP address) The sender encapsulates the datagram in a frame with the router’s physical destination address (which is found by means of ARP). CS573: Network Protocols and Standards 21 Direct and Indirect Routing B wants to send packets to A and C! Host A 204.240.18.10 204.240.18.1 Direct Routing: Packets sent directly using MAC address of A Host B 204.240.18.20 Router Internet Indirect Routing: Packets sent to the MAC address of the router. At the IP level, B is The source and C is the destination Host C 36.14.0.200 Oct 21, 2004 CS573: Network Protocols and Standards 22 IP Routing Decisions 10.0.0.5 Network 10.0.0.0 20.0.0.6 20.0.0.5 R1 40.0.0.7 30.0.0.6 R3 Network 20.0.0.0 Network 30.0.0.0 R2 30.0.0.7 Network 40.0.0.0 Routing Table of R2 Oct 21, 2004 To Reach Hosts on Network Next Hop Address 20.0.0.0 Direct Delivery 30.0.0.0 Direct Delivery 10.0.0.0 20.0.0.5 40.0.0.0 30.0.0.7 CS573: Network Protocols and Standards 23 IP Routing Algorithm Router receives an IP datagram with network portion N and destination D If N is directly connected Transmit on that network Else If host specific entry for D exists Use next hop in that entry Else If route entry for N exists Use next hop in that entry Else If default route for next hop exists Use default route for next hop Else Declare error Oct 21, 2004 CS573: Network Protocols and Standards 24 Routing Within Same Network Consider a small company with a single LAN to which a class C network address has been assigned The company is interested in adding another small physical network (connected to old network through a router) with a few hosts Question: Could this company assign these hosts IP addresses from the same C class network? i.e., could the two LANs share the same class C network address? Oct 21, 2004 CS573: Network Protocols and Standards 25 Proxy ARP To Internet Main Router Main Network A B C Router R D E Hidden Network Used to allow two physical networks to share the same IP network prefix Router R’s table is configured manually to route between these two networks Router R answers ARP requests on each network for hosts on the other network, giving its own hardware address as the target address Oct 21, 2004 CS573: Network Protocols and Standards 26 Proxy ARP Advantage of Proxy ARP Router Disadvantages: Can be added without disturbing the routing table in other hosts or routers on that network Does not generalize to complex network topologies (does not scale) Does not support a reasonable form of routing. (relies on network managers to maintain tables of machines and addresses manually) Issues: Oct 21, 2004 Several IP addresses map to the same physical address. How to distinguish between a legitimate Proxy ARP router and spoofing? CS573: Network Protocols and Standards 27