[LINUX] Einfacher Verkehrsmonitor mit CentOS

Hallo.

Vor einiger Zeit hatte ich die Gelegenheit, die Plattform selbst und den virtuellen Load Balancer auf der SDN / NFV-Plattform auszuprobieren, und ich dachte, es wäre uninteressant, nur zu erfassen, wie der Datenverkehr weitergeleitet und ausgeglichen wurde, also nur zum Anzeigen. Ich habe unter CentOS 6.x einen einfachen Verkehrsmonitor erstellt.

Eigentlich beziehe ich mich jede Sekunde auf die Schnittstellenstatistikdatei (Text) unter / sys / class / net und aktualisiere den Bildschirm mit ncurses, aber wenn ich tatsächlich Verkehr fließe, kann ich ihn so überwachen, wie er ist (Verkehr) Es fühlt sich an wie es fließt), also ist es interessant.

Die Datei, die Sie betrachten

Ich schaue mir die Dateien hier an. Es gibt viele andere Kollisionen, daher ist es eine gute Idee, sich das Verzeichnis anzusehen. Ersetzen Sie "eth0" durch Ihren Schnittstellennamen. Diese Dateien enthalten einfach Zahlen wie die Anzahl der Pakete und die Anzahl der Bytes.

/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

So was

Es ist nicht "modern", weil ich ncurses unter der Annahme verwendet habe, dass es von Horizon of OpenStack auf der Konsole angezeigt wird.

monitor_screen_shot.png

[Bonus] L2 transparent

Obwohl es vom Hauptthema abweicht, wollte ich L2 Transparent VNF (Virtual Network Function) zum Testen auf der NFV-Plattform imitieren und habe die linke und rechte Schnittstelle mit einer Linux-Bridge unter Linux verbunden, auf der dieser Monitor ausgeführt wird, also habe ich den Befehl gedrückt Notieren Sie es sich. Das folgende "brvnf" ist ein optionaler Brückenname. Im folgenden Beispiel ist es mit [eth1-brvnf-eth2] verbunden, um transparent zu arbeiten.

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

Zusammenfassung

Auf den ersten Blick mag es schwierig erscheinen, einen Verkehrsmonitor zu implementieren, aber wenn Sie unter Linux arbeiten, können Sie leicht auf diese Dateien verweisen. Da es sich um einfachen Text handelt, kann er auch mit Shell-Skripten problemlos verarbeitet werden.

Die gesamte Quelle finden Sie hier (github) [https://github.com/msozawa/simple-tools/tree/master/simple_tra_mon]. Wenn Sie interessiert sind, können Sie sie gerne nutzen.

Na dann.

Recommended Posts

Einfacher Verkehrsmonitor mit CentOS
Überwachen Sie den Datenverkehr unter Linux
Installieren Sie numba unter CentOS 7.2
Installieren Sie Python3.4 unter CentOS 6.6
Installieren Sie mecab-python unter CentOS
Installieren Sie Python 2.7.3 unter CentOS 5.4
Installation auf der CentOS8 Virtual Box
Installieren Sie awscli auf centos7
Installieren Sie Chainer unter CentOS 6.7
Einrichten des Drehmoments unter CentOS 6
Grub unter CentOS 8 einrichten
Bis Docker-Compose auf CentOS7
Retina-Netz unter CentOS implementiert
Anaconda-Umgebungskonstruktion auf CentOS7
Überwachen Sie die Festplattennutzung unter Linux
Installieren Sie die ImageMagick-6.2.x-Serie unter CentOS7.7
Installieren Sie Python 3.8 unter CentOS 7 (SCL)
Die Apache-Installation schlägt unter CentOS 8.2 fehl
Installieren Sie Chrome unter der CentOS 7-Serie
Installieren Sie Python 3.8 unter CentOS 8 (AppStream)
Hinweise zur Installation von Python unter CentOS
Schritte zum Bereitstellen von EMLauncher unter CentOS 8
Himbeer Pi 4 Centos7 auf Docker installieren
Schritte zum Installieren von VirtualBox unter CentOS
Installieren Sie Java (Oracle JDK14) unter CentOS7
So installieren Sie PyPy unter CentOS
So installieren Sie TensorFlow unter CentOS 7
Installieren Sie pip unter CentOS7. Auch iPython.
Erstellen Sie eine Python-Umgebung in Centos
Installieren Sie VirtualBox unter CentOS 7 unter VirtualBox (Mac + Vagrant)
Installieren Sie Python unter CentOS mit Pyenv
So installieren Sie Maven unter CentOS
Erstellen Sie eine Python3-Umgebung unter CentOS7
Studienhinweis 9_Installieren Sie Jenkins unter CentOS7
Installieren Sie Python unter CentOS mit pyenv