Introducción
El equipo de eventos Grove necesita un ejemplo fiable de cómo un visitante abre los detalles de Night Garden Walk. Usarás tráfico HTTP grabado real para encontrar la visita correcta, emparejar las solicitudes con sus respuestas y preparar una captura que otro analista pueda volver a abrir.
Debes saber abrir archivos, introducir comandos sencillos en la terminal y aplicar un filtro de visualización básico de Wireshark. No hace falta programar. Usa Desktop durante todo el laboratorio; su terminal, Wireshark y editor de texto comparten este contenedor de prácticas. Son grabaciones controladas, no tráfico de visitantes en directo. Este laboratorio comienza de forma independiente y el tiempo estimado incluye lectura y errores habituales.
Aislar una visita completa
En este paso encontrarás la visita normal de Cedar y exportarás su conversación completa. Comienza en Desktop. Abre Applications → Terminal Emulator desde el menú inferior izquierdo del escritorio. La captura preparada es un archivo de entrada: consérvalo intacto. Ejecuta este comando para iniciar Wireshark y abrirlo. La terminal seguirá ocupada mientras Wireshark se ejecute; continúa en la ventana de Wireshark.
wireshark /home/labex/project/event-page/input/casebook.pcapng
Maximiza la ventana con el botón de su barra de título. El panel superior enumera los paquetes, el central explica el seleccionado y el inferior muestra sus bytes. Este archivo registra tres visitas distintas a un servicio local de eventos. La dirección del servicio es 127.0.0.1; las direcciones de cliente son identidades de prueba locales diferentes, no máquinas físicas.
| Visita | Cliente | Uso en este laboratorio |
|---|---|---|
| cedar | 127.0.0.2 | Visita normal que debes entregar |
| willow | 127.0.0.3 | Otro visitante, fuera de esta entrega |
| birch | 127.0.0.4 | Otro visitante, fuera de esta entrega |
Haz clic en la barra de filtros sobre la lista, introduce esta expresión y pulsa Enter. ip.addr coincide con cualquiera de los extremos, por lo que conserva ambos sentidos. == significa igualdad. Un filtro de visualización cambia la vista; no elimina paquetes del archivo de entrada.
ip.addr == 127.0.0.2
Abre Statistics → Conversations, selecciona la pestaña TCP y activa Limit to display filter si es necesario. Una conversación TCP incluye ambas direcciones y ambos puertos. Su Duration incluye tiempo inactivo, de modo que no mide una respuesta HTTP individual. Confirma que la conversación seleccionada conecta Cedar con el servicio de eventos y cierra el diálogo.
Selecciona una solicitud cuyo Info empiece por GET. HTTP es el protocolo de solicitudes y respuestas de la aplicación. Un URI identifica el recurso solicitado: aquí el valor view elige list, details o programme. Haz clic derecho en la solicitud y elige Follow → TCP Stream. Lee ambos sentidos, desplazándote si hace falta. Cedar solicita los detalles dos veces en la misma conexión. Por tanto, el mismo URI y flujo no identifican de forma única una solicitud.
Cierra la ventana Follow con Close. Wireshark deja aplicado un filtro de flujo. Consérvalo: esta vista incluye los segmentos TCP de la conexión, no solo los paquetes etiquetados como HTTP. Si elegiste otra visita por error, sustituye el filtro por la expresión de dirección de Cedar y repite Follow sobre una solicitud de Cedar.
Elige File → Export Specified Packets. Guarda como /home/labex/project/event-page/output/evidence.pcapng, con formato pcapng, rango Displayed y All packets dentro del conjunto mostrado. Mantén separado el archivo de entrada. Si usaste otro nombre de salida, repite la exportación con el requerido. No uses Export Packet Dissections: produce resúmenes en vez de una captura reutilizable.

