Cuando realizas tareas de solución de problemas o mantenimiento en una red empresarial, a veces es necesario identificar la dirección MAC de dispositivos particulares (hosts, otros switches, otros dispositivos de red) que están conectados a la red.
En redes más pequeñas, esto es algo simple de lograr; sin embargo, en redes más grandes, puede volverse un desafío.
En este artículo, exploraremos cómo hacer esto en redes basadas en Cisco, desde un solo switch hasta una red empresarial más grande con varios switches.
En otro artículo, explicamos cómo encontrar una dirección IP a partir de una dirección MAC, lo cual también es una habilidad útil para dominar como administrador de red.
Tabla de Contenido
La Importancia de la Dirección MAC
En el vasto mundo de las redes, cada dispositivo tiene una identidad única conocida como la Dirección de Control de Acceso a Medios (Media Access Control) (MAC, por sus siglas en inglés).
Esta dirección de hardware está cableada en cada tarjeta de interfaz de red (NIC, por sus siglas en inglés) de Ethernet y se utiliza para garantizar que los paquetes de datos lleguen al dispositivo correcto.
Switches y Direcciones MAC
Para los administradores de red que gestionan switches Cisco, la capacidad de identificar la dirección MAC de un dispositivo conectado a un puerto en particular puede ser invaluable.
Los switches crean lo que se conoce como una tabla de direcciones MAC, que es un componente vital del switching de la Capa 2 en las redes Ethernet.
A veces llamada tabla CAM (Content Addressable Memory, por sus siglas en inglés), debido al tipo de memoria que utiliza para almacenar su información, la tabla de direcciones MAC permite que el switch reenvíe eficientemente tramas basadas en direcciones MAC, asegurando que las tramas se entreguen solo al destinatario previsto.
Propósito de la Tabla de Direcciones MAC
El propósito principal de la tabla de direcciones MAC es mantener un mapeo entre las direcciones MAC y los puertos de switch correspondientes donde están conectados los dispositivos.
Esto asegura que las tramas de Ethernet se envíen al puerto apropiado, minimizando el tráfico de red innecesario y garantizando un uso eficiente del ancho de banda.
¿Cómo se llena la Tabla de Direcciones MAC?
Cuando un switch recibe una trama de Ethernet en uno de sus puertos, examina la dirección MAC de origen de esa trama.
Si la dirección aún no está en la tabla de direcciones MAC, el switch agrega una entrada para esa dirección MAC, asociándola con el puerto por el cual se recibió la trama. Este proceso se llama aprendizaje dinámico.
Cada entrada en la tabla de direcciones MAC tiene un tiempo de envejecimiento. Si el switch no detecta una trama de una dirección MAC particular dentro de ese tiempo de envejecimiento, que por defecto en un switch Cisco es de 300 segundos, o cinco minutos, eliminará esa dirección de la tabla. Esto asegura que la tabla se mantenga actualizada y no almacene entradas obsoletas o desactualizadas.
También es posible, aunque mucho menos común, asignar estáticamente una dirección MAC a un puerto específico en la tabla de direcciones MAC. Esto se llama una entrada estática de tabla de direcciones MAC, y tales entradas nunca caducan.
Encontrar un Dispositivo con una Dirección MAC Específica (comando show mac address-table)
Hay momentos en los que conoces la dirección MAC de un dispositivo y quieres descubrir a qué puerto del switch está conectado.
Puedes obtener la dirección MAC de diversas fuentes, como un servidor DHCP, desde el sistema operativo (como Windows) del host o desde una etiqueta en el propio dispositivo. Suponiendo que conoces esa dirección MAC, puedes comenzar la búsqueda del puerto en el que está conectado ese dispositivo.
Topologías Simples
Para topologías con un solo switch, esto es relativamente simple. Utilizando el comando “show mac address-table
“, puedes mostrar el contenido de la tabla de direcciones MAC actual. Un ejemplo de salida se puede mostrar aquí:
Switch# show mac address-table
Vlan Mac Address Type Ports
—- ———– ——– —–
10 00a1.b2c3.d4e5 DYNAMIC Fa0/1
20 00b2.c3d4.e5f6 STATIC Fa0/2
Aquí hay una explicación de lo que representa cada columna:
- Vlan: Si el puerto correspondiente es un puerto de acceso, entonces el número de identificación de VLAN indicado aquí coincide con la VLAN configurada en ese puerto. Si es un troncal, entonces esta columna indica la VLAN específica con la que se asocia la dirección MAC.
- Mac Address: La dirección MAC del dispositivo conectado al puerto.
- Type: El tipo de entrada de dirección MAC, ya sea estática o dinámica.
- Ports: El puerto específico en el que se ha detectado la dirección MAC mencionada.
A partir de esta salida, puedes determinar a qué puerto está conectado directamente un host particular con una dirección MAC específica.
Topologías Más Complejas
¿Qué sucede si tienes varios switches y el host que estás buscando no está conectado directamente al switch local? Echemos un vistazo a esta topología:
Digamos que esto es parte de una topología empresarial más grande con docenas de switches. Nos dieron acceso a la interfaz de línea de comandos (CLI) de SW1 y nos dieron la dirección MAC de PC1 por un técnico que está en la PC.
La dirección MAC es 00a1.b2c3.001, pero no sabemos a qué switch está conectada. Para averiguarlo, podemos usar el comando show mac address-table
en SW1, y podríamos ver algo como esto:
SW1# show mac address-table
Vlan Mac Address Type Ports
—- ———– ——– —–
5 00a1.b2c3.0001 DYNAMIC Gi0/1
6 00a1.b2c3.0002 DYNAMIC Gi0/1
7 00a1.b2c3.0003 DYNAMIC Gi0/1
5 00a1.b2c3.0004 DYNAMIC Gi0/2
6 00a1.b2c3.0005 DYNAMIC Gi0/3
7 00a1.b2c3.0006 DYNAMIC Gi0/4
Notamos que la dirección MAC que estamos buscando aparece en Gi0/1. Al observar la topología, vemos que este es un puerto de troncal, y esto se confirma por el hecho de que podemos ver varias direcciones MAC correspondientes a este único puerto.
Esto tiene sentido porque todos los hosts en SW2 harán que sus tramas ingresen a SW1 a través de Gi0/1, y la tabla de direcciones MAC se poblara a medida que salgan por ese puerto.
Una vez que determinamos esto, podemos ir a SW2, que está conectado a nuestro puerto de troncal Gi0/1, y realizar el mismo comando.
Podemos seguir haciendo esto hasta que finalmente encontremos el switch al cual nuestra PC1 está conectada directamente en un puerto de acceso. En este caso, si emitimos el mismo comando en SW2, determinamos que está conectado a un puerto de acceso:
SW2# show mac address-table dynamic address 00a1.b2c3.0001
Vlan Mac Address Type Ports
—- ———– ——– —–
5 00a1.b2c3.0001 DYNAMIC Gi0/2
El comando anterior con las palabras clave adicionales que indican la dirección MAC específica que estamos buscando, muestra solo esa dirección, y podemos ver que está conectada a Gi0/2. Podemos ver, a través de un examen más detenido de la configuración, que es un puerto de acceso.
La importancia práctica de encontrar una MAC
Determinar a qué puerto está conectada una dirección MAC en un switch Cisco ofrece varias ventajas, algunas de las cuales se enumeran a continuación:
- Seguridad y aplicación de políticas de red: Las direcciones MAC se pueden utilizar para implementar políticas de seguridad. Por ejemplo, solo se pueden permitir dispositivos con ciertas direcciones MAC en una VLAN o segmento de red específico.
- Solución de problemas: Ayuda a diagnosticar problemas de conectividad o configuración. Al saber qué dispositivo está conectado dónde, los administradores de red pueden identificar mejor los problemas y resolverlos más rápidamente.
- Inventario y seguimiento de activos: Los administradores de red pueden hacer un seguimiento de los dispositivos conectados a la red, lo cual es esencial para organizaciones más grandes con muchos dispositivos.
Identificación del Fabricante a través del OUI
Hay otro aspecto importante de este procedimiento que puede ser útil al identificar dispositivos mediante sus direcciones MAC.
La dirección MAC no es solo una cadena aleatoria de números y letras. Los tres primeros octetos, o los primeros seis dígitos hexadecimales, conocidos como Identificador Único Organizacional (OUI, por sus siglas en inglés -Organizationally Unique Identifier), indican el fabricante del dispositivo.
Al buscar el OUI, se puede determinar el proveedor del dispositivo. Esto puede ser especialmente útil en entornos donde se detectan dispositivos desconocidos o cuando es necesario estandarizar el equipo. Algunos ejemplos de OUI bien conocidos incluyen:
- Cisco Systems: 00-40-96, 00-1E-13, 00-1D-45, 00-1B-D5
- Hewlett-Packard (HP): 00-50-8B, 00-60-B0, 00-80-5F, 3C-D9-2B
- Apple Inc.: 00-03-93, 00-16-CB, 00-1A-63, 00-1F-F3
- Intel Corporation: 00-02-B3, 00-08-C7, 00-0E-0C, 00-1B-77
Conclusión
Localizar la dirección MAC de un dispositivo en un puerto de switch de Cisco es una habilidad fundamental para los administradores de red. Ya sea para aplicar medidas de seguridad, solucionar problemas o realizar un seguimiento de activos, entender el comando show mac address-table
y su salida es esencial.