GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo monitorear el tráfico de red en Linux usando vnStat

Los desarrolladores y administradores de sistemas pueden necesitar monitorear varios parámetros de la red, como:B. el consumo de ancho de banda y el tráfico de datos entrante y saliente. Hay muchas herramientas disponibles para esto, una de las cuales es vnStat. Es una utilidad CLI simple que muestra estadísticas de red a través de varias interfaces y períodos de tiempo para una computadora determinada. En este artículo, aprenderá cómo instalar y trabajar con vnStat y (opcionalmente) mostrar estos datos gráficamente con vnstat-dashboard.

instalación

Para los sistemas Ubuntu y Debian, vnStat está disponible en el repositorio estándar. Use los siguientes comandos para instalarlo:

sudo apt update
sudo apt install vnstat

Los repositorios predeterminados de CentOS y Fedora no tienen un vnStat, pero puede obtenerlos en los depósitos de EPEL. Por lo tanto, debe activar los repositorios de EPEL y luego instalar vnStat. Para hacer esto, use los siguientes comandos:

sudo yum install epel-release
sudo yum install vnstat

Para sistemas Fedora, ingrese:

sudo dnf update
sudo dnf install vnstat

Configurar vnStat

Después de instalar vnStat, debe configurar la interfaz de red que desea monitorear. Sin embargo, primero debe conocer la lista de interfaces de red disponibles en nuestro sistema antes de poder pedirle a vnStat que las supervise. Para hacer esto, use uno de los dos comandos:

ip link show

o

netstat -i

Esto abrirá una lista de todas las interfaces de red disponibles en el sistema.

Para este artículo solo monitorearemos la interfaz que representa la conexión ethernet a nuestro sistema que es eth0 en nuestro ejemplo. Puede encontrar la interfaz con un nombre diferente en su sistema, p. enp0s3 o venet0 . Si usa WiFi, hay una interfaz como wlan0 o wifi0 . Cualquier interfaz con nombres como lo o lo0 representan la interfaz Loopback utilizada para el tráfico local, p. B. para la comunicación entre demonios.

Así que elige el eth0 Interfaz para monitorear use el comando:

sudo vnstat -u -i eth0

Debería indicarle que se ha creado una base de datos. Luego debe establecer los permisos correctos para la base de datos con:

sudo chown -R vnstat: /var/lib/vnstat

Finalmente active e inicie el demonio con:

sudo systemctl enable vnstat
sudo systemctl restart vnstat

Puede verificar si el daemon comenzó con top o con. ejecuta systemctl status :

sudo systemctl status vnstat



Ver el uso de ancho de banda

De forma predeterminada, vnStat escribe nuevas estadísticas en la base de datos cada 30 segundos. Después de esperar 30 segundos, inicie vnstat para mostrar las estadísticas mensuales y diarias en forma tabular. Si su sistema no recibe demasiado tráfico, puede intentar descargar estos archivos para generar algo de tráfico antes de ver las estadísticas.

Las columnas “rx” y “tx” muestran el tráfico recibido y enviado, respectivamente, y la columna “total” muestra la suma de estos dos valores. El “promedio. rate ”muestra la tasa promedio de consumo de ancho de banda por segundo en el transcurso del día o mes.

A veces, es posible que desee ver el uso de ancho de banda actualizado de inmediato sin esperar. En este caso, puede obligar a vnStat a actualizar la base de datos con:

sudo vnstat -u

Luego ejecuta vnstat como siempre; Verá las estadísticas actualizadas después de hacer esto.

Si desea mostrar estadísticas para un período de tiempo diferente, puede usar diferentes interruptores:

  • -d :Estadísticas diarias de los últimos 30 días.
  • -m :estadísticas mensuales de los últimos 12 meses.
  • -w :Estadísticas de los últimos 7 días así como de la semana actual y la anterior.
  • -h :estadísticas por hora de las últimas 24 horas.
  • -t :10 días principales con mayor tráfico.

Puede usar estos interruptores de la siguiente manera:

vnstat -h

Las estadísticas por horas también incluyen un gráfico, junto con los valores "rx" / "tx" como se muestra a continuación. Los otros interruptores muestran una salida tabular, como en el ejemplo anterior.

