Jump to content
Калькуляторы

Помогите с советом по ipfw как правильно ?

Я не очень силён в ipfw, по тому хочу вашего совета

 

Мне нужно розпределить скорость между пользователями!

 

Вот как я сделал:

 

${FwCMD} pipe 1 config bw 2048Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 2 config bw 64Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 3 config bw 1524Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 4 config bw 512Kbit/s mask dst-ip 0xffffffff

${FwCMD} add 11 pipe 1 tcp from any to 192.168.1.53 out
${FwCMD} add 12 pipe 1 tcp from 192.168.1.53 to any in

${FwCMD} add 11 pipe 3 tcp from any to 192.168.1.52 out
${FwCMD} add 12 pipe 3 tcp from 192.168.1.52 to any in

${FwCMD} add 11 pipe 3 tcp from any to 192.168.1.92 out
${FwCMD} add 12 pipe 3 tcp from 192.168.1.92 to any in

${FwCMD} add 11 pipe 3 tcp from any to 192.168.1.57 out
${FwCMD} add 12 pipe 3 tcp from 192.168.1.57 to any in

${FwCMD} add 11 pipe 4 tcp from any to 192.168.1.59 out
${FwCMD} add 12 pipe 4 tcp from 192.168.1.59 to any in

${FwCMD} add 11 pipe 4 tcp from any to 192.168.1.54 out
${FwCMD} add 12 pipe 4 tcp from 192.168.1.54 to any in

${FwCMD} add 11 pipe 4 tcp from any to 192.168.1.56 out
${FwCMD} add 12 pipe 4 tcp from 192.168.1.56 to any in

${FwCMD} add 11 pipe 3 tcp from any to 192.168.1.60 out
${FwCMD} add 12 pipe 3 tcp from 192.168.1.60 to any in

${FwCMD} add 13 pipe 2 tcp from any to 192.168.1.0/24 out
${FwCMD} add 14 pipe 2 tcp from 192.168.1.0/24 to any in

 

Я думаю с конфига задум понятен )

 

Просто если мне нужно будет добавить еще 30 IP, то конфиг будет очень большой((

Подскажите где ошибки, и как эти правила написать проще!

 

Заранее спасибо

Share this post


Link to post
Share on other sites

Можно пример ?

 

я раньше пробувал таблицы, но они не применялись(

скорость была у всех одинакова

Share this post


Link to post
Share on other sites
Можно пример ?

 

я раньше пробувал таблицы, но они не применялись(

скорость была у всех одинакова

${FwCMD} pipe 1 config bw 2048Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 2 config bw 64Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 3 config bw 1524Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 4 config bw 512Kbit/s mask dst-ip 0xffffffff

${FwCMD} table 1 add 192.168.1.53 1
${FwCMD} table 1 add 192.168.1.52 3
${FwCMD} table 1 add 192.168.1.92 3
${FwCMD} table 1 add 192.168.1.59 4

${FwCMD} add 11 pipe tablearg tcp from any to table\(1\) out
${FwCMD} add 12 pipe tablearg tcp from table\(1\) to any in

 

Только криво это, нада по пайпу на вход и исход делать.

Edited by make.kernel

Share this post


Link to post
Share on other sites

Это не криво.

это ошибочно.

в принципе.

 

если топик стартер подумает, то сможет догадаться, что на каждую скорость надо ДВЕ трубы, одну с dst-mask, вторую с src-mask

ну и две таблицы естественно...

 

 

Share this post


Link to post
Share on other sites

ну и две таблицы естественно...

зачем?

Share this post


Link to post
Share on other sites

ну и дополню, указывайте не просто in/out а конкретно recv интерфейс_1 xmit интерфейс_2, чтобы два раза не загонять пакет в трубу (если адреса публичные)

а две таблицы затем, чтобы указать очереди низходящего и восходящего трафика по вашим приватным адресам.

т.е. должно быть так:

 

${FwCMD} pipe 1 config bw 2048Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 2 config bw 64Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 3 config bw 1524Kbit/s mask dst-ip 0xffffffff
${FwCMD} pipe 4 config bw 512Kbit/s mask dst-ip 0xffffffff

${FwCMD} pipe 11 config bw 2048Kbit/s mask src-ip 0xffffffff
${FwCMD} pipe 22 config bw 64Kbit/s mask src-ip 0xffffffff
${FwCMD} pipe 33 config bw 1524Kbit/s mask src-ip 0xffffffff
${FwCMD} pipe 44 config bw 512Kbit/s mask src-ip 0xffffffff


${FwCMD} table 1 add 192.168.1.53 1
${FwCMD} table 1 add 192.168.1.52 3
${FwCMD} table 1 add 192.168.1.92 3
${FwCMD} table 1 add 192.168.1.59 4

${FwCMD} table 2 add 192.168.1.53 11
${FwCMD} table 2 add 192.168.1.52 33
${FwCMD} table 2 add 192.168.1.92 33
${FwCMD} table 2 add 192.168.1.59 44

${FwCMD} add 11 pipe tablearg tcp from any to table\(1\) out via <внутренний_интерфейс>
${FwCMD} add 12 pipe tablearg tcp from table\(2\) to any in via <внутренний_интерфейс>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this