El protocolo ARP (Address Resolution Protocol) nos sirve para resolver direcciones físicas(MAC) a partir de las direcciones logicas(IP).

En ocasiones un nodo en la red necesita saber la dirección MAC de determinado equipo y sí solo conoce la dirección IP entonces realiza una solicitud ARP con esta dirección IP esperando que el equipo propietario de dicha dirección le responda con su dirección MAC.

Para que quede mas claro tratare de explicar esto con una imagen:

protocolo_arpComo podemos ver el nodo con IP 192.168.0.1 y MAC 10:16:F8:BA:19:57 Desea saber la dirección MAC del equipo con IP 192.168.0.9 por lo tanto envía una solicitud ARP a todos los equipos(broadcast) preguntando algo como:

Equipo 192.168.0.9 ¿me puedes enviar tu dirección MAC?

 

Esta “pregunta”(ARP – Request) les llega a todos los equipos a la red, pero solamente el equipo que tenga la dirección 192.168.0.9 será quien responda dicha pregunta(ARP-Reply) con algo como:

Equipo 192.168.0.1, yo soy 192.168.0.9 y mi dirección física es: 00:D1:16:19:34:01

Si nos percatamos en el ARP-Reply(respuesta) la respuesta la envia al equipo con MAC 10:16:F8:BA:19:57 por lo cual la solicitud no es enviada a todos los equipos como en el caso del ARP-Request(solicitud).

Tablas ARP

Todo este proceso de obtener la relaciones de direcciones IP y MACs puede provocar bastante trafico en la red sobre todo en el proceso de solicitud ya que como vimos se llena toda la red de paquetes.

Por esta razón los equipos van generando una tabla en donde almacenan esta información y con esto evitar la necesidad de realizar solicitudes ARPs. Dichas tablas son conocidas como Tablas ARPs.

Obteniendo las tablas ARPs:

Cuando configuramos una red es bastante común el ocupar las direcciones MAC y su relación con las direcciones IPs para determinadas configuraciones p.e. configurar una NAT, asignación de direcciones IPs especificas, bloqueo de equipos, etc…

La mayoría de los sistemas operativos cuentan con el comando arp el cual nos muestra dichas tablas veamos como obtenerlas en los sistemas operativos mas comunes:

#Linux, MAC y Windows
arp -a
#En Windows tmb se puede ocupar
arp -g

Tablas ARPs en Android.

En android no contamos con dicho comando sin embargo podemos acceder a un archivo (arp) ubicado en /proc/net/ (en esta carpeta están las configuraciones de red de android) en el cual se encuentran las tablas arp, sin mas veamos como visualizar dichas tablas.

cat /proc/net/arp

Nota: para acceder a la consola en android podemos ocupar la aplicación: “Terminal Emulator for Android”, la cual puedes acceder desde:

https://play.google.com/store/apps/details?id=jackpal.androidterm&hl=es

NOTA2: Los sistemas operativos Unix(Linux & MAC) cuentan tambien con el archivo /proc/net/arp

Para mayor info:

Fitorec

Me gusta la programación, me fascina el software libre, mis lenguajes preferidos son PHP, JavaScript, Python y Bash (aunque me gusta programar en casi cualquier lenguaje), en sistemas operativos me gusta GNU/Linux.

Más Entradas - Website

Sígueme:
TwitterGoogle PlusYouTubeDelicious

Sin Comentarios

Puedes ser el primero en comentar.

Deja un comentario

Por favor, introduzca su nombre. Please enter an valid email address. Por favor, introduzca un mensaje.