Protocolos de Asociación de Direcciones de Red: ARP, RARP, BOOTP y DHCP
Clasificado en Informática
Escrito el en español con un tamaño de 5,91 KB
Asociación de Direcciones en Redes
ARP: Asociación de Direcciones Lógicas a Físicas
Cuando un host necesita enviar un datagrama IP a otro host en la misma red local, incluye en dicho datagrama la dirección lógica (IP) del destinatario. Sin embargo, para la transmisión a nivel de enlace de datos, es necesario conocer la dirección física (como la dirección MAC) del receptor correspondiente a ese enlace físico.
Para obtener esta dirección física, el emisor envía a la red una trama de consulta ARP (Address Resolution Protocol). Esta trama incluye las direcciones física e IP del emisor y la dirección IP del destinatario cuya dirección física se busca. Todos los equipos de la red local reciben este paquete (es un broadcast), pero solo el destinatario cuya IP coincide lo procesa, devolviendo una trama de respuesta ARP que contiene sus direcciones lógica (IP) y física.
El protocolo ARP podría ser ineficiente si se necesitara realizar una petición ARP por broadcast para cada paquete IP a enviar. Para optimizar este proceso, los sistemas operativos almacenan las respuestas ARP (mapeos IP-MAC) en una memoria caché ARP durante un período de tiempo (típicamente entre 20 o 30 minutos). Antes de enviar una nueva petición ARP, el sistema comprueba su caché para ver si ya existe una asociación válida para la IP de destino.
Asociación de Direcciones Físicas a Lógicas (RARP, BOOTP y DHCP)
Existen dos situaciones básicas en las que un dispositivo necesita obtener su dirección lógica (IP) a partir de su dirección física conocida:
- Cuando arranca una estación sin disco (diskless workstation), esta no conoce su dirección IP, pero sí conoce su dirección física (grabada en la tarjeta de red).
- Cuando una organización no dispone de suficientes direcciones IP para asignar de forma permanente a cada estación, o prefiere una gestión centralizada, necesita asignar IPs bajo demanda. Cada equipo puede enviar a la red su dirección física y obtener una dirección IP asignada para un tiempo determinado.
RARP (Reverse Address Resolution Protocol)
Una máquina sin disco arranca cargando su sistema operativo básico desde su ROM. Durante esta carga, el equipo puede ejecutar una aplicación cliente RARP. Este cliente lee la dirección física de la máquina desde la tarjeta de red y la envía a la red mediante un broadcast en una petición RARP. Al recibir dicha petición, el servidor RARP de la red busca la dirección física en su tabla de configuración y devuelve un mensaje de respuesta RARP con la dirección IP asignada a esa máquina.
Un inconveniente de RARP es que generalmente requiere que haya un servidor RARP en cada segmento de red física, por lo que este método está en gran parte obsoleto.
BOOTP (Bootstrap Protocol)
BOOTP es un protocolo cliente/servidor que opera a nivel de aplicación. Encapsula sus mensajes (peticiones y respuestas) dentro de paquetes UDP (User Datagram Protocol). En la petición inicial, el cliente deja a ceros la dirección IP origen y utiliza una dirección IP destino de broadcast (255.255.255.255) o la dirección específica del servidor si la conoce.
Al funcionar a nivel de aplicación y usar IP/UDP, no hay problema inherente con que el servidor BOOTP esté en una red diferente a la del cliente. En estos casos, es necesario configurar un router o un equipo dedicado como agente de reenvío BOOTP (BOOTP Relay Agent). Este agente escucha las peticiones BOOTP de broadcast en la red local, las encapsula en un nuevo datagrama IP dirigido al servidor BOOTP real (que puede estar en otra red) y tramita la respuesta del servidor de vuelta al cliente original.
DHCP (Dynamic Host Configuration Protocol)
Mientras que BOOTP funciona principalmente con tablas estáticas que asocian direcciones físicas con direcciones IP (las cuales deben ser actualizadas manualmente por el administrador de la red), resulta insuficiente si una máquina necesita una IP temporal o si se mueve frecuentemente entre redes.
DHCP es una evolución de BOOTP y es compatible con él en gran medida. DHCP permite tanto la asignación estática como la dinámica de direcciones IP y otros parámetros de configuración de red (máscara de subred, puerta de enlace, servidores DNS, etc.):
- Asignación Estática: Funciona de manera similar a BOOTP. El servidor DHCP tiene una tabla con asignaciones predefinidas basadas en la dirección física (MAC) del cliente. Es útil para servidores o dispositivos que requieren una IP fija.
- Asignación Dinámica: Si un cliente DHCP solicita una dirección y no aparece en la tabla de asignaciones estáticas (o si se configura para asignación dinámica), el servidor DHCP consulta una tabla (pool) de direcciones IP disponibles. Puede asignar una de estas IPs bajo demanda al cliente durante un período de tiempo limitado y negociable (lease time). Esto permite la reutilización eficiente de las direcciones IP.