Страница 1 из 1

FreeBSD 7.2 vs IPFW

Добавлено: 2009-12-27 17:50:41
harmless
Доброе время суток!
Вот снова возвращаюсь к данному вопросу!(
есть машина

Код: Выделить всё

FreeBSD 7.2-RELEASE-p4
обычный инетовский шлюз
есть задача разделить трафик между миром и UA-IX
А пытаюсь это сделать я вот таким способом

Код: Выделить всё

############### USERS 2Mbit/s ###############
${FwCMD} pipe 9 config bw 2Mbit/s queue 20 mask dst-ip 0xffffffff red 0.05/20/100/0.7
${FwCMD} pipe 10 config bw 2Mbit/s queue 20 mask src-ip 0xffffffff red 0.05/20/100/0.7

${FwCMD} pipe 208 config bw 5Mbit/s queue 20 mask dst-ip 0xffffffff red 0.05/20/100/0.7
${FwCMD} pipe 209 config bw 5Mbit/s queue 20 mask src-ip 0xffffffff red 0.05/20/100/0.7


${FwCMD} add 508 pipe 9 log ip from { not table\(120\) or not ${NetIn} } to table\(5\) out
${FwCMD} add 509 pipe 10 log ip from table\(5\) to { not table\(120\) or not ${IpIn} } in

${FwCMD} add 608 pipe 208 log ip from table\(120\) to table\(5\) out
${FwCMD} add 609 pipe 209 log ip from table\(5\) to table\(120\) in


${FwCMD} add 1005 allow log tcp from table\(5\) to { not table\(120\) or not ${NetIn} } in via ${LanIn} setup

${FwCMD} add 905 allow log tcp from table\(5\) to table\(120\) in via ${LanIn} setup
Но беда в том , что при такой задании правил

Код: Выделить всё

from { not table\(120\) or not ${NetIn} } to table\(5\)
вторая часть блока(тобиш not ${NetIn}) игнорируется! :cry:
Пните в нужное русло плз!

Re: FreeBSD 7.2 vs IPFW

Добавлено: 2009-12-27 22:28:10
goshanecr
Привет!
Попробуй экранировать фигурки.

Код: Выделить всё

from \{ not table\(120\) or not ${NetIn} \} to table\(5\)

Re: FreeBSD 7.2 vs IPFW

Добавлено: 2009-12-28 16:19:02
harmless
goshanecr писал(а):Привет!
Попробуй экранировать фигурки.

Код: Выделить всё

from \{ not table\(120\) or not ${NetIn} \} to table\(5\)
Не помагает!
Эффекта ноль! :(
думается буду загонять все аргументы просто в одну таблицу, а потом с ней играться!

Re: FreeBSD 7.2 vs IPFW

Добавлено: 2009-12-28 18:42:37
harmless
Может будут какие-то другие соображения!?

Re: FreeBSD 7.2 vs IPFW

Добавлено: 2009-12-28 20:53:16
goshanecr
Покажи вывод
ipfw show

Re: FreeBSD 7.2 vs IPFW

Добавлено: 2009-12-29 11:59:07
harmless
goshanecr писал(а):Покажи вывод
ipfw show

Код: Выделить всё

# ipfw show
...
00200  7072557  1200712716 nat 1 ip from 10.0.0.0/24 to any out via rl0
00201 11180212 14616009041 nat 1 ip from any to 10.60.77.51 in via rl0
...
00500   432592   324231013 pipe 1 log logamount 100 ip from { not table(120) or not 10.0.0.0/24 } to table(1) out
00501   541458    44054278 pipe 2 log logamount 100 ip from table(1) to { not table(120) or not dst-ip 10.0.0.1 } in

00600   216726    89568162 pipe 200 ip from table(120) to table(1,320) out
00601   373781    23275433 pipe 201 ip from table(1) to table(120) in
00700 35009722 31291442332 allow tcp from any to any established
00901     1076       51928 allow tcp from table(1) to table(120) in via vr0 setup
01001    13903      677744 allow log logamount 100 tcp from table(1) to { not table(120) or not dst-ip 10.0.0.0/24 } in via vr0 setup
...
05000    17193      850408 deny log logamount 100 tcp from any to 10.60.77.51 in via rl0 setup
06000        0           0 allow tcp from 10.0.0.0/24 to 10.0.0.0/24 in via vr0
06001        1          44 allow tcp from 10.0.0.0/24 to 10.0.0.0/24 out via vr0
06002    37227     2587297 allow udp from 10.0.0.0/24 to 10.0.0.0/24 in via vr0
06003    32120     6641267 allow udp from 10.0.0.0/24 to 10.0.0.0/24 out via vr0
06004        0           0 allow icmp from 10.0.0.0/24 to 10.0.0.0/24 in via vr0
06005        0           0 allow icmp from 10.0.0.0/24 to 10.0.0.0/24 out via vr0
07000    94268     4584216 allow ip from 10.60.77.51 to any out xmit rl0
10000    15099     1354187 deny log logamount 100 ip from any to any
65535        0           0 deny ip from any to any
А вот лог который показывает что второй аргумент не учитывается

Код: Выделить всё

Dec 28 18:54:59 serverok kernel: ipfw: 508 Pipe 9 TCP 10.0.0.1:80 10.0.0.66:1040 out via vr0
Dec 28 18:54:59 serverok kernel: ipfw: 508 Pipe 9 TCP 10.0.0.1:80 10.0.0.66:1040 out via vr0
Dec 28 18:54:59 serverok kernel: ipfw: 509 Pipe 10 TCP 10.0.0.66:1040 10.0.0.1:80 in via vr0
Dec 28 18:54:59 serverok kernel: ipfw: 508 Pipe 9 TCP 10.0.0.1:80 10.0.0.66:1040 out via vr0
Dec 28 18:54:59 serverok kernel: ipfw: 508 Pipe 9 TCP 10.0.0.1:80 10.0.0.66:1040 out via vr0
Dec 28 18:54:59 serverok kernel: ipfw: 509 Pipe 10 TCP 10.0.0.66:1040 10.0.0.1:80 in via vr0
Dec 28 18:54:59 serverok kernel: ipfw: 508 Pipe 9 TCP 10.0.0.1:80 10.0.0.66:1040 out via vr0
Dec 28 18:54:59 serverok kernel: ipfw: 508 Pipe 9 TCP 10.0.0.1:80 10.0.0.66:1040 out via vr0
Dec 28 18:54:59 serverok kernel: ipfw: 509 Pipe 10 TCP 10.0.0.66:1040 10.0.0.1:80 in via vr0
Dec 28 18:55:12 serverok kernel: ipfw: 509 Pipe 10 UDP 10.0.0.66:60533 10.0.0.1:53 in via vr0
Dec 28 18:55:12 serverok kernel: ipfw: 508 Pipe 9 UDP 10.0.0.1:53 10.0.0.66:60533 out via vr0
Dec 28 18:55:14 serverok kernel: ipfw: 509 Pipe 10 UDP 10.0.0.66:50485 10.0.0.1:53 in via vr0
Dec 28 18:55:14 serverok kernel: ipfw: 508 Pipe 9 UDP 10.0.0.1:53 10.0.0.66:50485 out via vr0
Dec 28 18:55:16 serverok kernel: ipfw: 509 Pipe 10 UDP 10.0.0.66:54627 10.0.0.1:53 in via vr0
Dec 28 18:55:16 serverok kernel: ipfw: 508 Pipe 9 UDP 10.0.0.1:53 10.0.0.66:54627 out via vr0