Clase 5 Mapeando Direcciones Fisicas e IP

20
Clase 5 Asociando direcciones IP con direcciones Físicas (ARP)

Transcript of Clase 5 Mapeando Direcciones Fisicas e IP

Page 1: Clase 5 Mapeando Direcciones Fisicas e IP

Clase 5

Asociando direcciones IP con direcciones

Físicas (ARP)

Page 2: Clase 5 Mapeando Direcciones Fisicas e IP

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?

Page 3: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 4: Clase 5 Mapeando Direcciones Fisicas e IP

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.

Page 5: Clase 5 Mapeando Direcciones Fisicas e IP

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.

Page 6: Clase 5 Mapeando Direcciones Fisicas e IP

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)

Page 7: Clase 5 Mapeando Direcciones Fisicas e IP

NetworkLayer

Link Layer

IP

ARP NetworkAccess RARP

Media

ICMP IGMP

TransportLayer

TCP UDP

Protocolos

Page 8: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 9: Clase 5 Mapeando Direcciones Fisicas e IP

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?

Page 10: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 11: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 12: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 13: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 14: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 15: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 16: Clase 5 Mapeando Direcciones Fisicas e IP

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

Page 17: Clase 5 Mapeando Direcciones Fisicas e 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

Page 18: Clase 5 Mapeando Direcciones Fisicas e IP

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.

Page 19: Clase 5 Mapeando Direcciones Fisicas e IP

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.

Page 20: Clase 5 Mapeando Direcciones Fisicas e IP

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