Controlar el tráfico de red en Linux con vnStat

Seguimos hablando de herramientas que nos permiten controlar diversos aspectos de nuestro sistema operativo favorito, en este caso os hablo de vnStat.

Con vnStat podemos controlar el tráfico de red desde la consola de comandos, tanto en sistemas GNU/Linux como BSD. Esta herramienta se encarga de recoger las estadísticas de la interfaz de red que proporciona el kernel. Esto significa que en reanidad vnStat no detecta ningún tráfico y tambíen garantiza un uso ligero de los recursos del sistema, que siempre es de agraceder.

Es un programa que sigue la filosofía de desarrollo del open source y utiliza una licencia GPL. No hace falta ser superusuario (root) para trabajar con el.

¿Cómo funciona vnStat?

vnStat crea una base de datos para cada interfaz encontrada. Si la herramienta no hace esto automáticamente, la base de datos se pueden crear manualmente. De hecho podemos utilizar en cualquier momento el parámetro --delete si fuese necesario, para eliminar una base de datos. En cambio el parámetro -i se utiliza para rastrear la carga en una interfaz en concreto, con -l podemos ver la información en vivo. Se puede interrumpir la salida en cualquier momento con Ctrl+C

Uso básico de vnStat

Las bases de datos que he mencionado antes se utiliza para proporcionar el historial deseado sobre la carga de red. Parámetros como -h, -d, -w y -m nos ayudan a mostrar el historial de tráfico de datos durante una hora, un día, una semana o un mes. En cambio,con el parámetro -t, nos devuelve los 10 días con la mayor parte del tráfico.

Además podemos indicar que queremos que nos muestre información de varias interfaces de forma simultanea, por ejemplo:

vnstat -i eth0+eth4+eth5

Incluso le podemos indicar el formato de salida:

vnstat -i eth0 --xml

O si preferimos en formato JSON:

vnstat --json -i eth0

Otro parámetro muy útiles --oneline que nos ofrece un rendimiento mínimo, que se puede analizar fácilmente para utilizar por ejemplo en nuestros propios guiones o scripts

Y por último, que no menos importante, vnStat nos ofrece una vista más colorida llamada vnStati, con unas vistas más amigables. Aunque seguramente con la versión sin colores tendrás más que de sobra. Si estáis interesados que hable de vnStati  me lo podéis dejar en los comentarios.

Instalar vnStat en GNU/Linux

La instalación es bien sencilla, ya que esta herramienta se encuentra en los repositorios principales dela mayoría de distribuciones. Por ejemplo, en una RaspBerryPi, con Raspbian, la instalación es así de sencilla:

sudo apt install vnstat

En Fedora su instalación sería así:

sudo dnf install vnstat

Una vez instalada la aplicación debemos editar su fichero de configuración en /etc/vnstat.conf y indicar la interfaz que queremos monitorear:

sudo vi /etc/vnstat.conf
# Indicamos la interfaz
Inteface "eth0"

Una vez hecho esto, guardamos y salimos.

Para encender el servicio, pararlo o conocer su estado:

# Para encenderlo
sudo systemctl start vnstat.service
# Para pararlo
sudo systemctl stop vnstat.service
# Para reiniciarlo
sudo systemctl restart vnstat.service
# Para conocer su estado
sudo systemctl status vnstat.service

Fuentes consultadas y web oficial del proyecto

Humdi.net/vnstat