Además, vnStat también ofrece un modo de monitoreo de tráfico en vivo. Para usar este modo, use el -l cambiar y especificar el nombre de la interfaz -i entonces:

vnstat -l -i eth0

Cuando termines, presiona Ctrl + C para salir.

Exportación e importación de datos

Hasta ahora hemos visto cómo obtener datos de uso de ancho de banda de vnStat. Sin embargo, las tablas no son muy útiles si quieres hacer tus propios cálculos. Puede exportar los datos a JSON y XML utilizando el --json y --xml Switch o, por ejemplo, si tiene un archivo llamado. quiero crear output.json Con todos los datos de uso de ancho de banda, haga lo siguiente:

vnstat --json > output.json

Si desea importar la base de datos a otro sistema, primero debe iniciar la base de datos con el --exportdb Encimera. El siguiente comando escribe la base de datos en un archivo de texto sin formato llamado vnstat_db .

vnstat --exportdb > vnstat_db

Ahora puede transferir este archivo al otro sistema y guardar el --importdb cambiar a importar. Por ejemplo, si tiene el vnstat_db Archivo para el eth0 Interfaz, ejecutar:

sudo vnstat --importdb vnstat_db -i eth0 --force

Ver datos de vnStat en la web

Si desea monitorear las estadísticas de la red a través de la web, existen varias herramientas que funcionan junto con vnStat. En este artículo, veremos vnstat-dashboard, una aplicación web que le permite visualizar datos de vnStat. Para usarlo, debe instalar un servidor web, PHP y algunas otras herramientas. Solo usaremos Apache como ejemplo; sin embargo, puede usar un servidor web diferente.



En un sistema Ubuntu/Debian, ejecute estos comandos para instalar las herramientas necesarias:

sudo apt install apache2 php wget unzip

Si está utilizando un sistema CentOS/RHEL, ejecute estos comandos en su lugar:

sudo yum install httpd php wget unzip

(Reemplácelo en un sistema Fedora yum con dnf .)

Luego descargue el código fuente de Github y extráigalo al directorio correcto:

wget https://github.com/alexandermarston/vnstat-dashboard/archive/master.zip
unzip master.zip
sudo mv vnstat-dashboard-master/ /var/www/html/vnstat/

A continuación, debemos cambiar algunos parámetros de configuración. Para hacer esto, abra el archivo de configuración en un editor de texto como vi o nano:

sudo nano /var/www/html/vnstat/config.php

En este archivo, busque las siguientes líneas y reemplace los valores predeterminados con los que se muestran en rojo:

$vnstat_bin_dir = '/usr/bin/vnstat';
$use_predefined_interfaces = true;
if ($use_predefined_interfaces == true) {
  $interface_list = array("eth0");
  // ...
}

Después de realizar estos cambios, abre https://<your_server_IP>/vnstat en un navegador. Debería ver una página como esta abierta:

Puede cambiar fácilmente entre las pestañas por hora, día y mes y también cambiar entre diferentes interfaces de red.

diploma

vnStat es una herramienta muy útil para monitorear y analizar la información de red de un sistema. Hay varias opciones disponibles para mostrar y registrar los datos de las interfaces de red, que se pueden usar para varias aplicaciones.


Cent OS
  1. Supervise el tráfico de red con vnStat en Ubuntu 20.04

  2. Cómo monitorear la actividad de Ethernet en Linux usando Arpwatch

  3. Linux:¿cómo reenviar tráfico entre espacios de nombres de red de Linux?

  4. Linux:¿Cómo medir el tráfico de red diario/mensual?

  5. Cómo encontrar lo que está usando el tráfico de red

Cómo monitorear el tiempo de actividad del sistema Linux usando Uptimed

Monitoree el tráfico de red usando el comando netstat en Linux

Cómo monitorear el rendimiento de Linux usando la herramienta systat

Cómo instalar nload para monitorear el tráfico de red en tiempo real

Cómo bloquear un puerto usando un firewall en Linux

Cómo instalar el monitoreo de ancho de banda de red Iftop en Linux