Comprueba la columna Displayed y la opción All packets antes de guardar. El ejemplo contiene 30 paquetes mostrados de Cedar.
Elige File → Open y abre el nuevo evidence.pcapng. Aplica http en la barra de filtros. Debes encontrar cuatro GET y cuatro respuestas HTTP; inspecciona su contenido además de contarlos. Una respuesta puede abarcar varios segmentos TCP. Exportar solo las filas etiquetadas como HTTP puede descartar segmentos anteriores, aunque la ventana original mostrase la respuesta completa. Reabrir el archivo exportado permite detectar ese error.
Si falta una respuesta o no puede reensamblarse, vuelve a abrir la entrada original, restaura el filtro de dirección de Cedar y exporta otra vez la conexión completa. Nunca rellenes contenido ausente escribiéndolo en otro archivo.
Emparejar solicitudes con sus respuestas reales
En este paso distinguirás las dos solicitudes de detalles y registrarás los cuatro pares correctos. Comienza en Desktop, con Wireshark abierto. Usa File → Open para volver a /home/labex/project/event-page/input/casebook.pcapng. Todos los números de trama de la tabla siguiente corresponden a esta entrada original, no a la exportación renumerada.
Combina dos condiciones con &&, que exige que se cumplan ambas. http selecciona mensajes HTTP decodificados.
ip.addr == 127.0.0.2 && http
Selecciona el primer GET. Expande Hypertext Transfer Protocol en el panel central mediante su triángulo, o selecciona esa fila y pulsa Right Arrow. Lee el URI y la cabecera X-Request. Esta aplicación sintética asigna una referencia propia a cada solicitud, como cedar-01.
Busca Response in frame. Haz clic derecho en ese campo y elige Go to Linked Packet. En la sección HTTP de la respuesta, Request in frame apunta a la solicitud original. Ambos enlaces importan: la última respuesta de un flujo no responde necesariamente a su primera solicitud.
Expande JavaScript Object Notation → Object → Member: title en la respuesta, desplazando el panel central si es necesario, o usa Follow → TCP Stream para leer la conversación completa de la aplicación. El título es Night Garden Walk. JSON representa valores de aplicación etiquetados; title es la etiqueta y las palabras entre comillas que la siguen son el valor. Lee el valor real, no solo el código 200. Si la sección JSON queda fuera de la zona visible, desplaza el panel central.
Repite con cada solicitud de Cedar, incluidas ambas de detalles. En esta grabación fija debes encontrar:
| Trama de solicitud en la entrada | Respuesta correspondiente | Título del evento |
|---|---|---|
| 4 | 10 | Night Garden Walk |
| 12 | 16 | Night Garden Walk |
| 17 | 21 | Night Garden Walk |
| 23 | 27 | Night Garden Walk |
Para comparar más fácilmente los enlaces, haz clic derecho en Response in frame de una solicitud y elige Apply as Column. Es normal que las filas de respuesta tengan celdas vacías: disponen del campo Request in frame en su lugar. Esta columna es una ayuda, no un ajuste obligatorio del perfil. Úsala para comprobar que las solicitudes de detalles repetidas apuntan a respuestas distintas.

Lee el número de trama original de la izquierda y Response in frame a su lado. Las dos solicitudes de detalles llevan a las tramas 16 y 27.
Crea la pequeña tabla de entrega en el editor gráfico. Abre otra vez Applications → Terminal Emulator para crear otra terminal en Desktop. mousepad abre el editor suministrado; la ruta absoluta indica el archivo de salida.
mousepad /home/labex/project/event-page/output/pairs.csv
Introduce este CSV completo. CSV separa campos mediante comas y coloca un registro en cada línea. Su cabecera da nombre a las columnas. Estos títulos no contienen comas, por lo que no necesitan comillas adicionales.
request_frame,response_frame,title
4,10,Night Garden Walk
12,16,Night Garden Walk
17,21,Night Garden Walk
23,27,Night Garden Walk
Guarda con Ctrl+S. Si aparece un diálogo de guardado, confirma el directorio exacto y el nombre pairs.csv. Vuelve a Wireshark mediante su ventana o el botón del panel inferior. Compara cada fila del CSV con los enlaces reales de solicitud/respuesta de la entrada. La tabla documenta la investigación; no sustituye tu evidence.pcapng completo.
Resumen
Usaste las conversaciones de Wireshark y Follow TCP Stream para aislar una visita, volviste a abrir una captura completa exportada y emparejaste las solicitudes HTTP repetidas con sus propias respuestas. La entrada original sigue intacta; los paquetes exportados y la breve tabla de pares pueden comprobarse de forma independiente.


