iftop: ¿cómo generar un archivo de texto con su salida?

18

iftop es una gran herramienta para ver el uso de ancho de banda casi en vivo distinguido por source-ip source-port destination-ip destination port.

Lo estoy usando para ver qué IP del cliente está usando más ancho de banda. Ahora me gustaría almacenar la salida en algún lugar.

iftop usa ncurses así

iftop > log.txt

no funciona como se esperaba, el archivo de resultados no es legible.

¿Existe alguna herramienta como esta que pueda usarse para canalizar la salida a un archivo de texto?

mickula
fuente
topLa herramienta tiene un modo por lotes -bque le permite guardar la instantánea redirigiendo la salida a un archivo, pero iftopno tiene esa opción.
Khaled
Gracias Khaled por su respuesta, ya lo sé, es por eso que estoy buscando una alternativa de lote iftop.
mickula

Respuestas:

17

Desde iftop-1.0pre3 (01-01-2014) , se agregó un modo de salida de texto. Esto será muy útil para cualquiera que intente analizar la salida de iftop.

La opción de línea de comando para activar el modo de texto (lote) es:

-t          use text interface without ncurses

Cuando se utiliza el modo de texto, las siguientes opciones están disponibles:

-s num      print one single text output afer num seconds, then quit
-L num      number of lines to print

Use la -hopción de ayuda sobre el uso de iftop.

El uso de ejemplo sería:

iftop -t > log.txt
iftop -t -s 180 > log.txt

Si desea que se ejecute en segundo plano durante 5 horas:

iftop -t -s 18000 > log.txt &

Verifique el trabajo de fondo con el jobcomando.

Alexandre
fuente
8

iptraf puede registrar este nivel de detalle. El resultado se parece a esto:

Wed Apr 25 23:08:42 2012; UDP; eth0; 65 bytes; from 192.168.1.20:45061 to 192.168.1.254:53
Wed Apr 25 23:08:42 2012; UDP; eth0; 133 bytes; from 192.168.1.254:53 to 192.168.1.20:45061
Wed Apr 25 23:08:43 2012; UDP; eth0; 96 bytes; from 192.168.1.21:137 to 192.168.1.20:137
Wed Apr 25 23:08:44 2012; UDP; eth0; 472 bytes; from 192.168.1.21:1900 to 239.255.255.250:1900
Wed Apr 25 23:08:47 2012; ICMP; eth0; 159 bytes; from 192.168.1.20 to 173.176.222.82; dest unrch (port)
dwurf
fuente
¿Con qué opciones de línea de comando utilizas para obtener esa salida iptraf?
Banjer
1
sudo iptraf -i eth0 -L /tmp/traffic_log
dwurf
Un par de notas: 1) Debería correr iptraf-ngen Linux mint. 2) Debería instalar cartambién:sudo apt install ucommon-utils
Ehsan88
1

Parece que iftop no puede salir a un archivo de texto (hay una solicitud de función pero aún no está implementada), mientras tanto, eche un vistazo a la utilidad bwm-ng que es similar a iftop pero permite la salida en un archivo CSV.

Aquí hay un ejemplo de uso:

bwm-ng -o csv -c 6 -T rate -I eth0 >> bandwidth.log
aleroot
fuente
Ya conozco este, el problema es que la salida se ve así: 1334421690;eth0;1909467.12;156131.73;2065598.88;78222;956643;2562.87;1956.09;4518.96;980;1284;0.00;0.00;0;0 1334421690;total;1909467.12;156131.73;2065598.88;78222;956643;2562.87;1956.09;4518.96;980;1284;0.00;0.00;0;0 1334421690;eth0;1934056.00;142336.00;2076392.00;71168;967028;2502.00;1874.00;4376.00;937;1251;0.00;0.00;0;0 1334421690;total;1934056.00;142336.00;2076392.00;71168;967028;2502.00;1874.00;4376.00;937;1251;0.00;0.00;0;0por lo que es para toda la interfaz no agrupada por direcciones IP conectadas
mickula
1
Puede analizar el CSV con un script perl, por ejemplo, y cambiar el formato de salida ...
aleroot
2
no se trata del formato del archivo, es que las estadísticas son resumen de la interfaz no agrupada por IP del cliente
mickula