🔹 Warum dieses Skript?
Manchmal braucht man mehr Kontrolle über die eigene Netzwerkbandbreite – sei es, um bestimmte Dienste zu priorisieren oder Limits für einzelne Verbindungen zu setzen. Statt komplizierte tc
-Befehle von Hand zu schreiben, erstellt dieser Generator eine passende Traffic-Shaping-Konfiguration für dich.
Mit wenigen Klicks kannst du:
- Die Bandbreite eines Interfaces begrenzen (z. B. eth0, vmbr0)
- Prioritäten für Verbindungen setzen
- Langsame, mittlere oder schnelle Limits wählen
- Eine fertige
tc
-Konfiguration generieren, die sofort genutzt werden kann
🛠️ Features des Traffic Shaping Generators
- Automatische Generierung von
tc
-Regeln - Einfache Web-Oberfläche – kein Terminal notwendig
- Vordefinierte Geschwindigkeitsprofile (Langsam, Mittel, Schnell, Unbegrenzt)
- Prioritätensteuerung – gebe bestimmten Verbindungen Vorrang
📈 Beispiel: Generierte Traffic Shaping Konfiguration
Angenommen, du willst folgende Einstellungen setzen:
- Netzwerkschnittstelle:
eth0
- Geschwindigkeit:
5 Mbit/s Download, 3 Mbit/s Upload
- Priorität:
2
(mittlere Priorität)
Das Skript generiert automatisch folgende tc-Konfiguration:
auto eth0
iface eth0 inet manual
tc qdisc add dev eth0 root handle 1: htb default 10
tc class add dev eth0 parent 1: classid 1:1 htb rate 5000kbit
tc filter add dev eth0 protocol ip prio 2 u32 match ip src 0.0.0.0/0 flowid 1:1
tc class add dev eth0 parent 1: classid 1:2 htb rate 3000kbit
tc filter add dev eth0 protocol ip prio 2 u32 match ip dst 0.0.0.0/0 flowid 1:2
💡 Diese Datei kann direkt auf deinem Server verwendet werden!
🔎 Code-Analyse – Wichtige Abschnitte erklärt
1️⃣ Eingaben aus dem Formular verarbeiten
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$interface = $_POST['interface'];
$speedOption = $_POST['speed_option'];
👉 Hier werden die Nutzereinstellungen aus dem Formular übernommen.
2️⃣ Bandbreite je nach Auswahl definieren
switch ($speedOption) {
case 'slow':
$maxBandwidthIngress = '1000kbit';
$maxBandwidthEgress = '500kbit';
break;
👉 Je nach gewählter Option wird die Bandbreite automatisch gesetzt.
3️⃣ Erstellung der Traffic-Shaping-Konfiguration
$generatedTrafficShapingConfig .= "auto {$interface}\n";
$generatedTrafficShapingConfig .= "iface {$interface} inet manual\n";
$generatedTrafficShapingConfig .= " tc qdisc add dev {$interface} root handle 1: htb default 10\n";
👉 Hier wird das Interface mit den Traffic-Klassen konfiguriert.
📝 Download & Nutzung
💾 Download: traffic_shaping_generator.php
📌 Lizenz: Open-Source – Feel free to use & modify!
💚 Hast du Fragen oder Verbesserungsvorschläge? Schreib mir! 🚀
💡 Fazit – Warum ist das Skript nützlich?
- Erhöht die Kontrolle über die Bandbreite – Keine ungewollten Engpässe mehr
- Spart Zeit – Kein mühsames Schreiben von
tc
-Regeln - Anpassbar für Einsteiger & Profis – Einfach per Web-Oberfläche
Endlich ein Traffic Shaping Generator, der die komplizierten tc-Befehle vereinfacht! Das hilft mir ungemein, die Bandbreite in meinem Heimnetzwerk besser zu verteilen, besonders wenn viele Geräte online sind. Danke, Daniel!
Sehr nützlich, um die Bandbreite für bestimmte Dienste zu priorisieren. Ich werde das Tool nutzen, um meinen Gaming-Traffic zu optimieren. Super Idee!
Das ist genau das, was ich brauchte, um mein Proxmox-Netzwerk zu managen. Die Geschwindigkeits-Profile sind sehr praktisch. Keine Ruckler mehr beim Streaming!
Traffic Shaping ist ein komplexes Thema, aber dein Generator macht es erstaunlich einfach. Gut für schnelle Experimente und grundlegende Konfigurationen.
Ein echtes Tool zur Netzwerkoptimierung. Die Möglichkeit, die Bandbreite gezielt zu begrenzen, ist für viele Anwendungsfälle, wie z.B. IoT-Geräte, sehr wichtig. Top-Arbeit!