WonderShaper - ein Tool zur Begrenzung der Netzwerkbandbreite unter Linux
Wondershaper ist ein kleines Bash-Skript, mit dem Sie die Netzwerkbandbreite unter Linux begrenzen können. Es verwendet das Befehlszeilenprogramm tc als Backend für die Konfiguration der Verkehrssteuerung. Es ist ein praktisches Tool zur Steuerung der Bandbreite auf einem Linux-Server.
Hier können Sie die maximale Download-Rate und/oder die maximale Upload-Rate festlegen. Darüber hinaus können Sie die von Ihnen festgelegten Limits löschen und den aktuellen Status einer Schnittstelle über die Befehlszeile anzeigen. Anstatt die CLI-Optionen zu verwenden, können Sie es persistent als Dienst unter systemd ausführen.
In diesem Artikel zeigen wir, wie Sie Wondershaper installieren und verwenden, um die Netzwerkbandbreite auf Linux-Systemen zu begrenzen.
So installieren Sie Wondershaper auf Linux-Systemen
Beginnen Sie zunächst mit der Installation von wondershaper mit Ihrem Linux-Distributionspaketmanager aus dem Standardrepertoire, wie gezeigt.
sudo apt install wondershaper [On Debian/Ubuntu]
sudo yum install wondershaper [On CentOS/RHEL]
sudo dnf install wondershaper [On Fedora 22+]
Um die neuesten Updates abzurufen und zu installieren, müssen Sie alternativ das GitHub-Repository von wondershaper auf Ihr System klonen, in das lokale Repository wechseln und es mit den folgenden Befehlen installieren. Beachten Sie, dass Sie das Befehlszeilentool git installiert haben sollten:
$ cd bin
git clone https://github.com/magnific0/wondershaper.git
cd wondershaper
sudo make install
Bevor Sie mit der Verwendung von wondershaper beginnen, sollten Sie zunächst alle Netzwerkschnittstellen überprüfen, die mit dem Befehl ifconfig oder ip an Ihren Computer angeschlossen sind.
Auf diese Weise können Sie die Schnittstelle ermitteln, auf der Sie die Bandbreitennutzung beeinflussen möchten, z. B. die aktive drahtlose Schnittstelle wlp1s0.
$ ifconfig
OR
ip addr
So verwenden Sie Wondershaper, um die Netzwerkbandbreite unter Linux zu begrenzen
Um die maximale Download-Rate in Kbit/s für eine Schnittstelle zu definieren, führen Sie den folgenden Befehl mit den Optionen -a (definiert die Schnittstelle) und -d (definiert Kbit/s) aus, d.h. die Download-Rate wird auf 4 Mbit/s festgelegt.
$ wondershaper -a wlp1s0 -d 4048
Um die maximale Upload-Rate in KBit/s für eine Schnittstelle festzulegen, verwenden Sie die Option -u wie folgt.
$ wondershaper -a wlp1s0 -u 1048
Sie können z. B. auch den Download und den Upload gleichzeitig mit einem einzigen Befehl einstellen.
$ wondershaper -a wlp1s0 -d 4048 -u 1048
Mit der Option -s können Sie den aktuellen Status einer Schnittstelle anzeigen.
$ wondershaper -sa wlp1s0
Sie können auch iPerf – network throughput tool verwenden, um die Bandbreitenreduzierung z.B. mit wondershaper zu testen.
Sie können die Download- oder Upload-Limits, die Sie für eine Schnittstelle festgelegt haben, mit dem Flag -c löschen.
$ wondershaper -ca wlp1s0
Es ist auch möglich, wondershaper als Service auszuführen, bei dem Sie die Parameter für die Gestaltung der Bandbreite in einer Konfigurationsdatei definieren. Dies ermöglicht es wondershaper, beim Booten zu starten und die Bandbreitennutzung jederzeit zu begrenzen, wenn das System eingeschaltet ist, wie im nächsten Abschnitt erklärt.
Wie man Wondershaper dauerhaft unter systemd ausführt
In diesem Modus müssen Sie die Schnittstelle, die Upload- und Download-Raten in der wondershaper-Konfigurationsdatei einstellen, die sich unter /etc/conf.d/wondershaper befindet. Sie können diese Datei zur Bearbeitung mit Ihrem bevorzugten CLI-Editor öffnen, wie gezeigt.
$ sudo vim /etc/conf.d/wondershaper
Definieren Sie die erforderlichen Parameter wie folgt.
[wondershaper]
Adapter
IFACE="wlp1s0"
Download rate in Kbps
DSPEED="4048"
Upload rate in Kbps
USPEED="512"
Speichern Sie die Datei, und schließen Sie sie.
Starten Sie als Nächstes den wondershaper-Dienst für die mittlere Zeit, aktivieren Sie ihn für den automatischen Start beim Systemstart und zeigen Sie seinen Status mit dem Befehl systemctl an.
$ sudo systemctl start wondershaper
sudo systemctl enable wondershaper
sudo systemctl status wondershaper
Falls Sie die Werte der Parameter in der Konfigurationsdatei ändern, müssen Sie den wonderservice neu starten, damit die Änderungen wirksam werden.
$ sudo systemctl restart wondershaper
Um den wondershaper-Dienst zu stoppen, verwenden Sie den folgenden Befehl.
$ sudo systemctl stop wondershaper
Weitere Hilfe finden Sie im Wondershaper Github-Repository: https://github.com/magnific0/wondershaper
Wondershaper ist ein Traffic Shaper zur Begrenzung der Netzwerkbandbreite auf Linux-Systemen. Probieren Sie es aus und teilen Sie uns Ihre Gedanken über das untenstehende Feedback-Formular mit. Wenn Sie ähnliche Tools kennen, können Sie uns dies auch in den Kommentaren mitteilen – wir werden Ihnen dankbar sein.

