Salve!
Ho già postato questo sul freebsd-domande mailing list, ma ho pensato che potrei provare anche qui.
Sto utilizzando FreeBSD 7,0 con ipfw DUMMYNET abilitato.
Ho un problema con la creazione di un regole, che mi permette di limitare la larghezza di banda di un link e poi passare i pacchetti di un altro tubo per l'elaborazione.
Finora ho queste regole:
Codice:
in_if="em0"
out_if="em1"
management_if="em2"
in_ip="100.100.100.1"
out_ip="200.200.200.1"
management_ip="172.16.0.201"
client1_subnet="192.168.5.0/26"
client2_subnet="192.168.6.0/26"
server_subnet="192.168.7.0/24"
download_bandwidth="6144Kbit/s"
upload_bandwidth="1024Kbit/s"
delay="0"
queue_size="10"
cmd="ipfw"
$cmd add 10 allow all from any to any via lo0
$cmd pipe 100 config mask src-ip 0xffffffff bw $upload_bandwidth queue $queue_size delay $delay
$cmd pipe 200 config mask dst-ip 0xffffffff bw $download_bandwidth queue $queue_size
$cmd add pipe 100 all from $client1_subnet to $server_subnet in via $in_if
$cmd add pipe 200 all from $server_subnet to $client1_subnet out via $in_if
$cmd add pipe 100 all from $client2_subnet to $server_subnet in via $in_if
$cmd add pipe 200 all from $server_subnet to $client2_subnet out via $in_if
$cmd add 10000 allow all from any to any via $management_if
$cmd add 20000 allow all from any to any via $in_if
$cmd add 30000 allow all from any to any via $out_if
Quello che voglio aggiungere adesso, è la possibilità di limitare la larghezza di banda di tutto il link, ad esempio, 100Mbit / s su em0.
Ho provato ad aggiungere un tubo:
$ cmd tubo 50 config bw 100Mbit / s $ coda queue_size
$ cmd aggiungere tutti i 50 tubo da qualsiasi a qualsiasi tramite $ in_if
Ma quando ho controllato a tubi con 'ipfw mostra' I pacchetti possono solo vedere passare attraverso il tubo 50 e non passa attraverso gli altri tubi (che ha senso dal momento che effettivamente ipfw opere che modo?).
Qualsiasi aiuto è molto apprezzato.
xenator