Introducción
En este laboratorio, aprenderá cómo filtrar y exportar paquetes de red específicos utilizando la herramienta de línea de comandos tshark de Wireshark. Practicará la extracción de paquetes UDP de un archivo de captura de muestra (capture.pcap) y los guardará en un nuevo archivo (udp.pcap).
El ejercicio cubre las operaciones clave de tshark, incluyendo la apertura de archivos de captura con -r, la aplicación de filtros con -Y y la exportación de resultados utilizando -w. También verificará los paquetes exportados mediante un análisis detallado con la bandera -V.
Abrir archivo con -r capture.pcap
En este paso, aprenderá cómo abrir un archivo de captura de paquetes utilizando la herramienta de línea de comandos tshark de Wireshark. Este es el primer paso para analizar el tráfico de red a partir de un archivo de captura previamente grabado. Tshark es la versión de terminal de Wireshark, que le permite analizar paquetes de red sin la interfaz gráfica.
La opción -r en tshark le permite leer paquetes de un archivo de captura guardado previamente. El archivo que utilizaremos (capture.pcap) contiene datos de tráfico de red de muestra para su análisis. Los archivos PCAP almacenan datos de paquetes de red sin procesar que se pueden examinar más tarde.
Siga estos pasos cuidadosamente:
- Primero, asegúrese de estar en el directorio correcto donde se encuentra el archivo de captura. Esto es importante porque tshark necesita encontrar el archivo:
cd ~/project
- Verifique que el archivo de captura exista y compruebe su tamaño. Esto confirma que está trabajando con el archivo correcto:
ls -l capture.pcap
Debería ver una salida similar a esta, que muestra los permisos del archivo, el tamaño y la fecha de modificación:
-rw-r--r-- 1 labex labex 123456 Jul 1 10:00 capture.pcap
- Ahora abra el archivo de captura utilizando tshark. Este comando básico lee el archivo y muestra un resumen de cada paquete:
tshark -r capture.pcap
Esto mostrará el resumen de los paquetes en su terminal. Cada línea representa un paquete de red con información clave:
1 0.000000 192.168.1.1 → 192.168.1.2 TCP 74 443 → 54321 [SYN] Seq=0 Win=64240 Len=0
2 0.000123 192.168.1.2 → 192.168.1.1 TCP 74 54321 → 443 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0
- Para ver información más detallada sobre los paquetes, incluyendo todas las capas de protocolo (como Ethernet, IP, encabezados TCP), puede agregar la bandera
-Vpara una salida detallada:
tshark -r capture.pcap -V
Esto mostrará los detalles completos de los paquetes, lo cual es útil cuando necesita examinar campos específicos en los encabezados de los paquetes.
Filtrar UDP con -Y "udp"
En este paso, aprenderá cómo filtrar paquetes UDP de una captura de red utilizando la sintaxis de filtro de visualización de Wireshark con la opción -Y en tshark. UDP (User Datagram Protocol, Protocolo de Datagramas de Usuario) es un protocolo de red fundamental que proporciona una forma sencilla de enviar datagramas sin establecer conexiones. Este filtrado es especialmente útil cuando necesita centrarse solo en el tráfico UDP de un archivo de captura más grande que puede contener múltiples protocolos.
La opción -Y en tshark funciona de manera similar al campo de filtro de visualización de Wireshark. Le permite especificar criterios de filtrado que mostrarán solo los paquetes que cumplan con ciertas condiciones. Aquí, filtraremos específicamente los paquetes que utilizan el protocolo UDP.
Siga estos pasos cuidadosamente:
- Primero, asegúrese de que todavía está en el directorio del proyecto donde se encuentra su archivo de captura. Esto es importante porque tshark necesita la ruta correcta para acceder a su archivo de captura:
cd ~/project
- Ahora aplique el filtro UDP para analizar solo los paquetes UDP en el archivo de captura. La estructura básica del comando es
tshark -r [archivo] -Y [filtro]:
tshark -r capture.pcap -Y "udp"
Este comando procesará el archivo capture.pcap y mostrará solo los paquetes UDP. La salida mostrará los paquetes filtrados en un formato como este:
5 0.002345 192.168.1.1 → 192.168.1.2 UDP 82 5353 → 5353 Len=40
8 0.004567 192.168.1.2 → 192.168.1.1 UDP 82 5353 → 5353 Len=40
Cada línea representa un paquete UDP, mostrando su número en la captura, la marca de tiempo, las direcciones IP de origen y destino, los puertos y la longitud del paquete.
- Para obtener información más detallada sobre cada paquete UDP, puede agregar la bandera
-V(detallada). Esto mostrará la desglose completo del protocolo para cada paquete:
tshark -r capture.pcap -Y "udp" -V
Esta salida detallada mostrará todas las capas del paquete, incluyendo los encabezados Ethernet, IP y UDP con sus respectivos campos y valores.
- Si solo necesita saber cuántos paquetes UDP existen en su captura (sin ver su contenido), puede canalizar la salida al comando de conteo de palabras:
tshark -r capture.pcap -Y "udp" | wc -l
Esto mostrará un solo número que representa el recuento total de paquetes UDP encontrados en su archivo de captura.
Exportar paquetes con -w udp.pcap
En este paso, aprenderá cómo exportar paquetes UDP filtrados a un nuevo archivo de captura utilizando la opción -w de Wireshark. Esto es especialmente útil cuando desea aislar un tráfico de red específico para un análisis detallado o para compartirlo con sus colegas.
La opción -w le indica a Tshark que escriba los paquetes en un archivo en formato pcap, que es el formato estándar para los archivos de captura de paquetes. Cuando se combina con el filtro -Y que usamos anteriormente, podemos guardar selectivamente solo los paquetes UDP de nuestro archivo de captura original.
Desglosemos el proceso paso a paso:
- Primero, asegúrese de estar en el directorio del proyecto donde se encuentra su archivo de captura:
cd ~/project
- Ahora, exportemos todos los paquetes UDP a un nuevo archivo llamado udp.pcap:
tshark -r capture.pcap -Y "udp" -w udp.pcap
Este comando realiza tres cosas importantes:
-r capture.pcapespecifica el archivo de entrada a leer-Y "udp"aplica nuestro filtro para seleccionar solo los paquetes UDP-w udp.pcaple indica a Tshark dónde guardar los paquetes filtrados
- Después de ejecutar el comando, verifiquemos que se haya creado nuestro nuevo archivo:
ls -l udp.pcap
Debería ver una salida similar a esta, que muestra que el archivo existe y su tamaño:
-rw-r--r-- 1 labex labex 12345 Jul 1 10:05 udp.pcap
- Para comprobar cuántos paquetes UDP se exportaron realmente a nuestro nuevo archivo:
tshark -r udp.pcap | wc -l
Este comando cuenta todos los paquetes en el nuevo archivo. El número debe coincidir con los paquetes UDP de su captura original.
- Finalmente, confirmemos que solo se exportaron paquetes UDP verificando si hay algún paquete que no sea UDP:
tshark -r udp.pcap -Y "not udp" | wc -l
Esto debería devolver 0, lo que significa que nuestro filtro funcionó correctamente y solo se guardaron paquetes UDP en udp.pcap.
Verificar con -r udp.pcap -V
En este último paso de verificación, examinaremos el contenido del archivo de paquetes UDP exportado (udp.pcap) utilizando el modo de salida detallada de Wireshark. La bandera -V significa "detallado" y muestra información exhaustiva del protocolo para cada paquete, lo que nos ayuda a confirmar que nuestras operaciones anteriores de filtrado y exportación funcionaron correctamente.
Cuando se trabaja con capturas de paquetes, la verificación es crucial porque asegura que hemos extraído exactamente lo que pretendíamos. Vamos a repasar varios métodos de verificación:
- Primero, navegue hasta el directorio del proyecto donde se almacena su archivo de captura de paquetes:
cd ~/project
- Vea los primeros paquetes UDP con información detallada del protocolo. El comando
head -20limita la salida a las primeras 20 líneas para facilitar la lectura:
tshark -r udp.pcap -V | head -20
La salida mostrará detalles de los paquetes como en este ejemplo, donde puede verificar la información del protocolo UDP:
Frame 1: 82 bytes on wire (656 bits), 82 bytes captured (656 bits)
Ethernet II, Src: 00:11:22:33:44:55, Dst: 66:77:88:99:aa:bb
Internet Protocol Version 4, Src: 192.168.1.1, Dst: 192.168.1.2
User Datagram Protocol, Src Port: 5353, Dst Port: 5353
- Para confirmar que todos los paquetes en el archivo son paquetes UDP, examinaremos los campos del protocolo. Este comando extrae y cuenta los tipos de protocolo únicos:
tshark -r udp.pcap -T fields -e frame.protocols | sort | uniq -c
En una captura correctamente filtrada, solo debería ver protocolos relacionados con UDP enumerados.
- Para una verificación exhaustiva, comprobemos si hay algún paquete no UDP que se haya incluido accidentalmente. Este comando filtra el tráfico no UDP y debería devolver resultados vacíos:
tshark -r udp.pcap -Y "not udp" -V
- Finalmente, cuente el número total de paquetes UDP en su archivo exportado para verificar que la cantidad coincide con sus expectativas:
tshark -r udp.pcap | wc -l
Esto le dará el recuento total de paquetes en el archivo de captura, que todos deberían ser paquetes UDP después de nuestro proceso de filtrado.
Resumen
En este laboratorio, has aprendido cómo utilizar la herramienta de línea de comandos tshark de Wireshark para analizar, filtrar y exportar paquetes de red. Los ejercicios cubrieron la apertura de archivos de captura con -r, la visualización de información detallada de los paquetes utilizando -V y la aplicación de filtros de visualización con -Y para aislar un tráfico específico como el UDP.
Practicaste la exportación de paquetes filtrados a un nuevo archivo utilizando -w y verificaste los resultados volviendo a leer la salida. Estas técnicas proporcionan habilidades esenciales para un análisis eficiente del tráfico de red y la extracción selectiva de datos en entornos de línea de comandos.


