¿Cómo puede monitorear el uso total de datos de Internet a través de reinicios?


55

Algunos proveedores de banda ancha imponen un límite de descarga mensual, cobrando un cargo adicional si pasa. También es bastante fácil superar algunos de los límites inferiores simplemente instalando / actualizando paquetes y navegando de manera 'normal' (que para mí incluye la transmisión de programas de TV y películas).

Esto significa que debe limitar la cantidad que usa Internet, sin embargo, es difícil saber cuándo.

El Monitor del sistema ayuda un poco con esto al proporcionar un total recibido / total enviado en la sección de redes de la pestaña Recursos. Sin embargo, esto se restablece cada reinicio. Sería bueno si hubiera una manera de recibir un total mensual para que pueda saber qué tan cerca está de exceder su límite y tal vez incluso recibir advertencias si parece que va a exceder los límites.

¿Alguien sabe de una manera de lograr esto?


Respuestas:


38

Puedes ver vnstat . Está basado en la línea de comandos y está disponible en el repositorio.

Puedes comenzar con sudo vnstat -u -i [interface]

Para ver las estadísticas sudo vnstat -i [interface]


27

vnStat - Monitor de red ligero basado en consola

vnStat es un monitor de tráfico de red basado en consola para Linux y BSD que mantiene un registro del tráfico de red para las interfaces seleccionadas. Utiliza las estadísticas de la interfaz de red proporcionadas por el núcleo como fuente de información. Esto significa que vnStat en realidad no detectará ningún tráfico y también asegura un uso ligero de los recursos del sistema.

En este tutorial revisaremos:

  • Caracteristicas
  • Instalación
  • Configuración
  • Iniciar el servicio Systemd
  • Uso (desde la línea de comando)
  • Ejemplo de Conky

Caracteristicas

  • Rápido y sencillo de instalar y poner en marcha
  • las estadísticas recopiladas persisten a través de reinicios del sistema
  • puede monitorear múltiples interfaces al mismo tiempo
  • varias opciones de salida
  • resumen, cada hora, diario, mensual, semanal, 10 días principales
  • salida de imagen png opcional (usando libgd)
  • los meses se pueden configurar para seguir el período de facturación
  • uso ligero y mínimo de recursos
  • mismo bajo uso de CPU independientemente del tráfico
  • se puede usar sin permisos de root
  • editor de configuración de color en línea

Instalación

nvStat está en los repositorios oficiales, por lo que no es necesario vincular a un nuevo ppa. Para instalar, cree una instancia de Terminal usando Ctrl+ Alt+ Ty escriba en el indicador:

sudo apt-get install vnstat

Después de la instalación, mantenga su Terminal abierta para las siguientes secciones. No hay necesidad de reiniciar.

Configuración

Elija una interfaz de red preferida y edite la variable de interfaz en la /etc/vnstat.confcorrespondiente. Para la lista de todas las interfaces disponibles para vnstat, use:

vnstat --iflist

Para comenzar a monitorear una interfaz en particular, primero debe inicializar una base de datos. Cada interfaz necesita su propia base de datos. El comando para inicializar uno para la interfaz eth0 es:

sudo vnstat -u -i eth0 

Iniciar el servicio Systemd

Después de introducir las interfaces y verificar el archivo de configuración. Puede iniciar el proceso de monitoreo a través de systemd:

sudo systemctl start vnstat.service

Para hacer este servicio de uso permanente:

sudo systemctl enable vnstat.service

A partir de ahora vnstat, recopilaremos el uso de la red en segundo plano utilizando un porcentaje tan pequeño de CPU que no aparece en la lista de los 9 principales procesos de conky (monitor del sistema) (en mi máquina).

Uso (desde la línea de comando)

Consulta el tráfico de red:

vnstat -q

Ver el uso del tráfico de red en vivo:

vnstat -l

Para encontrar más opciones, use:

vnstat --help

Totales mensuales

Para ver los totales mensuales, use:

rick@dell:~$ vnstat -m

 eth0  /  monthly

       month        rx      |     tx      |    total    |   avg. rate
    ------------------------+-------------+-------------+---------------
      Nov '16     76.31 MiB |    2.03 MiB |   78.35 MiB |   10.45 kbit/s
    ------------------------+-------------+-------------+---------------
    estimated      3.13 GiB |      84 MiB |    3.21 GiB |

Ejemplo de Conky

Conky es un popular Monitor de sistema liviano utilizado en muchas distribuciones de Linux. Puede ver los totales de ancho de banda de vnStat en su pantalla conky de esta manera:

ingrese la descripción de la imagen aquí

Tenga en cuenta que cuando se tomó la foto fue el Yesterdaydomingo, lo que explica por qué el total semanal es menor.

El código conky para lograr esto es:

