* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Introduction
Distributed firewall wikipedia , lookup
Wireless security wikipedia , lookup
Power over Ethernet wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Multiprotocol Label Switching wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Deep packet inspection wikipedia , lookup
Airborne Networking wikipedia , lookup
Computer network wikipedia , lookup
Network tap wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
Point-to-Point Protocol over Ethernet wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Internet protocol suite wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
ICS 156: Lecture 2 (part 2) Data link layer protocols Address resolution protocol Notes on lab 2 1 TCP/IP Protocol Stack • The TCP/IP protocol stack runs on top of multiple data link layers. Application Layer • Two data link layer technologies •Broadcast •Point-to-Point Transport Layer Network Layer (Data) Link Layer Logical Link Control (LLC) Media Access Control (MAC) Sublayer in Local Area Networks 2 Data Link Layer • The main tasks of the data link layer are: • Transfer data from the network layer of one machine to the network layer of another machine • Convert the raw bit stream of the physical layer into groups of bits (“frames”) Network Layer Data Link Layer Network Layer Data Link Layer Physical Layer Physical Layer 3 Two types of networks at the data link layer – Broadcast Networks: All stations share a single communication channel – Point-to-Point Networks: Pairs of hosts (or routers) are directly connected Broadcast Network Point-to-Point Network • Typically, local area networks (LANs) are broadcast and wide area networks (WANs) are point-to-point 4 Local Area Networks • Local area networks (LANs) connect computers within a building or a enterprise network • Almost all LANs are broadcast networks • Typical topologies of LANs are bus or ring or star • We will work with Ethernet LANs. Ethernet has a bus or star topology. •Bus LAN •Ring LAN 5 MAC and LLC Data Link Layer • In any broadcast network, the stations must ensure that only one station transmits at a time on the shared communication channel • The protocol that determines who can transmit on a broadcast channel are called Medium Access Control (MAC) protocol • The MAC protocol are implemented to Network Layer in the MAC sublayer which is the Logical Link lower sublayer of the data link layer Control • The higher portion of the data link Medium Access Control layer is often called Logical Link Control (LLC) to Physical Layer 6 IEEE 802 Standards • IEEE 802 is a family of standards for LANs, which defines an LLC and several MAC sublayers IEEE 802 standard IEEE Reference Model Higher layer issues 802.1 Logical Link Control 802.2 LLC 802.11 Wireless lan 802.5 Token ring 802.4 Token bus 802.3 CSMA/CS Medium Access Control Physical Layer Higher Layer Data Link Layer Physical Layer 7 Ethernet • Speed: • Standard: 10Mbps -10 Gbps 802.3, Ethernet II (DIX) • Most popular physical layers for Ethernet: • • • • • • • 10Base5 10Base2 10Base-T 100Base-TX 100Base-FX 1000Base-FX 10000Base-FX Thick Ethernet: 10 Mbps coax cable Thin Ethernet: 10 Mbps coax cable 10 Mbps Twisted Pair 100 Mbps over Category 5 twisted pair 100 Mbps over Fiber Optics 1Gbps over Fiber Optics 1Gbps over Fiber Optics (for wide area links) 8 Bus Topology • 10Base5 and 10Base2 Ethernets has a bus topology Ethernet 9 Star Topology • Starting with 10Base-T, stations are connected to a hub in a star configuration Hub 10 Ethernet Hubs vs. Ethernet Switches • An Ethernet switch is a packet switch for Ethernet frames • Buffering of frames prevents collisions. • Each port is isolated and builds its own collision domain • An Ethernet Hub does not perform buffering: • Collisions occur if two frames arrive at the same time. Hub Switch CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD CSMA/CD HighSpeed Backplane CSMA/CD Input Buffers CSMA/CD CSMA/CD Output Buffers 11 Ethernet and IEEE 802.3: Any Difference? • There are two types of Ethernet frames in use, with subtle differences: • “Ethernet” (Ethernet II, DIX (Digital-Intel-Xerox) • An industry standards from 1982 that is based on the first implementation of CSMA/CD by Xerox. • Predominant version of CSMA/CD in the US. • 802.3: • IEEE’s version of CSMA/CD from 1985. • Interoperates with 802.2 (LLC) as higher layer. • Difference for our purposes: Ethernet and 802.3 use different methods to encapsulate an IP datagram. 12 Ethernet II, DIX Encapsulation (RFC 894) 802.3 MAC destination address source address type data CRC 6 6 2 46-1500 4 0800 IP datagram 2 38-1492 0806 ARP request/reply 2 28 0835 2 PAD 10 RARP request/reply PAD 28 10 13 IEEE 802.2/802.3 Encapsulation (RFC 1042) 802.3 MAC 802.2 LLC 802.2 SNAP destination address source address length DSAP AA SSAP AA cntl 03 org code 0 type data CRC 6 6 2 1 1 1 3 2 38-1492 4 0800 IP datagram 2 38-1492 0806 ARP request/reply PAD 2 28 10 - destination address, source address: MAC addresses are 48 bit - length: frame length in number of bytes - DSAP, SSAP: always set to 0xaa - Ctrl: set to 3 - org code: set to 0 - type field identifies the content of the data field - CRC: cylic redundancy check 0835 2 RARP request/reply PAD 28 10 14 Point-to-Point (serial) links • Many data link connections are point-to-point serial links: – Dial-in or DSL access connects hosts to access routers – Routers are connected by high-speed point-to-point links • Here, IP hosts and routers are connected by a serial cable • Data link layer protocols for pointto-point links are simple: – Main role is encapsulation of IP datagrams – No media access control needed Access Router Modems Dial-Up Access Router Router Router Router Point-to-Point Links 15 Data Link Protocols for Point-to-Point links • SLIP (Serial Line IP) • First protocol for sending IP datagrams over dial-up links (from 1988) • Encapsulation, not much else • PPP (Point-to-Point Protocol): • Successor to SLIP (1992), with added functionality • Used for dial-in and for high-speed routers • HDLC (High-level Data Link Control) : • Widely used and influential standard (1979) • Default protocol for serial links on Cisco routers • Actually, PPP is based on a variant of HDLC 16 PPP - IP encapsulation • The frame format of PPP is similar to HDLC and the 802.2 LLC frame format: flag addr ctrl 7E FF 03 1 1 1 protocol data CRC flag 7E 2 <= 1500 0021 IP datagram C021 link control data 8021 network control data 2 1 • PPP assumes a duplex circuit • Note: PPP does not use addresses • Usual maximum frame size is 1500 17 Additional PPP functionality • In addition to encapsulation, PPP supports: – multiple network layer protocols (protocol multiplexing) – Link configuration – Link quality testing – Error detection – Option negotiation – Address notification – Authentication • The above functions are supported by helper protocols: – LCP – PAP, CHAP – NCP 18 PPP Support protocols • Link management: The link control protocol (LCP) is responsible for establishing, configuring, and negotiating a data-link connection. LCP also monitors the link quality and is used to terminate the link. • Authentication: Authentication is optional. PPP supports two authentication protocols: Password Authentication Protocol (PAP) and Challenge Handshake Authentication Protocol (CHAP). • Network protocol configuration: PPP has network control protocols (NCPs) for numerous network layer protocols. The IP control protocol (IPCP) negotiates IP address assignments and other parameters when IP is used as network layer. 19 Address Resolution Protocol (ARP) 20 Overview TCP UDP ICMP IP IGMP ARP Network Access RARP Transport Layer Network Layer Link Layer Media 21 ARP and RARP • Note: – The Internet is based on IP addresses – Data link protocols (Ethernet, FDDI, ATM) may have different (MAC) addresses • The ARP and RARP protocols perform the translation between IP addresses and MAC layer addresses • We will discuss ARP for broadcast LANs, particularly Ethernet LANs IP address (32 bit) ARP RARP Ethernet MAC address (48 bit) 22 Processing of IP packets by network device drivers IP Input IP Output Put on IP input queue Yes Yes IP destination = multicast or broadcast ? No IP destination of packet = local IP address ? loopback Driver Put on IP input queue No: get MAC address with ARP Ethernet Driver ARP ARP Packet IP datagram demultiplex Ethernet Frame Ethernet 23 Address Translation with ARP ARP Request: Argon broadcasts an ARP request to all stations on the network: “What is the hardware address of 128.143.137.1?” Argon 128.143.137.144 00:a0:24:71:e4:44 Router137 128.143.137.1 00:e0:f9:23:a8:20 ARP Request: What is the MAC address of 128.143.71.1? 24 Address Translation with ARP ARP Reply: Router 137 responds with an ARP Reply which contains the hardware address Argon 128.143.137.144 00:a0:24:71:e4:44 Router137 128.143.137.1 00:e0:f9:23:a8:20 ARP Reply: The MAC address of 128.143.71.1 is 00:e0:f9:23:a8:20 25 ARP Packet Format Ethernet II header Destination address Source address Type 0x8060 6 6 2 ARP Request or ARP Reply 28 10 Hardware type (2 bytes) Hardware address length (1 byte) Padding CRC 4 Protocol type (2 bytes) Protocol address length (1 byte) Operation code (2 bytes) Source hardware address* Source protocol address* Target hardware address* Target protocol address* * Note: The length of the address fields is determined by the corresponding address length fields 26 Example • ARP Request from Argon: Source hardware address: Source protocol address: Target hardware address: Target protocol address: 00:a0:24:71:e4:44 128.143.137.144 00:00:00:00:00:00 128.143.137.1 • ARP Reply from Router137: Source hardware address: Source protocol address: Target hardware address: Target protocol address: 00:e0:f9:23:a8:20 128.143.137.1 00:a0:24:71:e4:44 128.143.137.144 27 ARP Cache • Since sending an ARP request/reply for each IP datagram is inefficient, hosts maintain a cache (ARP Cache) of current entries. The entries expire after a time interval. • Contents of the ARP Cache: (128.143.71.37) at 00:10:4B:C5:D1:15 [ether] on eth0 (128.143.71.36) at 00:B0:D0:E1:17:D5 [ether] on eth0 (128.143.71.35) at 00:B0:D0:DE:70:E6 [ether] on eth0 (128.143.136.90) at 00:05:3C:06:27:35 [ether] on eth1 (128.143.71.34) at 00:B0:D0:E1:17:DB [ether] on eth0 (128.143.71.33) at 00:B0:D0:E1:17:DF [ether] on eth0 28 Proxy ARP • Proxy ARP: Host or router responds to ARP Request that arrives from one of its connected networks for a host that is on another of its connected networks. 29 Things to know about ARP • What happens if an ARP Request is made for a non-existing host? Several ARP requests are made with increasing time intervals between requests. Eventually, ARP gives up. • On some systems (including Linux) a host periodically sends ARP Requests for all addresses listed in the ARP cache. This refreshes the ARP cache content, but also introduces traffic. • Gratuitous ARP Requests: A host sends an ARP request for its own IP address: – Useful for detecting if an IP address has already been assigned. 30 Vulnerabilities of ARP 1. Since ARP does not authenticate requests or replies, ARP Requests and Replies can be forged 2. ARP is stateless: ARP Replies can be sent without a corresponding ARP Request 3. According to the ARP protocol specification, a node receiving an ARP packet (Request or Reply) must update its local ARP cache with the information in the source fields, if the receiving node already has an entry for the IP address of the source in its ARP cache. (This applies for ARP Request packets and for ARP Reply packets) Typical exploitation of these vulnerabilities: • A forged ARP Request or Reply can be used to update the ARP cache of a remote system with a forged entry (ARP Poisoning) • This can be used to redirect IP traffic to other hosts 31 Notes on Lab 2 32 What is a single-segment network? 128.195.1.100 128.195.1.200 128.195.1.300 128.195.2.0/24 128.195.1.0/24 128.195.1.1 128.195.2.100 128.195.2.1 128.195.3.1 128.195.2.200 128.195.3.0/24 128.195.3.100 128.195.3.200 • A single-segment network consists of interfaces connected by a single physical link, either a point-to-point link or a broadcast link. • Interfaces on the same single-segment network have the same network prefix. 33 How to identify a single segment IP network 128.195.2.100 128.195.1.100 128.195.1.200 128.195.1.300 128.195.1.1 128.195.3.1 128.195.2.200 128.195.3.100 • • • 128.195.2.1 128.195.3.200 Detach interfaces from routers or hosts Each isolated island is a single segment IP network Each interface on the same single segment IP network must have the same network address prefix 34 Protocol specification vs implementation • According to the ARP protocol specification, a node receiving an ARP packet (Request or Reply) must update its local ARP cache with the information in the source fields, if the receiving node already has an entry for the IP address of the source in its ARP cache. (This applies for ARP Request packets and for ARP Reply packets) • Implementation may differ from the specification • What you observe in the lab may not be universally true. 35