Solucionar problemas en una red requiere diversas habilidades técnicas, herramientas y metodologías. Un procedimiento especialmente útil al investigar varios problemas de red es poder determinar la dirección IP de un host en la red cuando solo se dispone de su dirección MAC.
En este artículo, veremos cómo encontrar una dirección IP a partir de una dirección MAC en una red basada en Cisco. Por cierto, ¿conoces la diferencia entre dirección MAC y dirección IP?
Tabla de Contenido
Circunstancias de Solución de Problemas de Red
Inicialmente, podrías preguntarte, ¿por qué querríamos poder hacer esto? Si tienes acceso a un host, simplemente puedes usar el comando ipconfig
(Windows) o ifconfig
(Linux) para encontrar tanto la dirección IP local como la dirección MAC correspondiente.
Sin embargo, hay situaciones en las que es posible que necesites encontrar la dirección IP que corresponde a una dirección MAC específica sin saber realmente a qué dispositivo físico pertenece esa dirección MAC.
La única información que puedes tener es simplemente que la dirección MAC en cuestión pertenece a un dispositivo que está en algún lugar de tu red.
Para lograr esto, necesitarás algunas técnicas que se pueden utilizar en routers y switches Cisco para identificar ese host en particular y determinar cuál es su dirección IP, y eso es lo que describiremos en este artículo.
¿Por qué Necesitas Encontrar una IP a partir de una Dirección MAC?
Antes de examinar las técnicas, echemos un vistazo más de cerca a por qué podrías necesitar realizar esta tarea. Algunos de los escenarios en los que sería útil encontrar la dirección IP que corresponde a una dirección MAC específica incluyen:
- Resolución de problemas de conectividad de red: Si experimentas problemas de conectividad de red, es posible que necesites identificar la dirección IP que corresponde a una dirección MAC específica para solucionar el problema. Esto puede ser útil cuando observas fluctuaciones de direcciones MAC, lo que podría indicar varios problemas relacionados con la red, como bucles de capa 2 o una mala configuración de QinQ, por ejemplo.
- Seguridad de red: Es posible que necesites encontrar la dirección IP que corresponde a una dirección MAC para identificar posibles amenazas de seguridad en tu red. En situaciones como VLAN hopping, ataques de intermediario o incluso cuando se aplica seguridad de puerto, realizar esta acción puede ayudarte a determinar si un dispositivo en particular está autorizado para conectarse a la red o si un dispositivo no autorizado está intentando obtener acceso.
- Solución de problemas de servicios, incluido DHCP: Los administradores de red pueden necesitar rastrear y solucionar problemas en el rendimiento de servicios como DHCP, que asignan direcciones IP a dispositivos específicos. Estas asignaciones se realizan según las direcciones MAC.
Metodología
Hay varios protocolos y tecnologías involucrados en el proceso de determinar la dirección IP que corresponde a una dirección MAC específica. Las dos tecnologías principales son el Protocolo de Resolución de Direcciones (ARP) y el Protocolo de Configuración Dinámica de Hosts (DHCP).
Encontrar la Dirección MAC
Antes de ver cómo encontramos la dirección IP, echemos un vistazo breve a cómo obtenemos la dirección MAC original en primer lugar.
Por supuesto, puedes hacerlo si tienes acceso al dispositivo en cuestión, como una PC o una computadora portátil. Sin embargo, normalmente usarías el comando “show mac-address-table
” en un switch Cisco.
Ejemplo para ilustrar el concepto:
Switch#show mac-address-table
Vlan Mac Address Type Ports
---- -------------- ------- -----
10 0011.2233.4455 DYNAMIC Gi0/1
20 0022.3344.5566 DYNAMIC Gi0/2
La salida de este comando muestra una lista de direcciones MAC y las interfaces en las que han aparecido esas direcciones MAC.
Una vez que encuentres la dirección MAC que estás buscando, puedes proceder a determinar la dirección IP correspondiente.
Uso de ARP en un Dispositivo de Router
ARP mantiene una construcción dentro de cada dispositivo de red llamada tabla ARP. También conocida como caché ARP, contiene los mapeos de direcciones IP a sus direcciones MAC correspondientes. Durante la comunicación de un dispositivo en la red, la tabla ARP se llena con información recibida de las solicitudes ARP.
Es posible ver la tabla ARP de un dispositivo, como un enrutador (router) o un switch, emitiendo el siguiente comando en la interfaz de línea de comandos (CLI) de Cisco IOS:
Router#show arp
Este comando mostrará la tabla ARP completa contenida dentro del dispositivo en ese momento. La salida puede ser similar a la siguiente:
Protocol Address Age (min) Hardware Addr Type Interface
Internet 10.1.1.1 5 0011.2233.4455 ARPA GigabitEthernet0/1
Internet 10.1.1.2 11 000c.29c5.c290 ARPA GigabitEthernet0/1
Internet 10.1.1.3 22 00a1.1234.5678 ARPA GigabitEthernet0/1
Ten en cuenta que para cada dirección IP hay una dirección de hardware correspondiente que es la dirección MAC. Si tienes una red grande, la salida de un comando como este puede ser muy extensa. Si deseas buscar una dirección MAC específica, puedes usar el carácter de tubería (pipe) “|
” para filtrar la salida de la siguiente manera:
Router#show arp | include <dirección MAC>
En el comando anterior, reemplaza <dirección MAC>
con la dirección MAC que deseas buscar. Por ejemplo, si tienes una dirección MAC de 00:11:22:33:44:55, usa el siguiente comando:
Router#show arp | include 0011.2233.4455
Ten en cuenta que la dirección MAC debe estar en el formato correcto utilizado por la CLI de Cisco, que son tres grupos de cuatro dígitos hexadecimales separados por puntos para que el comando funcione.
El comando tiene muchos otros términos clave que se pueden utilizar, incluida la interfaz específica en la que se recibió la información ARP, el nombre VRF
, así como el tipo de entrada ARP que estás buscando.
Los comandos anteriores son los mismos para routers y switches de Cisco. Puedes obtener más detalles sobre ellos en esta referencia de comandos de la CLI de Cisco.
Consideraciones
Ten en cuenta que puedes usar este método para encontrar la dirección IP que corresponde a una dirección MAC solo bajo las siguientes condiciones:
- El dispositivo en el que estás conectado debe haberse comunicado directamente con el host al que pertenece la dirección MAC en las últimas 4 horas, que es el tiempo de espera para la entrada de la tabla ARP de los dispositivos Cisco.
- Un switch o router que haya servido tráfico transitorio del host en cuestión no habrá llenado su tabla ARP con las direcciones MAC e IP que estás buscando. El dispositivo debe ser el destino del tráfico relacionado para haberlo hecho.
- El switch o router en el que emites este comando debe tener al menos una interfaz conectada al segmento de red en el que debe residir esa dirección MAC en cuestión. Esto se debe a que las direcciones MAC solo son significativas en el segmento de red local.
- ARP proxy puede hacer que la puerta de enlace local (router) responda a una solicitud ARP con su propia dirección MAC en nombre del “real” host que posee la dirección, lo que resulta en una suposición incorrecta del mapeo de MAC a dirección IP.
Uso de DHCP
Si estás utilizando DHCP para asignar direcciones IP en tu red, puedes usar el servidor DHCP para determinar la dirección IP que corresponde a una dirección MAC específica. Si tu servidor DHCP se está ejecutando en un dispositivo Cisco, así es cómo puedes usarlo para determinar la dirección IP a partir de una dirección MAC específica.
A diferencia de ARP, DHCP asigna realmente las direcciones IP a hosts específicos. Como tal, mantiene una correspondencia entre la dirección IP asignada y la dirección MAC de cada host. Así es cómo:
Inicia sesión en el dispositivo Cisco que ejecuta el servidor DHCP y emite el siguiente comando:
Router#show ip dhcp binding
Este comando mostrará todas las concesiones DHCP que el servidor ha asignado e incluirá la dirección IP, la dirección MAC y la expiración de la concesión. La salida de dicho comando se verá así:
Router#show ip dhcp binding
IP address Hardware address Lease expiration Type
172.25.1.51 0100.0103.85e9.87 Apr 10 2023 08:55 PM Automatic
172.25.1.52 0100.50da.2a5e.a2 Apr 10 2023 09:00 PM Automatic
172.25.1.53 0100.0103.ea1b.ed Apr 10 2023 08:58 PM Automatic
Similar a los comandos ARP, si deseas buscar una dirección MAC específica, puedes usar el carácter de tubería “|
” para filtrar la salida. Nuevamente, puedes encontrar más información sobre este comando y sus variaciones en esta referencia de comandos de la CLI de Cisco.
A diferencia del uso de la tabla ARP, este método te proporciona información no solo sobre los hosts que pueden estar conectados a segmentos de red locales, sino sobre todos los hosts en tu red que son atendidos por este servidor DHCP específico.
Consideraciones
Ten en cuenta que el servidor DHCP solo conoce los dispositivos que han solicitado una dirección IP, por lo que la dirección MAC que te interesa debe haber realizado una solicitud DHCP en algún momento para que este método funcione.
Además, recuerda que la duración de la concesión determina cuánto tiempo se asigna una dirección IP a un dispositivo. Después de que la concesión expire, la dirección IP puede liberarse nuevamente al grupo y asignarse a otro dispositivo.
Si la concesión ha expirado para la dirección MAC que te interesa, es posible que no aparezca en la lista de concesiones del servidor DHCP y deberás utilizar otro método para determinar la dirección IP correspondiente.
¿Y qué hay de IPv6?
Los métodos anteriores están diseñados para encontrar la dirección IPv4 en cualquier situación dada. Para encontrar la dirección IPv6, se necesitan algunas herramientas adicionales, incluidos DHCPv6, SLAAC y el Protocolo de Descubrimiento de Vecinos (NDP) y sus comandos relacionados. Muchos de los principios son los mismos, pero las herramientas utilizadas, así como la sintaxis de la CLI, son diferentes.
Conclusión
Encontrar la dirección IP que corresponde a una dirección MAC en una red de Cisco puede ser un paso crucial en la resolución de problemas de red.
ARP y DHCP son mecanismos cruciales que se pueden utilizar para determinar estas direcciones IP. Al comprender estos métodos y saber cómo utilizarlos de manera efectiva, los administradores de red pueden solucionar problemas de red de manera más rápida y eficiente, y garantizar que su red funcione sin problemas.