Protocolo de resolucion de DIRECCION
El Protocolo de resolución de direcciones (ARP) es un protocolo de comunicación utilizado para descubrir la dirección de la capa de enlace, como una dirección MAC, asociada con una dirección de capa de Internet determinada. típicamente una dirección IPv4. Este mapeo es una función crítica en el conjunto de protocolos de Internet. ARP fue definido en 1982 por RFC 826, que es el estándar de Internet STD 37.
ARP se ha implementado con muchas combinaciones de tecnologías de capa de vínculo de datos y de red, como IPv4, Chaosnet, DECnet y Xerox PARC Universal Packet (PUP) mediante estándares IEEE 802, FDDI, X.25, Frame Relay y modo de transferencia asíncrono (CAJERO AUTOMÁTICO).
En las redes del Protocolo de Internet versión 6 (IPv6), la funcionalidad de ARP la proporciona el Protocolo de detección de vecinos (NDP).
Alcance operativo
El protocolo de resolución de direcciones es un protocolo de solicitud y respuesta. Sus mensajes son encapsulados directamente por un protocolo de capa de enlace. Se comunica dentro de los límites de una sola red, nunca se enruta a través de nodos de interconexión de redes.
Estructura del paquete
El protocolo de resolución de direcciones utiliza un formato de mensaje simple que contiene una solicitud o respuesta de resolución de direcciones. Los paquetes se transportan en la capa de enlace de datos de la red subyacente como carga útil sin procesar. En el caso de Ethernet, se usa un valor 0x0806 EtherType para identificar tramas ARP.
El tamaño del mensaje ARP depende de los tamaños de dirección de la capa de enlace y de la capa de red. El encabezado del mensaje especifica los tipos de red en uso en cada capa, así como el tamaño de las direcciones de cada uno. La cabecera del mensaje se completa con el código de operación de petición (1) y respuesta (2). La carga útil del paquete consta de cuatro direcciones, el hardware y la dirección de protocolo de los hosts emisor y receptor.
La estructura de paquete principal de los paquetes ARP se muestra en la siguiente tabla, que ilustra el caso de las redes IPv4 que se ejecutan en Ethernet. En este escenario, el paquete tiene campos de 48 bits para la dirección de hardware del remitente (SHA) y la dirección de hardware de destino (THA), y campos de 32 bits para las direcciones de protocolo de remitente y destino correspondientes (SPA y TPA). El tamaño del paquete ARP en este caso es de 28 bytes.
Octet offset | 0 | 1 | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Tipo de hardware (HTYPE) | |||||||||||||||
2 | Tipo de protocolo (PTYPE) | |||||||||||||||
4 | Longitud de dirección de hardware (HLEN) | Longitud de la dirección de protocolo (PLEN) | ||||||||||||||
6 | Operación (OPER) | |||||||||||||||
8 | Dirección de hardware del remitente (SHA) (primer 2 bytes) | |||||||||||||||
10 | (Anexo 2 bytes) | |||||||||||||||
12 | (últimos 2 bytes) | |||||||||||||||
14 | Dirección de protocolo del remitente (SPA) (primer 2 bytes) | |||||||||||||||
16 | (últimos 2 bytes) | |||||||||||||||
18 | Dirección de hardware de destino (THA) (primer 2 bytes) | |||||||||||||||
20 | (Anexo 2 bytes) | |||||||||||||||
22 | (últimos 2 bytes) | |||||||||||||||
24 | Meta protocol address (TPA) (primer 2 bytes) | |||||||||||||||
26 | (últimos 2 bytes) |
- Tipo de hardware (HTYPE)
- Este campo especifica el tipo de protocolo de enlace de red. Ejemplo: Ethernet es 1.
- Tipo de protocolo (PTYPE)
- Este campo especifica el protocolo de internetwork para el cual se pretende la solicitud ARP. Para IPv4, esto tiene el valor 0x0800. Los valores permitidos de PTYPE comparten un espacio de numeración con los de EtherType.
- Longitud del hardware (HLEN)
- Longitud (en octets) de una dirección de hardware. La longitud de la dirección Ethernet es 6.
- Longitud del Protocolo (PLEN)
- Duración (en octets) de las direcciones de internetwork. El protocolo de internetwork se especifica en PTYPE. Ejemplo: longitud de dirección IPv4 es 4.
- Operación
- Especifica la operación que el remitente está realizando: 1 para petición, 2 para respuesta.
- Dirección de hardware del remitente (SHA)
- Dirección de medios del remitente. En una solicitud ARP este campo se utiliza para indicar la dirección del host que envía la solicitud. En una respuesta ARP este campo se utiliza para indicar la dirección del host que la solicitud estaba buscando.
- Dirección de protocolo del remitente (SPA)
- Dirección de Internet del remitente.
- Dirección de hardware de destino (THA)
- Dirección de medios del destinatario previsto. En una solicitud de ARP este campo es ignorado. En una respuesta ARP este campo se utiliza para indicar la dirección del host que originó la solicitud ARP.
- Meta protocol address (TPA)
- Dirección de Internet del destinatario previsto.
Los valores de los parámetros del protocolo ARP se han estandarizado y son mantenidos por la Autoridad de Números Asignados de Internet (IANA).
El EtherType para ARP es 0x0806. Esto aparece en el encabezado de la trama de Ethernet cuando la carga útil es un paquete ARP y no debe confundirse con PTYPE, que aparece dentro de este paquete ARP encapsulado.
Superposición
La ubicación de ARP dentro del conjunto de protocolos de Internet y el modelo OSI puede ser motivo de confusión o incluso disputa. RFC 1122 menciona ARP dentro de su sección de capa de enlace sin colocarlo explícitamente dentro de esa capa. Algunas referencias más antiguas colocan ARP en la capa de enlace de datos de OSI, mientras que las ediciones más recientes lo asocian con la capa de red o introducen una capa intermedia de OSI 2.5.
Ejemplo
Dos computadoras en una oficina (Computadora 1 y Computadora 2) están conectadas entre sí en una red de área local mediante cables Ethernet y conmutadores de red, sin puertas de enlace intermedias o enrutadores. La computadora 1 tiene un paquete para enviar a la computadora 2. Mediante DNS, determina que Equipo 2 tiene la dirección IP 192.168.0.55 .
Para enviar el mensaje, también requiere la dirección MAC de Computadora 2'. Primero, Computadora 1 usa una tabla ARP almacenada en caché para buscar 192.168.0.55 para cualquier registro existente de la dirección MAC de la computadora 2' ( 00:EB:24:B2:05:AC). Si se encuentra la dirección MAC, envía una trama Ethernet que contiene el paquete IP al enlace con la dirección de destino 00:EB:24:B2:05:AC. Si el caché no produjo un resultado para 192.168.0.55, < i>La computadora 1 tiene que enviar un mensaje de solicitud ARP de difusión (destino FF:FF:FF:FF: FF:FF dirección MAC), que es aceptado por todas las computadoras en la red local, solicitando una respuesta para 192.168.0.55.
La computadora 2 responde con un mensaje de respuesta ARP que contiene sus direcciones MAC e IP. Como parte de la presentación de la solicitud, Equipo 2 puede insertar una entrada para Equipo 1 en su tabla ARP para uso futuro.
La computadora 1 recibe y almacena en caché la información de respuesta en su tabla ARP y ahora puede enviar el paquete.
Sonda ARP
Un sondeo ARP en IPv4 es una solicitud ARP construida con el SHA del host de sondeo, un SPA de todos los 0, un THA de todos los 0 y un TPA establecido en la dirección IPv4 que se está sondeando. por. Si algún host en la red considera la dirección IPv4 (en el TPA) como propia, responderá a la sonda (a través del SHA del host de sondeo) informando así al host de sondeo del conflicto de direcciones. Si por el contrario no hay ningún host que considere la dirección IPv4 como propia, entonces no habrá respuesta. Cuando se han enviado varios sondeos de este tipo, con ligeras demoras, y ninguno recibe respuestas, se puede esperar razonablemente que no exista ningún conflicto. Como el paquete de sondeo original no contiene un SHA/SPA válido ni un par THA/TPA válido, no hay riesgo de que ningún host utilice el paquete para actualizar su caché con datos problemáticos. Antes de comenzar a usar una dirección IPv4 (ya sea que se reciba de la configuración manual, DHCP o algún otro medio), un host que implemente esta especificación debe probar si la dirección ya está en uso, mediante la transmisión de paquetes de sondeo ARP.
Anuncios ARP
ARP también se puede usar como un protocolo de anuncio simple. Esto es útil para actualizar otros hosts' asignaciones de una dirección de hardware cuando cambia la dirección IP o la dirección MAC del remitente. Dicho anuncio, también llamado mensaje ARP gratuito (GARP), generalmente se transmite como una solicitud ARP que contiene el SPA en el campo de destino (TPA=SPA), con THA puesto a cero. Una forma alternativa es transmitir una respuesta ARP con el SHA y el SPA del remitente duplicados en los campos de destino (TPA=SPA, THA=SHA).
Los anuncios Solicitud ARP y Respuesta ARP son métodos basados en estándares, pero se prefiere el método Solicitud ARP. Algunos dispositivos pueden configurarse para el uso de cualquiera de estos dos tipos de anuncios.
Un anuncio de ARP no pretende solicitar una respuesta; en su lugar, actualiza las entradas almacenadas en caché en las tablas ARP de otros hosts que reciben el paquete. El código de operación en el anuncio puede ser solicitud o respuesta; el estándar ARP especifica que el código de operación solo se procesa después de que la tabla ARP se haya actualizado desde los campos de dirección.
Muchos sistemas operativos emiten un anuncio ARP durante el inicio. Esto ayuda a resolver problemas que de otro modo ocurrirían si, por ejemplo, una tarjeta de red se cambió recientemente (cambiando la asignación de dirección IP a dirección MAC) y otros hosts aún tienen la asignación anterior en sus cachés ARP.
Algunas interfaces de red también utilizan anuncios ARP para equilibrar la carga del tráfico entrante. En un equipo de tarjetas de red, se utiliza para anunciar una dirección MAC diferente dentro del equipo que debe recibir los paquetes entrantes.
Los anuncios ARP se pueden usar en el protocolo Zeroconf para permitir la asignación automática de una dirección de enlace local a una interfaz donde no hay otra configuración de dirección IP disponible. Los anuncios se utilizan para garantizar que una dirección elegida por un host no esté en uso por otros hosts en el enlace de red.
Esta función puede ser peligrosa desde el punto de vista de la ciberseguridad ya que un atacante puede obtener información de los otros hosts de su subred para guardar en su caché ARP (ARP spoofing) una entrada donde la MAC del atacante está asociada, por ejemplo, a la IP de la puerta de enlace predeterminada, lo que le permite interceptar todo el tráfico a redes externas.
Mediación ARP
La mediación ARP hace referencia al proceso de resolución de direcciones de capa 2 a través de un servicio de cable privado virtual (VPWS) cuando se utilizan diferentes protocolos de resolución en los circuitos conectados, por ejemplo, Ethernet en un extremo y Frame Relé por el otro. En IPv4, cada dispositivo de borde de proveedor (PE) descubre la dirección IP del dispositivo de borde de cliente (CE) conectado localmente y distribuye esa dirección IP al dispositivo PE remoto correspondiente. Luego, cada dispositivo PE responde a las solicitudes ARP locales utilizando la dirección IP del dispositivo CE remoto y la dirección de hardware del dispositivo PE local. En IPv6, cada dispositivo PE descubre la dirección IP de los dispositivos CE locales y remotos y luego intercepta los paquetes de descubrimiento de vecinos (ND) local y descubrimiento de vecinos inverso (IND) y los reenvía al dispositivo PE remoto.
ARP inverso y ARP inverso
Protocolo de resolución de dirección inversa (ARP inverso o InARP) se utiliza para obtener direcciones de capa de red (por ejemplo, direcciones IP) de otros nodos de direcciones de capa de enlace de datos (capa 2). Dado que ARP traduce direcciones de capa 3 a direcciones de capa 2, InARP puede describirse como su inverso. Además, InARP se implementa como una extensión de protocolo de ARP: utiliza el mismo formato de paquete que ARP, pero diferentes códigos de operación.
InARP se usa principalmente en Frame Relay (DLCI) y redes ATM, en las que las direcciones de capa 2 de los circuitos virtuales a veces se obtienen de la señalización de capa 2, y las direcciones de capa 3 correspondientes deben estar disponibles antes de que esos circuitos virtuales puedan funcionar. ser usado.
El Protocolo de resolución de dirección inversa (Reverse ARP o RARP), como InARP, traduce direcciones de capa 2 a direcciones de capa 3. Sin embargo, en InARP la estación solicitante consulta la dirección de capa 3 de otro nodo, mientras que RARP se utiliza para obtener la dirección de capa 3 de la propia estación solicitante con fines de configuración de direcciones. RARP está obsoleto; fue reemplazado por BOOTP, que luego fue reemplazado por el Protocolo de configuración dinámica de host (DHCP).
Suplantación de identidad ARP y proxy ARP
Debido a que ARP no proporciona métodos para autenticar respuestas ARP en una red, las respuestas ARP pueden provenir de sistemas distintos al que tiene la dirección de capa 2 requerida. Un proxy ARP es un sistema que responde a la solicitud ARP en nombre de otro sistema para el cual reenviará el tráfico, normalmente como parte del diseño de la red, como para un servicio de acceso telefónico a Internet.. Por el contrario, en la spoofing de ARP, el sistema de respuesta, o spoofer, responde a una solicitud de la dirección de otro sistema con el objetivo de interceptar los datos destinados a ese sistema. Un usuario malintencionado puede utilizar la suplantación de identidad ARP para realizar un ataque de intermediario o de denegación de servicio contra otros usuarios de la red. Existen varios software para detectar y realizar ataques de suplantación de ARP, aunque ARP en sí no proporciona ningún método de protección contra tales ataques.
Alternativas
IPv6 utiliza el Protocolo de descubrimiento de vecinos y sus extensiones, como el descubrimiento de vecinos seguros, en lugar de ARP.
Las computadoras pueden mantener listas de direcciones conocidas, en lugar de usar un protocolo activo. En este modelo, cada computadora mantiene una base de datos del mapeo de direcciones de Capa 3 (por ejemplo, direcciones IP) a direcciones de Capa 2 (por ejemplo, direcciones MAC de Ethernet). Estos datos se mantienen principalmente mediante la interpretación de paquetes ARP desde el enlace de la red local. Por lo tanto, a menudo se le llama caché ARP. Desde al menos la década de 1980, las computadoras en red tienen una utilidad llamada arp para interrogar o manipular esta base de datos.
Históricamente, se utilizaron otros métodos para mantener la asignación entre direcciones, como archivos de configuración estáticos o listas mantenidas centralmente.
Relleno ARP
Los sistemas integrados, como las cámaras en red y los dispositivos de distribución de energía en red, que carecen de una interfaz de usuario, pueden usar el llamado relleno ARP para realizar una conexión de red inicial, aunque este es un nombre inapropiado, ya que ARP no está involucrado.
El relleno ARP se logra de la siguiente manera:
- El ordenador del usuario tiene una dirección IP relleno manualmente en su tabla de direcciones (normalmente con la arp comando with the MAC address taken from a label on the device)
- El ordenador envía paquetes especiales al dispositivo, típicamente un paquete de ping con un tamaño no predeterminado.
- El dispositivo entonces adopta esta dirección IP
- El usuario se comunica con él por protocolos telnet o web para completar la configuración.
Dichos dispositivos suelen tener un método para desactivar este proceso una vez que el dispositivo está funcionando normalmente, ya que la capacidad puede hacerlo vulnerable a un ataque.
Documentos de normas
- RFC 826 - Protocolo de Resolución de Dirección Ethernet, STD estándar de Internet 37.
- RFC 903 - Protocolo de resolución de direcciones inversas, ETS estándar de Internet 38.
- RFC 2390 - Protocolo de resolución de discursos inversos, proyecto de norma
- RFC 5227 - IPv4 Address Conflict Detection, estándar propuesto
Contenido relacionado
Transporte en Kenia
Hormigón
ATA paralelo