ich habe da ein paar fragen zum Trafficshaping mit tcng (tc).
Ich betreibe unter anderem einen Backupserver der mit Backuppc läuft und wärend unserer Geschäftszeiten alle Mobilen Geräte im Netz sichert.
Um die Arbeit der betreffenden User aber nicht vollkommen lahm zu legen, habe ich eine Trafficbeschränkung mit tcng erstellt.
Code: Alles auswählen
#include "fields.tc"
$user=10kbps;
$usermax=500kbps;
$max=100MBps;
dev bond0
{
egress
{
/* Zwei Klassen für die verschiedenen smb ports. Beschränkt werden nur Clients (mit ausnahmen von mir), die
server laufen mit voller leistung */
class (<$smb>) if ip_dst != 192.168.1.100 && ip_dst != 192.168.1.120 && ip_dst != 192.168.1.208 && (tcp_sport == 445 || tcp_dport == 445 || tcp_sport == 139 || tcp_dport == 139);
htb()
{
/* ausgehenden smb-Traffic beschränken, führt auch zu geringerem Reinkommendem, ca. 2-3 MB/s*/
/* min. max. */
class (rate $max, ceil $max)
{
/* min 10kb/s max 500 kb/s */
$smb = class (rate $max, ceil $max) {sfq;}
}
}
}
}
Mein Problem ist jetzt Folgendes:
Theoretisch könnte ich für jeden Client eine eigene Klasse bilden und ihn separat beschränken. Aber ich weiß die IP des clients leider erst, wenn wenn das Backup gestartet wird.
Das gute ist, ich kann bei dem Backupprogramm einen Befehl vor und nach dem Backup laufen lassen. Dort kann ich auch auf alle wichtigen eigenschaften des Clients zugreifen, wie etwa die IP. Somit könnte ich per Script problemlos eine entsprechende Regel für diesen Client erzeugen.
DAS PROBLEM aber ist, dass ich immer nur eine Regel gleichzeitig über tc laden kann. Habe ich schon eine Regel, dann kann ich keine weitere mehr hinzufügen, bevor ich nicht die alte gelöscht habe.
Somit habe ich aber wieder nur die Regel für einen Client. Hier beißt sich jetzt die Katze in den Schwanz.
Frage: Kennt jemand eine möglichkeit Regel mit tc zu vorhanden hinzuzufügen oder auf die alten zuzugreifen um eine neue zu erstellen, die beide beinhaltet?
Oder habt ihr eine andere Idee, wie man das geschickt lösen könnte?
Wichtig ist halt, dass:
- die Clients jeweils auf ca. 3MB/s runter gebremst werden
- nicht jeder Client der Backups über das Protokoll macht betroffen ist
- Nach dem Backup die Beschränkung wieder aufgehoben wird, ohne dass andere Clients davon betroffen sind
- Die IP der Clients erst zum start des Backups bekannt sind
Freue mich schon auf eure Anregungen und Ideen.
lg und vielen Dank,
mcdikki