
Foto cortesía de Michael_P
Este artículo está escrito por Balakrishnan M
Hace un tiempo revisamos 11 ejemplos sobre cómo usar la utilidad editcap para capturar volcados de red. En este artículo, revisemos la utilidad mergecap y los comandos tshark.
Mergecap es una herramienta de combinación de volcado de paquetes, que combinará varios volcados en un solo archivo de volcado. Según la marca de tiempo, los paquetes se escriben en el archivo de salida de manera ordenada. De forma predeterminada, el archivo de salida se escribe en formato libpcap. Sin embargo, al usar las opciones de mergecap, podemos generar resultados en varios formatos diferentes, incluidos aquellos compatibles con la herramienta wireshark.
mergecap está disponible en el paquete wireshark. Asegúrese de que el paquete wireshark/ethereal esté instalado para usar el mergecap.
Combina dos archivos de volcado en un solo archivo output_dump
Combina los archivos de captura input_dump1 e input_dump2 y los escribe en el archivo output_dump.
# mergecap -v input_dump1 input_dump2 -w output_dump
En este ejemplo, input_dump2 contiene los paquetes que se capturan después de input_dump1. El output_dump contendrá los paquetes intput_dump2 al principio, seguidos de los paquetes intput_dump1.
# mergecap input_dump1 input_dump2 -w output_dump -a
Imprimir archivo de volcado de salida en salida estándar
Combine dos archivos de volcado de red e imprima la salida en la salida estándar en lugar de escribir en un archivo.
# mergecap -v input1_dump input2_dump -w -
Imprimir archivo de salida en un formato de encapsulación específico
Utilice la opción -T para obtener el archivo de salida en el formato de encapsulación deseado, como se muestra a continuación.
# mergecap -v -T ether -w merge_cap capture1 capture2 capture3
3. Combinar paquetes de cierta longitud
En este ejemplo, output_dump contiene los paquetes de una longitud máxima de 100 bytes.
# mergecap -v -s 100 dump1 dump2 dump3 -w output_dump
Tshark:herramienta de captura de paquetes
Tshark es una poderosa herramienta para capturar paquetes de red, que se puede utilizar para analizar el tráfico de la red. Viene con la distribución del analizador de red wireshark.
Captura captura de red continuamente
El siguiente ejemplo capturará los paquetes de red continuamente durante 60 segundos. Después de 60 segundos de captura, se detendría automáticamente. capture_out contiene los paquetes, que vuelan en la red durante los últimos 60 segundos.
# tshark -q -w capture_out -a duration:60
En el siguiente ejemplo, los paquetes se imprimirán en la pantalla y simultáneamente se escribirán en el archivo de salida.
# tshark -S -q -w capture_out -a duration:10
Capturar estadísticas de red usando tshark
Para ver cuántos paquetes fluyen en la red durante un intervalo específico, use el siguiente comando.
# tshark -q -w capture_duration1 -a duration:1 -z io,stat,1
Capturar paquetes de red para un host específico
Utilice el siguiente ejemplo para capturar el flujo de paquetes para un host en particular (paquetes transmitidos y recibidos). En este ejemplo, pudimos ver por cada segundo cuántos paquetes vuelan en la red para el host 192.168.1.185
# tshark -S -q -w capture_duration6 -a duration:6 -z io,stat,1,ip.addr==192.168.1.150 After capturing all the packets for 6 seconds duration, it will print the statistics as like the following, 145 packets dropped 19749 packets captured IO Statistics Interval: 1.000 secs Column #0: ip.addr==192.168.1.185 | Column #0 Time |frames| bytes 000.000-001.000 2733 545242 001.000-002.000 2991 583374 002.000-003.000 3310 650716 003.000-004.000 3236 641896 004.000-005.000 3518 690860 005.000-006.000 3310 654988 006.000-007.000 638 122812
Capturar paquetes de red en un puerto específico
Este ejemplo captura solo los paquetes ssh.
# tshark -f “tcp port 22” -w capture_out
Capturar paquetes de red por una duración específica
El siguiente ejemplo capturará paquetes por una duración específica (5 segundos), cambiará al siguiente archivo cuando el tamaño del archivo de captura alcance cierto tamaño (1000 KB).
# tshark -a filesize:1000 -a duration:5 -a files:5 -w ethcap1
Ejemplo de nombre de archivo de captura de salida con tamaño:
ethcap1_00001_20090216174203 - 1000K ethcap1_00002_20090216174205 - 1000K ethcap1_00003_20090216174207 - 835K
Otros comandos de captura de tshark
Utilice la opción -c para capturar los paquetes hasta cierto número de paquetes. El siguiente ejemplo crea el archivo ethcap1 solo con 10 paquetes.
# tshark -c 10 -w ethcap1
Utilice la opción -r para leer los paquetes de red desde un archivo comprimido.
# tshark -r capture_dump.gz
Use la opción -r, para mostrar solo tipos de paquetes específicos. El siguiente ejemplo crea el archivo capture_dump solo con los paquetes rtp en el analizador de red.
# tshark -R “rtp” -r capture_dump
Use el filtro a continuación para capturar los paquetes tcp que fluyen en el puerto 1720.
# tshark -f “tcp port 1720”
El siguiente ejemplo capturará paquetes que llegan al puerto 1720 o 1721.
# tshark -f “port 1720 or port 1721” -w capture_dump
De forma predeterminada, tshark utilizará el dispositivo eth0 para realizar la captura de paquetes. También puede especificar un adaptador de ethernet específico usando la opción -i como se muestra a continuación.
# tshark -i eth1 -w -a duration:10 capture_dump
Este artículo fue escrito por Balakrishnan Mariyappan. Trabaja en bk Systems (p) Ltd y está interesado en contribuir al código abierto. The Geek Stuff agradece sus sugerencias y artículos de invitados.