[LINUX] Moniteur de trafic simple avec CentOS

Bonjour.

Il y a quelque temps, j'ai eu l'occasion d'essayer la plate-forme elle-même et l'équilibreur de charge virtuel sur la plate-forme SDN / NFV, et j'ai pensé qu'il ne serait pas intéressant de simplement capturer comment le trafic était relayé et équilibré, donc c'est juste pour le visionnement. J'ai fait un simple moniteur de trafic sur CentOS 6.x.

En fait, je me réfère simplement au fichier de statistiques d'interface (texte) sous / sys / class / net toutes les secondes et je mets à jour l'écran avec ncurses, mais quand je flux réellement le trafic, je peux le surveiller tel quel (trafic) On a l'impression que ça coule), donc c'est intéressant.

Le fichier que vous regardez

Je regarde les fichiers ici. Il existe de nombreuses autres collisions, c'est donc une bonne idée de jeter un œil au répertoire. Remplacez "eth0" par le nom de votre interface. Ces fichiers contiennent simplement des nombres tels que le nombre de paquets et le nombre d'octets.

/sys/class/net/eth0/statistics/rx_packets
/sys/class/net/eth0/statistics/rx_bytes
/sys/class/net/eth0/statistics/rx_errors
/sys/class/net/eth0/statistics/rx_dropped
/sys/class/net/eth0/statistics/tx_packets
/sys/class/net/eth0/statistics/tx_bytes
/sys/class/net/eth0/statistics/tx_errors
/sys/class/net/eth0/statistics/tx_dropped

Comme ça

Ce n'est pas "moderne" car j'ai utilisé ncurses en supposant qu'il sera visualisé depuis Horizon d'OpenStack sur la console.

monitor_screen_shot.png

[Bonus] L2 transparent

Bien que cela s'écarte du sujet principal, je voulais imiter L2 transparent VNF (Virtual Network Function) pour les tests sur la plate-forme NFV, et j'ai connecté les interfaces gauche et droite avec un pont Linux sur Linux qui exécute ce moniteur, alors j'ai frappé la commande Prenez-en note. Le "brvnf" ci-dessous est un nom de pont facultatif. Dans l'exemple ci-dessous, il est connecté à [eth1-brvnf-eth2] pour fonctionner de manière transparente.

  brctl addbr brvnf
  brctl addif brvnf eth1
  brctl addif brvnf eth2
  ifconfig brvnf up

Résumé

À première vue, il peut sembler difficile d'implémenter un moniteur de trafic, mais sous Linux, vous pouvez facilement vous référer à ces fichiers. Puisqu'il s'agit de texte brut, il peut être facilement manipulé même avec des scripts shell.

La source entière est publiée ici (github) [https://github.com/msozawa/simple-tools/tree/master/simple_tra_mon), alors n'hésitez pas à la prendre si vous êtes intéressé.

Eh bien.

Recommended Posts

Moniteur de trafic simple avec CentOS
Surveiller le trafic sous Linux
Installez numba sur CentOS 7.2
Installez Python3.4 sur CentOS 6.6
Installez mecab-python sur CentOS
Installez Python 2.7.3 sur CentOS 5.4
Installation sur la boîte virtuelle CentOS8
Installez awscli sur centos7
Installer Chainer sur CentOS 6.7
Configuration du couple sur CentOS 6
Configurer grub sur CentOS 8
Jusqu'à docker-compose sur CentOS7
Implémentation de retina net sur CentOS
Construction de l'environnement Anaconda sur CentOS7
Surveiller l'utilisation du disque sous Linux
Installez la série ImageMagick-6.2.x sur CentOS7.7
Installez Python 3.8 sur CentOS 7 (SCL)
L'installation d'Apache échoue sur CentOS 8.2
Installez Chrome sur la série CentOS 7
Installez Python 3.8 sur CentOS 8 (AppStream)
Remarques sur l'installation de Python sur CentOS
Étapes pour déployer EMLauncher sur CentOS 8
raspberry pi 4 centos7 installer sur docker
Étapes pour installer VirtualBox sur CentOS
Installez java (Oracle JDK14) sur CentOS7
Comment installer PyPy sur CentOS
Comment installer TensorFlow sur CentOS 7
Installez pip sur CentOS7. Aussi iPython.
Créer un environnement python dans centos
Installez VirtualBox sur CentOS 7 sur VirtualBox (mac + vagrant)
Installer Python sur CentOS à l'aide de Pyenv
Comment installer Maven sur CentOS
Créer un environnement python3 sur CentOS7
Note d'étude 9_Install Jenkins sur CentOS7
Installez Python sur CentOS en utilisant pyenv