1. ¿Qué es Wireshark?
Wireshark es un analizador de protocolos de red, la herramienta de diagnóstico más potente y universal que existe. Para un técnico de UF1794, Wireshark es como un microscopio: nos permite ver con un detalle absoluto todo lo que viaja por un cable de red, desde las cabeceras Ethernet de Capa 2 hasta los datos de aplicación de un telegrama PROFINET en Capa 7.
Es una herramienta indispensable para resolver problemas complejos: ¿por qué un dispositivo pierde la comunicación de forma intermitente? ¿Está la red saturada? ¿Hay un equipo enviando paquetes erróneos? Wireshark tiene la respuesta, pero para usarlo correctamente, primero hay que entender cómo "escucha" la red.
2. El Modo Normal de una Tarjeta de Red
Por defecto, una tarjeta de red (NIC) es "egoísta" y eficiente. Cuando un paquete llega a su puerto físico, el hardware de la tarjeta mira la dirección MAC de destino. Si esa MAC no es la suya propia (o la dirección de broadcast), la tarjeta descarta el paquete inmediatamente a nivel de hardware, sin ni siquiera molestar a la CPU del ordenador. Esto es una optimización vital para que el procesador no se sature analizando tráfico que no le concierne.
Esto implica que si conectas tu portátil a un switch, por defecto solo verás el tráfico que va dirigido a ti y el tráfico de broadcast general. No verás la conversación privada entre el PLC y el variador de frecuencia que están en otros puertos.
3. El Modo Promiscuo: Escuchando Conversaciones Ajenas
Para poder analizar una red, necesitamos que nuestra tarjeta de red deje de ser "egoísta". Al iniciar una captura, Wireshark (con permisos de administrador) le pide al driver de la tarjeta de red que entre en modo promiscuo. En este modo, la tarjeta desactiva su filtro de hardware y empieza a aceptar y enviar a la CPU absolutamente todos los paquetes que ve en el cable, sin importar a quién vayan dirigidos.
Activar el modo promiscuo es el primer paso y el más fundamental para cualquier análisis de red. Sin él, Wireshark estaría prácticamente ciego.
4. La Interfaz de Wireshark: Los Tres Paneles
La interfaz de Wireshark puede parecer abrumadora, pero se divide en tres paneles lógicos que un técnico debe dominar:
- Lista de Paquetes (Packet List): Es el panel superior. Muestra un resumen de cada paquete capturado en orden cronológico: número, tiempo, IP de origen, IP de destino, protocolo y un breve resumen del contenido. Aquí es donde buscamos y filtramos los paquetes que nos interesan.
- Detalles del Paquete (Packet Details): Es el panel intermedio. Al seleccionar un paquete de la lista, este panel nos muestra una vista de árbol con todas las capas del modelo OSI decodificadas. Podemos expandir la capa Ethernet para ver las MACs, la capa IP para ver las IPs, la capa TCP para ver los puertos, y (si Wireshark lo soporta) la capa de aplicación para ver los datos de PROFINET o Modbus.
- Bytes del Paquete (Packet Bytes): Es el panel inferior. Muestra la "verdad absoluta": los datos crudos del paquete en formato hexadecimal y su representación en texto ASCII. Es la vista de más bajo nivel, útil para encontrar patrones o datos que Wireshark no ha sabido decodificar.
La habilidad de un buen diagnosticador reside en saber moverse entre estos tres paneles para correlacionar un problema (ej. "el motor no arranca") con un dato específico en un paquete (ej. "el bit de Start en el telegrama PROFINET está a 0").
Fuente: Elaboración propia / Licencia: CC BY-NC 4.0.
📝 Evaluación Técnica: Análisis de Paquetes
1. ¿Qué es el "modo promiscuo" de una tarjeta de red y por qué es esencial para utilizar Wireshark?
2. Conectas tu portátil a un puerto normal de un switch industrial. En la misma red, un PLC y una HMI están intercambiando datos constantemente. Al iniciar una captura en Wireshark, ¿qué tráfico verás?
3. Estás analizando una trama PROFINET en Wireshark y necesitas ver el valor exacto del "Frame ID" en formato hexadecimal. ¿En qué panel de la interfaz de Wireshark buscarías esta información?
🤖 Ejercicio Práctico 6: Sniffer Básico con Scapy
Objetivo: Entender cómo un programa puede capturar tráfico de red y empezar a interpretarlo.
Copia el siguiente *prompt* y pégalo en un modelo de IA (como ChatGPT, Gemini o Claude).