Download - Clase 5 Mapeando Direcciones Fisicas e IP
Clase 5
Asociando direcciones IP con direcciones
Físicas (ARP)
Introducción El ambiente TCP/IP obliga a usar direcciones físicas
para la comunicación sobre redes Mientras tanto las aplicaciones solo usan las
direcciones IP Ejemplo
La computadora A y B están sobre la misma red Las aplicaciones en A generan paquetes para las
aplicaciones en B Los software de protocolos en A tienen que usar la
dirección física cuando envían un paquete Como un ruteador o un host transforman una
dirección IP en una dirección física correcta, cuando necesitan enviar un paquete a través de la red física?
ARP: Protocolo de Asociación de Direcciones
Los software de protocolos necesitan un mecanismo que asocie o traduzca una dirección IP a la dirección física equivalente.
Esto es conocido como ADDRESS RESOLUTION PROBLEM (ARP).
ARP el protocolo de asociación de direcciones es ejecutado en cada paso a lo largo del camino a través del Internet.
Basados en dos algoritmos Asociación o traslación directa Enlace dinámico
La escogencia depende del tipo de hardware a usar
ARP: Asociación Directa Eficiente y fácil de entender Solo trabaja cuando la dirección del hardware es
pequeña Técnica
Asigna a una computadora una dirección IP que codifica la dirección física
Ejemplo de asociación directa Hardware: ProNet ring network Dirección física: 8 bits Asuma un IP: 192.5.48.0 (prefijo de 24
bits) Asigna una computadora con una dirección física K
y una dirección física 192.5.48.K Resolviendo una dirección IP significa extraer la
dirección física del los últimos 8 bits.
ARP: Enlace dinámico Es necesario cuando la dirección física es grande
(Ethernet: 48 bits) Permite a la computadora A encontrar la dirección
física de la computadora B A empieza con la dirección IP de B A sabe que B está en la red local.
Técnica: difusión de un paquete especial y obtiene una respuesta ( la dirección física)
La técnica de enlace dinámico es usada una vez simultáneamente.
El protocolo de ARP permite que un anfitrión encuentre la dirección física de otro anfitrión dentro de la misma red física con solo proporcionar la dirección IP de su objetivo.
ARP Requiere de una difusión física Especial para LAN ARP es solo usado para asociar direcciones en una red
física nunca a través de múltiple redes.
RARP
Ethernet MACaddress(48 bit)
ARPIP address(32 bit)
NetworkLayer
Link Layer
IP
ARP NetworkAccess RARP
Media
ICMP IGMP
TransportLayer
TCP UDP
Protocolos
Procesamiento de un paquete IP por la red
loopbackDriver
IP Input
Put on IPinput queue
ARPdemultiplex
Ethernet Frame
Ethernet
IP destination of packet= local IP address ?
IP destination = multicastor broadcast ?
IP Output
Put on IPinput queue
No: get MACaddress withARP
ARPPacket
IP datagram
No
Yes
YesEthernet
Driver
Asociación de direcciones con ARP
Solicitud ARP: Argon difunde una solicitud ARP a todas la estaciones en la red: “Cual es la dirección física del router 137?”
Argon128.143.137.144
00:a0:24:71:e4:44
Router137128.143.137.1
00:e0:f9:23:a8:20
ARP Request:What is the MAC addressof 128.143.71.1?
Asociación de direcciones con ARP
Respuesta ARP: Router 137 responde con una respuesta ARP la cual contiene la dirección física
Argon128.143.137.144
00:a0:24:71:e4:44
Router137128.143.137.1
00:e0:f9:23:a8:20
ARP Reply:The MAC address of 128.143.71.1is 00:e0:f9:23:a8:20
Ejemplo
• Solicitud ARP desde Argon: Dirección física de la fuente: 00:a0:24:71:e4:44Dirección IP de la fuente: 128.143.137.144Dirección física solicitada: 00:00:00:00:00:00Dirección IP solicitada: 128.143.137.1
• Respuesta ARP del Router137:
Dirección física de la fuente : 00:e0:f9:23:a8:20 Dirección IP de la fuente : 128.143.137.1 Dirección física solicitada : 00:a0:24:71:e4:44 Dirección IP solicitada : 128.143.137.144
ARP Cache
• Como al enviar una solicitud/respuesta ARP para cada datagrama IP es ineficiente, los hosts mantienen un cache (ARP Cache) de las entradas que expiran después de 20 minutos.
• Contenidos de la ARP Cache:(128.143.71.37) at 00:10:4B:C5:D1:15 [ether] en eth0
(128.143.71.36) at 00:B0:D0:E1:17:D5 [ether] en eth0
(128.143.71.35) at 00:B0:D0:DE:70:E6 [ether] en eth0
(128.143.136.90) at 00:05:3C:06:27:35 [ether] en eth1
(128.143.71.34) at 00:B0:D0:E1:17:DB [ether] en eth0
(128.143.71.33) at 00:B0:D0:E1:17:DF [ether] en eth0
Proxy ARP
• Proxy ARP: Host o router responde a solicitudes ARP que llegan a una de sus redes conectadas para un host que está en otra de sus redes conectadas.
128.143.137.1/1600:e0:f9:23:a8:20
128.143.71.1/24
128.143.0.0/16Subnet
128.143.71.0/24Subnet
Router137
ARP Request:What is the MAC addressof 128.143.71.21?
128.143.137.144/16128.143.171.21/2400:20:af:03:98:28
Argon Neon
ARP Reply:The MAC address of128.143.71.21 is00:e0:f9:23:a8:20
Formato de un paquete ARP
Destinationaddress
6
ARP Request or ARP Reply
28
Sourceaddress
6 2
CRC
4
Type0x8060
Padding
10
Ethernet II header
Hardware type (2 bytes)
Hardware addresslength (1 byte)
Protocol addresslength (1 byte)
Operation code (2 bytes)
Target hardware address*
Protocol type (2 bytes)
Source hardware address*
Source protocol address*
Target protocol address*
* Note: The length of the address fields is determined by the corresponding address length fields
Observaciones acerca del paquete ARP
En general puede ser usado con: Dirección física arbitraria Dirección IP arbitraria
Longitud de los campos variables (no solamente IPs) No se puede enviar una solicitud ARP para cada
paquete. Solución: mantener una tabla de enlace
Use ARP una vez, poner resultado en una tabla, y enviar muchos paquetes
ARP Caching La tabla ARP es una memoria intermedia Entradas tienen un tiempo de expiración (time out) y
pueden ser renovadas El time out típico es de 20 minutos
Observaciones acerca del paquete ARP
Notificación de cambio en la dirección física El transmisor incluye en cada difusión ARP, su
asignación de dirección IP como dirección física, los receptores actualizan su información en memoria intermedia antes de procesar un paquete ARP.
Relación de ARP con otros protocolos ARP es un protocolo de bajo nivel que oculta el
direccionamiento físico subyacente de red, al permitir que se asigne una dirección IP arbitraria a cada máquina. Pensamos en ARP como parte del sistema físico de red, no como parte de los protocolos de red de redes.
Permite a los programas de aplicación el uso de direcciones IP
Encapsulamiento de ARP• Los mensajes ARP viajan en la porción de la data
de la capa de Red– Decimos que el mensaje ARP es encapsulado.– El área es llenado de ceros si el mensaje ARP es mas
corto que el mínimo trama Ethernet– ARP usa el tipo de Ethernet 0x0806
Refinamiento de ARP
• Que pasa si una solicitud ARP es realizada a un host inexistente? Varias solicitudes ARP son realizadas con un incremento en intervalo de tiempo entre solicitudes. Eventualmente ARP para de enviar.
• En otros sistemas (incluyendo Linux) un host periódicamente envía solicitudes ARP Requests para todas las direcciones listadas en la memoria ARP intermedia. Esto refresca el contenido de la memoria intermedia pero también introduce tráfico.
• Solicitud ARP para si mismo: Un host envía una solicitud ARP para su propia dirección IP:– Sirve para detectar si una dirección IP ya ha sido asignada.
Vulnerabilidades de ARP
1. Como ARP no autentifíca solicitudes o respuestas, éstas pueden ser olvidadas.
2. ARP sin estado: una respuesta ARP puede ser enviada sin una correspondiente solicitud de ARP
3. De acuerdo con lo especificado en el protocolo ARP, un nodo que recibe un paquete ARP (solicitud/respuesta) tiene que actualizar su memoria local con la información de los campos de la fuente. Si el nodo receptor ya tiene una entrada para una dirección de IP de la fuente se deberá actualizar la misma.
Explotación típica de estas vulnerabilidades:• Una respuesta o solicitud ARP olvidada puede ser usada para
actualizar la memoria intermedia de un sistema remoto con una entrada olvidada (ARP Poisoning)
• Esto puede ser usado para redireccionar tráfico IP a otros hosts.
RARP: Reverse Resolution Protocol
• RARP: Protocolo Inverso de Asociación de Direcciones• Obtener una dirección IP desde un servidor RARP
• Asocia una dirección física a una dirección IP
• Usa el mismo formato que en ARP• Creado para BOOTSTRAP
• Computadoras envían su dirección física (Ethernet Address)• Servidor RARP responde enviando una dirección IP de la
computadora
• Es muy poco usada• Ha sido reemplazad por DHCP