Aunque por aquí ya hemos hablado de programas –iftop, netstat, nethogs, IPTraf, wireshark…- e incluso distros especializadas en analizar el tráfico de red, en esta ocasión quiero llamaros la atención sobre vnStat, un programa sencillo para controlar el tráfico en sistemas Linux y *BSD, que si bien no es un sniffer si nos va a servir para vigilar la cantidad de datos que intercambia nuestra sistema.
Entre las caracteristicas de vnStat es que se ejecuta en la terminal de una manera muy sencilla sin necesidad de ser root, sus estadísticas son persistentes a cualquier tipo de reinicio, puede monitorizar múltiples interfaces al mismo tiempo, permite exportar los resultados en forma de gráfica y es muy ligero en cuanto a su consumo de recursos.
El programa está disponible para Arch y sus derivadas:
sudo pacman -S vnstat
así como en los repositorios de la mayoría de distros; para ponerlo en funcionamiento, es necesario habilitar e iniciar el servicio.
En mi caso con Antergos uso systemd como sistema de inicio, así que:
systemctl enable vnstat.service
systemctl start vnstat.service
En ese momento empezará a trabajar en segundo plano, si queremos ver las estadísticas generales ejecutamos:
vnstat
Es posible que os de error, ya que por defecto la interfaz a examinar es eth0, eso lo podemos modificar al principio del archivo de configuración /etc/vnstat.conf, en el apartado de «default interface»,
sudo nano /etc/vnstat.conf
sustituyéndola por la nuestra (en mi caso la red wifi wlp6s0)
# vnStat 1.15 config file ## # default interface Interface "wlp6s0" # location of the database directory DatabaseDir "/var/lib/vnstat"
además podemos crear la base de datos para una interfaz de red determinada.
sudo vnstat -u -i wlp6s0
Tenemos la opción de elegir la red a examinar
vnstat -i wlp6s0
y monitorizar en tiempo real (pulsamos Ctrl+C si queremos detenerlo)
vnstat -l
Hacerlo por horas:
vnstat -h
días:
vnstat -d
o meses:
vnstat -m
o incluso calcular el tráfico por segundo:
[jose@replicante ~]$ vnstat -tr 1077 packets sampled in 5 seconds Traffic average for wlp6s0 rx 58,22 kbit/s 84 packets/s tx 1,10 Mbit/s 131 packets/s
En las salida de los diferentes comandos tx representa la transmisión de datos y rx su recepción, y dependiendo de los parámetros utilizados nos encontraremos otros valores como “estimado”, “media”, «máximo» o “total”.
A través del comando vnstati, también es capaz de proporcionarnos un informe gráfico que podemos exportar a un archivo:
vnstati -s -i wlp6s0 -o archivo.png
incluso podemos combinar diferentes tipos de gráficas, esta mola bastante:
vnstati -vs -o imagen.png
Tenéis más opciones de uso, en la ayuda y el manual del programa, así como en la página web del proyecto.
Que buen post, sobre todo cuando genera la grafica vnstati -vs -o imagen.png no conocia la opcion
Gracias @Anger 🙂
Una duda mi estimado Tannhausser, hay alguna aplicación para poder ver que equipos están conectados a la red wifi o ethernet?
@juventino A mi para eso me gusta nmap, aunque también recuerdo haber utilizado el comando fping, programas como wifiguard (veo que ya no tiene versión para linux) y creo que Angry Ip hacía algo parecido.
Excelente, …sabes también se le puede agregar «vnstat-cgi» , pero al menos a mi con el resultado que me da «vnstat» ya me es suficiente.
Saludos
Gracias.
Gracias por el aporte xman!