${color orange}${voffset 2}${hr 1}
${color1}Network using vnStat "-i", "-w" and "-m"
${color}${goto 5}Today ${goto 100}Yesterday ${goto 225}Week ${goto 325}Month ${color green}
${execi 300 vnstat -i eth0 | grep "today" | awk '{print $8" "substr ($9, 1, 1)}'} ${goto 110}${execi 300 vnstat -i eth0 | grep "yesterday" | awk '{print $8" "substr ($9, 1, 1)}'} ${goto 220}${execi 300 vnstat -i eth0 -w | grep "current week" | awk '{print $9" "substr ($10, 1, 1)}'} ${goto 315}${execi 300 vnstat -i eth0 -m | grep "`date +"%b '%y"`" | awk '{print $9" "substr ($10, 1, 1)}'}
${color orange}${voffset 2}${hr 1}

Para ahorrar espacio en mi estrecha ventana utilicé "G" en lugar de "GiB", "M" en lugar de "MiB", etc Si usted tiene más cambio realestate pantalla substr ($10, 1, 1)para $10y lo mismo para $9.

Es posible que tenga que cambiar eth0a wlan0o eth1, etc., según el nombre de su red informado por ifconfig.


¿Es posible "filtrar" el tráfico de la red local? Tengo mucho tráfico local y no quiero contarlo para mi uso de Internet.
JPelletier

@JPelletier Se cita al autor de vnStat diciendo que no es posible. Se le cita en este hilo donde unas 20 personas recaudaron $ 280 para pagarle a alguien para que haga exactamente lo que está pidiendo: forum.netgate.com/topic/29677/… Doug Smythies es un experto en monitorear el tráfico por dirección IP y yo Pídele que mire tu comentario.
WinEunuuchs2Unix

¡Gracias por la respuesta! Actualmente estoy usando iftoppara diagnosticar el uso de Internet en vivo, pero tener la información histórica sería bueno
JPelletier

@JPelletier: mi enrutador es un servidor Ubuntu que ejecuta un script de iptables para la función de enrutamiento / firewall. El tráfico WAN solo se puede monitorear a través de la interfaz WAN. Para una computadora Ubuntu dentro de una LAN, uno podría capturar todo con tcpdump y luego filtrar la LAN y difundir paquetes como una forma de extraer paquetes WAN desde / hacia esa computadora. Ver también aquí
Doug Smythies

@DougSmythies ¡Gracias por comentar! Me pregunto si es posible crear dos interfaces: eth0 y eth1 unidas a la misma NIC. Entonces, ¿todo el tráfico local se enruta a través de eth1 y todo lo demás se enruta a través de eth0 que vnstatrecopilaría estadísticas? Lo siento si parece una pregunta tonta ...
WinEunuuchs2Unix

6

Aunque no es una respuesta "ubuntu", utilizo el firmware de Tomato en mi enrutador WRT54G para esto. Me da un uso mensual ascendente / descendente durante los últimos años, y lo bueno (en el contexto de su pregunta) es que es para toda la red, no solo para el sistema en el que se está ejecutando (aunque este punto es discutible) si el sistema en cuestión es su enrutador o está conectado directamente).


3
Deliciosos tomates. Excelente en sándwiches, incluso mejor en enrutadores.
Ryan Thompson, el

6

Solo para expandir rickys anwer:

Con ifconfig | cut -c 1-8 | sort | uniq -uusted puede enumerar las interfaces:

enp0s31f
lo      
wlp3s0

Para una interfaz, puede visualizar el tráfico de esta manera:

vnstati -vs -i wlp3s0 -o ~/summary.png

da un buen resumen:

ingrese la descripción de la imagen aquí

  • rx es el tráfico recibido
  • tx es el tráfico transferido

Solo asegúrese de tener instalado vnstati además de vnstat. sudo apt install vnstat vnstati
Adicto orgánico

3

Recomiendo la utilidad ntop que está disponible en los repositorios, se ejecuta como un servicio y mantiene registros de uso del tráfico. Los informes están disponibles desde un servidor http interno (puerto 3000). Puede verificarlos fácilmente usando un navegador,http://localhost:300/

Verifique lo que puede obtener de ntop en el sitio web de ntop .


ntop no realiza un seguimiento del uso entre reinicios, ¿verdad?
Erigami

De acuerdo con la documentación que puede usar el complemento rrd, no me probé.
João Pinto

¿Cómo se utiliza el complemento rrd entonces?
Anwar

2

Además de cualquier solución de software, sugeriría consultar a su proveedor. Muchos de ellos tienen herramientas de monitoreo que le envían una advertencia cuando alcanza un cierto límite o bloquea su acceso temporalmente. Esto tiene la ventaja de que obtienes un número "oficial".


Unos años más tarde para la fiesta, lo que no reconoce es que el ISP no se preocupa si se va, de hecho así es como hacen su dinero, por lo que sus herramientas probablemente no tendrán en cuenta muchos factores como. Mi ISP da 40GB de subsidio por una tarifa de £ 20, pero cobra £ 20 por Gigabyte, usted pasa por encima de lo que he superado mi asignación una vez antes y recuerdo que arruinó la Navidad, pero hizo que el ISP estuviera feliz de cobrarme una gran cantidad de dinero en efectivo. Dije que mi internet estaba apagado, me dijeron que estaba encendido. Más tarde, encontré a alguien vinculando directamente al MUX con cuentas aleatorias, explicaba mucho
Mark Giblin,

0

Encontré " descargar monitor " como una herramienta muy buena y fácil de usar para mostrar estadísticas de datos. Tiene una interfaz GUI que lo hace muy fácil de usar. Está disponible en el Centro de software de Ubuntu.

Descargar monitor

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.