2.3. Resolución de direcciones

Ahora que sabe como se componen las direcciones IP, se estará preguntando cómo se usan en una red Ethernet o Token Ring para identificar los diferentes puestos. Después de todo, dichos protocolos tienen sus propias direcciones para identificar los puestos y éstas no tienen absolutamente nada en común con una dirección IP, ¿verdad? De acuerdo.

Se necesita un mecanismo para proyectar las direcciones IP en las direcciones de la red subyacente. Este mecanismo es el Address Resolution Protocol (ARP). De hecho, ARP no se limita a Ethernet o Token Ring, sino que también se usa en otros tipos de redes, tales como el protocolo de radio amateur AX.25. La idea básica del ARP es exactamente lo que la mayor parte de la gente haría si tuviese que encontrar al señor X en una multitud de 150 personas: la persona que le busca le llamaría lo suficientemente fuerte para que todo el mundo en la habitación pueda oírle, esperando que el señor X responda si está allí. Cuando él responda, sabremos qué persona es.

Cuando ARP quiere encontrar la dirección Ethernet correspondiente a una dirección IP dada, usa una característica Ethernet denominada difusión, en la cual un datagrama se envía simultáneamente a todas las estaciones de la red. El datagrama de difusión enviado por el ARP contiene la dirección IP en cuestión. Cada puesto receptor compara esta dirección con la suya propia y si coinciden, devuelve una respuesta ARP al puesto emisor. El puesto emisor puede entonces obtener la dirección Ethernet del remitente de la respuesta.

Se preguntará como un puesto puede localizar una dirección de Internet que puede estar en una red diferente al otro lado del mundo. La respuesta a esta pregunta tiene que ver con el encaminamiento, esto es, encontrar la ubicación física de un puesto en una red. Discutiremos esta cuestión más profundamente en la próxima sección.

Hablemos un poco más sobre ARP. Una vez que un puesto ha descubierto una dirección Ethernet, la guarda en su caché ARP de forma que no tiene que preguntar por ella de nuevo la próxima vez que quiera enviar un datagrama al puesto en cuestión. De cualquier modo, es poco aconsejable mantener esta información para siempre; la tarjeta Ethernet del puesto remoto puede ser reemplazada a causa de problemas técnicos, así la entrada ARP sería inválida. Por tanto, las entradas en la caché ARP son desechadas cada cierto tiempo para forzar otra búsqueda de la dirección IP.

A veces también es necesario encontrar la dirección IP asociada a una dirección Ethernet dada. Esto ocurre cuando una máquina sin disco necesita arrancar desde un servidor de la red, lo que es una situación común en redes de área local. Un cliente sin disco, de todos modos, virtualmente no tiene información de sí mismo—¡excepto de su dirección Ethernet! De modo que difunde un mensaje que contiene una petición para que un servidor de arranque le otorgue una dirección IP. Hay otro protocolo para esta situación denominado Reverse Address Resolution Protocol (RARP). Junto al protocolo BOOTP, sirve para definir el proceso de arranque de clientes sin disco a través de la red.