Les développeurs et les administrateurs système peuvent avoir besoin de surveiller divers paramètres réseau, tels que :B. la consommation de bande passante et le trafic de données entrant et sortant. Il existe de nombreux outils disponibles pour cela, dont l'un est vnStat. Il s'agit d'un simple utilitaire CLI qui affiche les statistiques du réseau sur diverses interfaces et périodes de temps pour un ordinateur donné. Dans cet article, vous apprendrez à installer et à utiliser vnStat et (éventuellement) à afficher ces données graphiquement avec vnstat-dashboard.
installation
Pour les systèmes Ubuntu et Debian, vnStat est disponible dans le référentiel standard. Utilisez les commandes suivantes pour l'installer :
sudo apt update sudo apt install vnstat
Les référentiels CentOS et Fedora par défaut n'ont pas de vnStat, mais vous pouvez les obtenir à partir des dépôts EPEL. Par conséquent, vous devez activer les référentiels EPEL, puis installer vnStat. Pour cela, utilisez les commandes suivantes :
sudo yum install epel-release sudo yum install vnstat
Pour les systèmes Fedora, saisissez :
sudo dnf update sudo dnf install vnstat
Configurer vnStat
Après avoir installé vnStat, vous devez définir l'interface réseau que vous souhaitez surveiller. Cependant, vous devez d'abord connaître la liste des interfaces réseau disponibles sur notre système avant de pouvoir demander à vnStat de les surveiller. Pour cela, utilisez l'une des deux commandes :
ip link show
ou
netstat -i
Cela fera apparaître une liste de toutes les interfaces réseau disponibles dans le système.
Pour cet article, nous ne surveillerons que l'interface qui représente la connexion Ethernet à notre système, c'est-à-dire eth0
dans notre exemple. Vous pouvez trouver l'interface nommée différemment sur votre système, par ex. enp0s3
ou venet0
. Si vous utilisez le WiFi, il existe une interface comme wlan0
ou wifi0
. Toutes les interfaces avec des noms comme lo
ou lo0
représentent l'interface Loopback utilisée pour le trafic local, par ex. B. pour la communication entre démons.
Choisissez donc le eth0
Interface de surveillance utiliser la commande :
sudo vnstat -u -i eth0
Il devrait vous dire qu'une base de données a été créée. Ensuite, vous devez définir les autorisations correctes pour la base de données avec :
sudo chown -R vnstat: /var/lib/vnstat
Enfin activez et démarrez le démon avec :
sudo systemctl enable vnstat sudo systemctl restart vnstat
Vous pouvez vérifier si le démon a démarré avec top ou with. exécute systemctl status
:
sudo systemctl status vnstat
Afficher l'utilisation de la bande passante
Par défaut, vnStat écrit de nouvelles statistiques dans la base de données toutes les 30 secondes. Après avoir attendu 30 secondes, démarrez vnstat
pour afficher les statistiques mensuelles et quotidiennes sous forme de tableau. Si votre système ne reçoit pas trop de trafic, vous pouvez essayer de télécharger ces fichiers pour générer du trafic avant de consulter les statistiques.
Les colonnes « rx » et « tx » affichent respectivement le trafic reçu et envoyé, et la colonne « total » affiche la somme de ces deux valeurs. L'option "Moy. rate "indique le taux moyen de consommation de bande passante par seconde au cours de la journée ou du mois.
Parfois, vous voudrez peut-être voir l'utilisation de la bande passante mise à jour immédiatement sans attendre. Dans ce cas, vous pouvez forcer vnStat à mettre à jour la base de données avec :
sudo vnstat -u
Ensuite, exécutez vnstat
comme d'habitude; Vous verrez les statistiques mises à jour après cela.
Si vous souhaitez afficher des statistiques pour une période différente, vous pouvez utiliser différents commutateurs :
-
-d
:Statistiques quotidiennes des 30 derniers jours. -
-m
:Statistiques mensuelles des 12 derniers mois. -
-w
:Statistiques des 7 derniers jours ainsi que de la semaine en cours et de la semaine précédente. -
-h
:Statistiques horaires des dernières 24 heures. -
-t
:10 jours avec le trafic le plus élevé.
Vous pouvez utiliser ces commutateurs comme suit :
vnstat -h
Les statistiques horaires incluent également un graphique, ainsi que les valeurs "rx" / "tx" comme indiqué ci-dessous. Les autres commutateurs affichent une sortie tabulaire, comme dans l'exemple précédent.
De plus, vnStat propose également un mode de surveillance du trafic en direct. Pour utiliser ce mode, utilisez le -l
modifier et préciser le nom de l'interface -i
donc :
vnstat -l -i eth0
Lorsque vous avez terminé, appuyez sur Ctrl + C pour quitter.
Exporter et importer des données
Jusqu'à présent, nous avons vu comment obtenir les données d'utilisation de la bande passante de vnStat. Cependant, les tables ne sont pas très utiles si vous voulez faire vos propres calculs. Vous pouvez exporter les données vers JSON et XML en utilisant le --json
et --xml
Switch ou, par exemple, si vous avez un fichier nommé. voulez créer output.json
Avec toutes les données d'utilisation de la bande passante, procédez comme suit :
vnstat --json > output.json
Si vous souhaitez importer la base de données vers un autre système, vous devez d'abord démarrer la base de données avec le --exportdb
Compteur. La commande suivante écrit la base de données dans un fichier texte brut nommé vnstat_db
.
vnstat --exportdb > vnstat_db
Vous pouvez maintenant transférer ce fichier vers l'autre système et enregistrer le --importdb
passer à l'importation. Par exemple, si vous avez le vnstat_db
Fichier pour le eth0
Interface, exécutez :
sudo vnstat --importdb vnstat_db -i eth0 --force
Affichage des données vnStat sur le Web
Si vous souhaitez surveiller les statistiques du réseau sur le Web, plusieurs outils fonctionnent avec vnStat. Dans cet article, nous examinerons vnstat-dashboard, une application Web qui vous permet de visualiser les données vnStat. Pour l'utiliser, vous devez installer un serveur Web, PHP et quelques autres outils. Nous utiliserons simplement Apache comme exemple ; cependant, vous êtes libre d'utiliser un autre serveur Web.
Sur un système Ubuntu/Debian, exécutez ces commandes pour installer les outils nécessaires :
sudo apt install apache2 php wget unzip
Si vous utilisez un système CentOS/RHEL, exécutez plutôt ces commandes :
sudo yum install httpd php wget unzip
(Remplacez-le sur un système Fedora yum
avec dnf
.)
Téléchargez ensuite le code source depuis Github et extrayez-le dans le bon répertoire :
wget https://github.com/alexandermarston/vnstat-dashboard/archive/master.zip unzip master.zip sudo mv vnstat-dashboard-master/ /var/www/html/vnstat/
Ensuite, nous devons modifier certains paramètres de configuration. Pour cela, ouvrez le fichier de configuration dans un éditeur de texte tel que vi ou nano :
sudo nano /var/www/html/vnstat/config.php
Dans ce fichier, recherchez les lignes suivantes et remplacez les valeurs par défaut par celles affichées en rouge :
$vnstat_bin_dir = '/usr/bin/vnstat'; $use_predefined_interfaces = true; if ($use_predefined_interfaces == true) { $interface_list = array("eth0"); // ... }
Après avoir effectué ces modifications, ouvrez https://<your_server_IP>/vnstat
dans un navigateur. Vous devriez voir une page comme celle-ci s'ouvrir :
Vous pouvez facilement basculer entre les onglets horaires, quotidiens et mensuels et également basculer entre différentes interfaces réseau.
diplôme
vnStat est un outil très utile pour surveiller et analyser les informations réseau d'un système. Il existe différentes options disponibles pour afficher et enregistrer les données des interfaces réseau, qui peuvent être utilisées pour diverses applications.