ipfw/dummynet traffic shaping

Hallo zusammen

Da ich ein absoluter newbie in Sachen ipfw/dummynet bin und das Netz auch schon nach howto's durchsucht habe, jedoch nichts entsprechendes gefunden habe, seit Ihr meine letzte Hoffnung...

Problem:

Da IPFilter leider nicht in der Lage ist, das traffic shaping durchzuführen, habe ich ipfw und dummynet in den Kernel einkompiliert.

options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_DEFAULT_TO_ACCEPT
options DUMMYNET

Nun möchte ich den FTP server upload 192.168.100.50 auf max.
20 KBytes/s beschränken.
Dazu benutze ich folgende Regeln:

ipfw add pipe 1 from 192.168.100.50 to any 21 via dc0
ipfw pipe 1 config bw 20KBytes/s

Wenn ich nun von irgendeinem host von meinem FTP Server etwas downloade, dann ist der downstream leider immer über 20 KByte/s. Was mache ich nur falsch? :confused:

Provider
¦
¦dc0 (public IP) 80.254.xxx.xxx/48
¦____
| BSD |________ rl0 (DMZ) 192.168.100.50/24
|____|
¦
¦xl0 (client) 192.168.10.x
¦

Betriebssystem:

4.8-STABLE FreeBSD 4.8-STABLE #8: Thu Jul 24 20:19:17 CEST 2003 root@www:/usr/obj/usr/src/sys/FIREWALL i386

Firewall:

ipf: IP Filter: v3.4.31 (336)
Kernel: IP Filter: v3.4.31
Running: yes
Log Flags: 0 = none set
Default: block all, Logging: available
Active list: 0
 
ahoi, probier mal anstatt der portnummer "21" mal die "20", diese wird nämlich für "get" verwendet, und 21 ist die controlleitung

viel spass noch...

Al
 
Danke für den Tipp, habe die Regel aktualisiert und die Firewall angepasst, funzt aber leider immer noch nicht.

ipfw add pipe 1 from 192.168.100.50 to any 20 via dc0
ipfw pipe 1 config bw 20KBytes/s

Die 20KBytes werden leider immer noch überschritten... :(
 
Original geschrieben von visualdomain
ipfw add pipe 1 from 192.168.100.50 to any 20 via dc0
ipfw pipe 1 config bw 20KBytes/s

Typo?

20KByte/s NICHT 20KBytes/s

Wobei...habe eben eine rule gesehen da stand es auch so drin, und die soll wohl funktionieren...
 
die sache ist gar nicht so einfach wie man denkt.
und das liegt leider an diesem komischen Protokoll FTP.
ipfw add pipe 1 from 192.168.100.50 to any 20 via dc0
ipfw pipe 1 config bw 20KBytes/s

die clients (hier 'any') connecten ja nicht von port 20, sondern zu Port 20 bei Dir,
und das auch nicht immer, es gibt ja bei FTP (lieder) sowas wie passive mode.
(oder wars der active mode?!?)
genau wegen diesem blödsinn hab ich den ftpd abgeschaltet und benutze nur noch sftp, auch wenn es (noch) nicht so weit unterstützt wird, vor allem von Betriebssystemen aus Redmond :|

genau kann ich dir leider auch nicht sagen was du machen musst, und obs überhaupt so einfach geht.

gruss Male
 
Mit ipfw/dummynet allein kannst du FTP nicht bremsen.

Es gibt zwei Alternativen:
1. ipfw/dummynet, passive FTP abschalten, ausgehende Verbindungen von Port 20 drosseln.
2. Verwende eine ftpd der Bandbreitenbegrenzung kann

Zu 1: Sehr schlecht, weil viele Clients hinter NAT liegen und nur passive FTP koennen.
Zu 2: Die einzig richtige Loesung.
 
hi
so wie ich das sehe musst du nicht deine interne ip adresse der pipe mitgeben! Sondern die von deinem externen interface (tun0 z.b)

Bei mir funktioniert das wunderbar!!


Gruss
 
Zurück
Oben