sábado, 18 de agosto de 2007

ARP

ARP


ARP son las siglas en inglés de Address Resolution Protocol (Protocolo de resolución de direcciones).
Es un
protocolo de nivel de red responsable de encontrar la dirección hardware (Ethernet MAC) que corresponde a una determinada dirección IP. Para ello se envía un paquete (ARP request) a la dirección de multidifusión de la red (broadcast (MAC = ff ff ff ff ff ff)) que contiene la dirección IP por la que se pregunta, y se espera a que esa máquina (u otra) responda (ARP reply) con la dirección Ethernet que le corresponde. Cada máquina mantiene una caché con las direcciones traducidas para reducir el retardo y la carga. ARP permite a la dirección de Internet ser independiente de la dirección Ethernet, pero esto solo funciona si todas las máquinas lo soportan.
ARP está documentado en el
RFC (Request For Comments) 826.
El protocolo
RARP realiza la operación inversa.
En
Ethernet, la capa de enlace trabaja con direcciones físicas. El protocolo ARP se encarga de traducir las direcciones IP a direcciones MAC (direcciones físicas).Para realizar ésta conversión, el nivel de enlace utiliza las tablas ARP, cada interfaz tiene tanto una dirección IP como una dirección física MAC.
ARP se utiliza en 4 casos referentes a la comunicación entre 2 hosts:
Cuando 2 hosts están en la misma red y uno quiere enviar un paquete a otro.
Cuando 2 host están sobre redes diferentes y deben usar un gateway/router para alcanzar otro host.
Cuando un router necesita enviar un paquete a un host a través de otro router.
Cuando un router necesita enviar un paquete a un host de la misma red.
Tabla de contenidos[
ocultar]
1 Tablas ARP
2 Funcionamiento I
3 Funcionamiento II
4 Enlaces externos

Tablas ARP
La filosofía es la misma que tendríamos para localizar al señor X entre 150 personas: preguntar por su nombre a todo el mundo, y el señor X nos responderá. Así, cuando a A le llegue un mensaje con dirección origen
IP y no tenga esa dirección en su tabla ARP, enviará su trama ARP a la dirección broadcast (física), con la IP de la que quiere conocer su dirección física. Entonces, el equipo cuya dirección IP coincida con la preguntada, responderá a A enviándole su dirección física. En este momento A ya puede agregar la entrada de esa IP a su tabla ARP. Las entradas de la tabla se borran cada cierto tiempo, ya que las direcciones físicas de la red pueden cambiar (Ej: si se estropea una tarjeta de red y hay que sustituirla)

Funcionamiento I
Si A quiere enviar una trama a la dirección
IP de B (misma red), mirará su tabla ARP para poner en la trama la dirección destino física correspondiente a la IP de B. De esta forma, cuando les llegue a todos la trama, no tendrán que deshacerla para comprobar si el mensaje es para ellos, sino que se hace con la dirección física.

Funcionamiento II
Si A quiere enviar un mensaje a C (un nodo que no este en la misma red), el mensaje deberá salir de la red. Así, A envía la trama a la dirección física de salida del router. Esta dirección física la obtendrá a partir de la
IP del router, utilizando la tabla ARP. Si esta entrada no esta en la tabla, mandará un mensaje ARP a esa IP (llegará a todos), para que le conteste indicándole su dirección física.

Ejemplo Address Resolution Protocol
Una vez en el router, éste consultará su tabla de encaminamiento, obteniendo el próximo nodo (salto) para llegar al destino, y saca el mensaje por el interfaz correspondiente. Esto se repite por todos los nodos, hasta llegar al último router, que es el que comparte el medio con el host destino. Aquí el proceso cambia: el interfaz del router tendrá que averiguar la dirección física de la
IP destino que le ha llegado. Lo hace mirando su tabla ARP o preguntando a todos.

No hay comentarios: