C
Code7R
Hallo Leute,
ich habe ein kleines Problem, zu dem ich leider bisher im Internet keine Lösung finden konnte:
Ich habe eine normale iptables-Firewall, auf Debian Sarge 3.1 mit dessen Standard-Kernel 2.6.8 und iptables 1.2.11.
Ich möchte eine oder mehrere IPs ausbremsen, besser gesagt die Geschwindigkeit, mit der diese IPs Daten aus dem Internet empfangen begrenzen. Ich habe ein wenig recherchiert und dachte, ich könnte dies mit der iptables-extension "connrate" bewerkstelligen.
Da connrate kein Bestandteil des 2.6.8er Kernels ist, habe ich mir patch-o-matic von netfilter.org besorgt um die Kernel- und iptables-Quellen zu patchen. Das hat auch wunderbar geklappt und ich konnte connrate mittels "make menuconfig" im Kernel aktivieren.
Anschließend wollte ich den Kernel neu übersetzen...
Ich habe schon alles versucht was mir eingefallen ist: Andere Kernel Version, anderes iptables, anderes cpp und gcc... ohne Erfolg.
Hat einer oder eine von euch schon einmal mit Connrate gearbeitet? Wenn ja, welche Kernel- und iptables-Version habt Ihr verwendet?
Könnt Ihr mir vielleicht generell Tips dazu geben wie man bestimmte Clients oder Ports ausbremsen könnte?
Danke für eure Hilfe,
Code7R
ich habe ein kleines Problem, zu dem ich leider bisher im Internet keine Lösung finden konnte:
Ich habe eine normale iptables-Firewall, auf Debian Sarge 3.1 mit dessen Standard-Kernel 2.6.8 und iptables 1.2.11.
Ich möchte eine oder mehrere IPs ausbremsen, besser gesagt die Geschwindigkeit, mit der diese IPs Daten aus dem Internet empfangen begrenzen. Ich habe ein wenig recherchiert und dachte, ich könnte dies mit der iptables-extension "connrate" bewerkstelligen.
Da connrate kein Bestandteil des 2.6.8er Kernels ist, habe ich mir patch-o-matic von netfilter.org besorgt um die Kernel- und iptables-Quellen zu patchen. Das hat auch wunderbar geklappt und ich konnte connrate mittels "make menuconfig" im Kernel aktivieren.
Anschließend wollte ich den Kernel neu übersetzen...
...
CC net/ipv4/fib_frontend.o
CC net/ipv4/fib_semantics.o
CC net/ipv4/fib_hash.o
net/ipv4/fib_hash.c: In function `fib_get_idx':
net/ipv4/fib_hash.c:978: Warnung: Initialisierung von inkompatiblem Zeigertyp
net/ipv4/fib_hash.c:981: Warnung: Zuweisung von inkompatiblem Zeigertyp
CC net/ipv4/proc.o
CC net/ipv4/ipconfig.o
CC net/ipv4/netfilter/ip_conntrack_rate.o
net/ipv4/netfilter/ip_conntrack_rate.c:98: Warnung: »int« ist Standardtyp in Deklaration von »DEFINE_RWLOCK«
net/ipv4/netfilter/ip_conntrack_rate.c:98: Warnung: Parameternamen (ohne Typen) in Funktionsdeklaration
net/ipv4/netfilter/ip_conntrack_rate.c: In function `ip_conntrack_rate_count':
net/ipv4/netfilter/ip_conntrack_rate.c:106: Warnung: implizite Deklaration der Funktion »local_bh_disable«
net/ipv4/netfilter/ip_conntrack_rate.c:106: Fehler: »rate_lock« nicht deklariert (erste Benutzung in dieser Funktion)
net/ipv4/netfilter/ip_conntrack_rate.c:106: Fehler: (Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt
net/ipv4/netfilter/ip_conntrack_rate.c:106: Fehler: für jede Funktion in der er auftritt.)
net/ipv4/netfilter/ip_conntrack_rate.c:115: Warnung: implizite Deklaration der Funktion »local_bh_enable«
net/ipv4/netfilter/ip_conntrack_rate.c: In function `ip_conntrack_rate_get':
net/ipv4/netfilter/ip_conntrack_rate.c:123: Fehler: »rate_lock« nicht deklariert (erste Benutzung in dieser Funktion)
net/ipv4/netfilter/ip_conntrack_rate.c: At top level:
net/ipv4/netfilter/ip_conntrack_rate.c:98: Warnung: »DEFINE_RWLOCK« als »static« deklariert, aber nirgendwo definiert
make[3]: *** [net/ipv4/netfilter/ip_conntrack_rate.o] Fehler 1
make[2]: *** [net/ipv4/netfilter] Fehler 2
make[1]: *** [net/ipv4] Fehler 2
make: *** [net] Fehler 2
Ich habe schon alles versucht was mir eingefallen ist: Andere Kernel Version, anderes iptables, anderes cpp und gcc... ohne Erfolg.
Hat einer oder eine von euch schon einmal mit Connrate gearbeitet? Wenn ja, welche Kernel- und iptables-Version habt Ihr verwendet?
Könnt Ihr mir vielleicht generell Tips dazu geben wie man bestimmte Clients oder Ports ausbremsen könnte?
Danke für eure Hilfe,
Code7R