tc globale Regel pro IP-Adresse

  • Thread starter Thread starter Deleted member 11691
  • Start date Start date
D

Deleted member 11691

Guest
Hallo,

folgendes Vorhaben:

Ich möchte jeden Container (OpenVZ-Virtualisierung) auf einem Proxmox Hostsystem auf genau 100Mbit limitieren. Das Hostsystem selber ist mit 1Gbit an's Internet gebunden und es laufen genau 10 Container auf diesem Hostsystem einwandfrei - kein Ressourcen-Overbooking, außer:

Jeder Container hat derzeit die volle Bandbreite von 1Gbit, welche ich mit tc limitieren möchte.

Code:
DEV=venet0
tc qdisc del dev $DEV root
tc qdisc add dev $DEV root handle 1: cbq avpkt 1000 bandwidth 100mbit
tc class add dev $DEV parent 1: classid 1:1 cbq rate 100mbit allot 1500 prio 5 bounded isolated
tc filter add dev $DEV parent 1: protocol ip prio 16 u32 match ip dst con.tai.ner.ip flowid 1:1
tc qdisc add dev $DEV parent 1:1 sfq perturb 10
(Diese Regel betrifft nur den Download, ich möchte allerdings Download und Upload von allen Containern auf jeweils 100Mbit beschränken.)

Diese Regel funktioniert genau für einen Container. Sobald ich diese Regel auf einen weiteren Container anwende, wird diese natürlich überschrieben. Nun möchte ich also tc sagen, dass jede IP-Adresse genau 100Mbit benutzen darf. Hier ist allerdings auch möglich, ein Script zu basteln, welches in einem bestimmten Abstand die vergebenen IP-Adressen ausliest und dann jeweils die tc-Regeln updated.

Da liegt allerdings schon das größte Problem: Ich weiß nicht, welche relevanten Variablen ich hier bearbeiten muss, damit tc nicht nur einen Container sondern mehrere auf jeweils 100Mbit limitiert.

Wäre sehr toll, wenn es hier jemanden gibt, der mir die tc-Befehle genauer erläutern kann und der mir eventuell soetwas schnell zusammenbasteln kann.

Vielen Dank schon 'mal!
 
Push?

Der von dir eingegebene Text ist zu kurz. Bitte erweitere den Text auf die minimale Länge von 10 Zeichen.

Habe wirklich noch nichts via Google gefunden :(
 
Die man-page zu tc hast du dir auch schon mal angeschaut, oder?

Ich sage nur "dst" und "src". Den Rest an KnowHow kannst du als gewerblicher Anbieter bestimmt aneignen oder einkaufen.
 
Das funktioniert ja soweit auch bis auf das hier:
Diese Regel funktioniert genau für einen Container. Sobald ich diese Regel auf einen weiteren Container anwende, wird diese natürlich überschrieben. Nun möchte ich also tc sagen, dass jede IP-Adresse genau 100Mbit benutzen darf. Hier ist allerdings auch möglich, ein Script zu basteln, welches in einem bestimmten Abstand die vergebenen IP-Adressen ausliest und dann jeweils die tc-Regeln updated.

Und aus man tc wurde ich innerhalb 3 Monaten auch nicht schlauer :(
 
Back
Top