Jump to content

Recommended Posts

Posted

Внешний канал 1984Кбит/сек. пограничный роутер с FreeBSD6.2.

Решил поделить канал между бзверями сидящими за натом, иначе скачки по пингам стали одолевать, и прикрутил следующую схему:

#CHANNEL SHAPER

/sbin/ipfw pipe 1 config bw 1950Kbit/s

/sbin/ipfw queue 1 config pipe 1 weight 50 mask dst-ip 0xffffffff src-ip 0xffffffff

/sbin/ipfw queue 2 config pipe 1 weight 50 mask dst-ip 0xffffffff src-ip 0xffffffff

 

 

/sbin/ipfw add 1 queue 1 ip from any to 10.10.15.0/24 via rl0

/sbin/ipfw add 1 queue 1 ip from 10.10.15.0/24 to any via rl0

/sbin/ipfw add 1 queue 2 ip from any to 10.10.16.0/24 via rl0

/sbin/ipfw add 1 queue 2 ip from 10.10.16.0/24 to any via rl0

 

В итоге общая загрузка канала упала до 1700-1750 кбит/сек и дальше этой планке нельзя грузануть, все получили очень низкую скорость и какой-то тупой серфинг.

Что еще можно покрутить?

Posted

Спасибо, причесал, теперь буду наблюдать

 

#CHANNEL SHAPER

/sbin/ipfw pipe 1 config bw 1950Kbit/s

/sbin/ipfw queue 1 config pipe 1 weight 50 mask dst-ip 0x000000ff src-ip 0x000000ff

/sbin/ipfw queue 2 config pipe 1 weight 50 mask dst-ip 0x000000ff src-ip 0x000000ff

 

/sbin/ipfw add 1 queue 1 ip from any to 10.10.15.0/24 in recv rl0

/sbin/ipfw add 1 queue 1 ip from 10.10.15.0/24 to any out xmit rl0

/sbin/ipfw add 1 queue 2 ip from any to 10.10.16.0/24 in recv rl0

/sbin/ipfw add 1 queue 2 ip from 10.10.16.0/24 to any out xmit rl0

 

Posted (edited)

на входящий трафик...

почти также для исходящего только заместо dst-ip нужно src-ip

 

pipe 1 config bw 1950Kbit/s queue 100 buckets 256

queue 1 config pipe 1 weight 50 mask dst-ip 0x000000ff

queue 2 config pipe 1 weight 50 mask dst-ip 0x000000ff

add 1 queue 1 ip from any to 10.10.15.0/24 out via rl0

add 2 queue 2 ip from any to 10.10.16.0/24 out via rl0

 

rl0 интерфейс в локалку

 

Edited by netmonster
Posted (edited)

Бррр. запутался.

Плиз, поправьте мне правила (тыкнув носом)

Попробывал так:

 

/sbin/ipfw pipe 1 config bw 1950Kbit/s queue 100 buckets 256

 

/sbin/ipfw queue 1 config pipe 1 weight 50 mask dst-ip 0x000000ff

/sbin/ipfw queue 2 config pipe 1 weight 50 mask dst-ip 0x000000ff

 

 

/sbin/ipfw add 1 queue 1 ip from any to 10.10.15.0/24 out xmit rl0

/sbin/ipfw add 1 queue 1 ip from 10.10.15.0/24 to any in recv rl0

 

/sbin/ipfw add 1 queue 2 ip from any to 10.10.16.0/24 out xmit rl0

/sbin/ipfw add 1 queue 2 ip from 10.10.16.0/24 to any in recv rl0

 

 

Один фиг загрузка канала макс: 1727000

 

00001      2568       267826 queue 1 ip from 10.10.15.0/24 to any out xmit rl0
00001      2187      1579124 queue 2 ip from any to 10.10.16.0/24 in recv rl0
00001      1650       199335 queue 2 ip from 10.10.16.0/24 to any out xmit rl0
00001       758       462505 queue 3 ip from any to 83.234.240.0/25 in recv rl0

billing# ipfw pipe show 1
00001:   1.950 Mbit/s    0 ms  100 sl. 0 queues (1 buckets) droptail
q00001: weight 50 pipe 1   50 sl. 54 queues (64 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x000000ff/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  0 ip           0.0.0.0/0            0.0.0.64/0       11     1677  0    0   0
  1 ip           0.0.0.0/0             0.0.0.1/0       19      789  0    0   0
  2 ip           0.0.0.0/0           0.0.0.130/0        6     1501  0    0   0
  3 ip           0.0.0.0/0            0.0.0.67/0        1       40  0    0   0
  4 ip           0.0.0.0/0           0.0.0.132/0       14     2134  0    0   0
  5 ip           0.0.0.0/0            0.0.0.69/0        3      590  0    0   0
  6 ip           0.0.0.0/0           0.0.0.134/0        2       80  0    0   0
  7 ip           0.0.0.0/0            0.0.0.71/0        1       40  0    0   0
  8 ip           0.0.0.0/0            0.0.0.72/0       14      668  0    0   0
10 ip           0.0.0.0/0            0.0.0.10/0       23     1104  0    0   0
11 ip           0.0.0.0/0           0.0.0.139/0       13      535  0    0   0
12 ip           0.0.0.0/0            0.0.0.76/0        9     3817  0    0   0
13 ip           0.0.0.0/0            0.0.0.77/0        5      977  0    0   0
15 ip           0.0.0.0/0            0.0.0.15/0       50    53200  0    0   0
16 ip           0.0.0.0/0           0.0.0.208/0        1       46  0    0   0
17 ip           0.0.0.0/0            0.0.0.17/0      742   144849  0    0   0
18 ip           0.0.0.0/0           0.0.0.146/0        1       46  0    0   0
19 ip           0.0.0.0/0            0.0.0.19/0        6      632  0    0   0
20 ip           0.0.0.0/0           0.0.0.212/0        5      463  0    0   0
21 ip           0.0.0.0/0            0.0.0.21/0       64    15133  0    0   0
22 ip           0.0.0.0/0            0.0.0.22/0       10     1510  0    0   0
23 ip           0.0.0.0/0            0.0.0.87/0        1       40  0    0   0
24 ip           0.0.0.0/0            0.0.0.24/0       77     3696  0    0   0
25 ip           0.0.0.0/0           0.0.0.217/0        2       80  0    0   0
26 ip           0.0.0.0/0            0.0.0.90/0      252    10080  0    0   0
27 ip           0.0.0.0/0            0.0.0.27/0       54     5177  0    0   0
28 ip           0.0.0.0/0           0.0.0.156/0        3      610  0    0   0
29 ip           0.0.0.0/0            0.0.0.29/0        1       84  0    0   0
30 ip           0.0.0.0/0           0.0.0.222/0       66     4663  0    0   0
31 ip           0.0.0.0/0            0.0.0.31/0        5      390  0    0   0
33 ip           0.0.0.0/0           0.0.0.225/0       25     1000  0    0   0
35 ip           0.0.0.0/0            0.0.0.35/0        1       48  0    0   0
36 ip           0.0.0.0/0           0.0.0.100/0        1       40  0    0   0
37 ip           0.0.0.0/0            0.0.0.37/0        2      623  0    0   0
38 ip           0.0.0.0/0           0.0.0.166/0        8     1446  0    0   0
39 ip           0.0.0.0/0           0.0.0.231/0        1       52  0    0   0
41 ip           0.0.0.0/0           0.0.0.233/0       45     2368  0    0   0
42 ip           0.0.0.0/0           0.0.0.234/0        2      926  0    0   0
43 ip           0.0.0.0/0           0.0.0.171/0        4      679  0    0   0
44 ip           0.0.0.0/0           0.0.0.172/0       13     1582  0    0   0
45 ip           0.0.0.0/0           0.0.0.173/0        2     1493  0    0   0
47 ip           0.0.0.0/0           0.0.0.175/0        2       80  0    0   0
49 ip           0.0.0.0/0           0.0.0.113/0        1       46  0    0   0
50 ip           0.0.0.0/0           0.0.0.242/0        1       57  0    0   0
52 ip           0.0.0.0/0           0.0.0.116/0        1       46  0    0   0
53 ip           0.0.0.0/0           0.0.0.117/0       75     4181  0    0   0
55 ip           0.0.0.0/0           0.0.0.119/0        1       35  0    0   0
56 ip           0.0.0.0/0            0.0.0.56/0        2       96  0    0   0
57 ip           0.0.0.0/0           0.0.0.249/0        5     1052  0    0   0
58 ip           0.0.0.0/0           0.0.0.250/0       31     2635  0    0   0
59 ip           0.0.0.0/0           0.0.0.123/0       66     7896  0    0   0
60 ip           0.0.0.0/0            0.0.0.60/0        1       40  0    0   0
61 ip           0.0.0.0/0           0.0.0.253/0        1       40  0    0   0
62 ip           0.0.0.0/0           0.0.0.126/0        4     1222  0    0   0
q00002: weight 50 pipe 1   50 sl. 40 queues (64 buckets) droptail
    mask: 0x00 0x00000000/0x0000 -> 0x000000ff/0x0000
BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp
  1 ip           0.0.0.0/0             0.0.0.1/0        2       80  0    0   0
  4 ip           0.0.0.0/0             0.0.0.4/0        5      677  0    0   0
  5 ip           0.0.0.0/0           0.0.0.133/0        2       80  0    0   0
  6 ip           0.0.0.0/0             0.0.0.6/0      196   118585  0    0   0
  7 ip           0.0.0.0/0           0.0.0.135/0       28     1120  0    0   0
  9 ip           0.0.0.0/0             0.0.0.9/0        3      221  0    0   0
10 ip           0.0.0.0/0           0.0.0.138/0       49     8556  0    0   0
11 ip           0.0.0.0/0            0.0.0.11/0       56     7717  0    0   0
12 ip           0.0.0.0/0           0.0.0.140/0        1       40  0    0   0
14 ip           0.0.0.0/0            0.0.0.78/0       27     1192  0    0   0
18 ip           0.0.0.0/0            0.0.0.18/0       40     1600  0    0   0
19 ip           0.0.0.0/0            0.0.0.83/0       50    59120  0    0   0
22 ip           0.0.0.0/0           0.0.0.214/0        4      638  0    0   0
23 ip           0.0.0.0/0           0.0.0.151/0        8      452  0    0   0
24 ip           0.0.0.0/0            0.0.0.24/0       34     9831  0    0   0
25 ip           0.0.0.0/0            0.0.0.89/0      298   345002  0    0   0
26 ip           0.0.0.0/0            0.0.0.90/0        3      597  0    0   0
27 ip           0.0.0.0/0           0.0.0.155/0        1       78  0    0   0
30 ip           0.0.0.0/0           0.0.0.158/0       43     4450  0    0   0
31 ip           0.0.0.0/0            0.0.0.95/0       39     1560  0    0   0
32 ip           0.0.0.0/0            0.0.0.96/0        3      120  0    0   0
35 ip           0.0.0.0/0            0.0.0.99/0        1       40  0    0   0
36 ip           0.0.0.0/0            0.0.0.36/0       27     1104  0    0   0
37 ip           0.0.0.0/0            0.0.0.37/0        1       41  0    0   0
38 ip           0.0.0.0/0            0.0.0.38/0        1       40  0    0   0
39 ip           0.0.0.0/0           0.0.0.103/0        2       80  0    0   0
40 ip           0.0.0.0/0           0.0.0.104/0        6      717  0    0   0
41 ip           0.0.0.0/0           0.0.0.105/0       13     1654  0    0   0
43 ip           0.0.0.0/0            0.0.0.43/0        9    12600  0    0   0
45 ip           0.0.0.0/0           0.0.0.109/0        5      679  0    0   0
46 ip           0.0.0.0/0           0.0.0.174/0        6      648  0    0   0
48 ip           0.0.0.0/0           0.0.0.112/0      183    44225  0    0   0
50 ip           0.0.0.0/0            0.0.0.50/0       68     2720  0    0   0
51 ip           0.0.0.0/0            0.0.0.51/0        2       80  0    0   0
53 ip           0.0.0.0/0           0.0.0.245/0        3      144  0    0   0
58 ip           0.0.0.0/0           0.0.0.250/0        2       80  0    0   0
60 ip           0.0.0.0/0           0.0.0.124/0        4      160  0    0   0
61 ip           0.0.0.0/0           0.0.0.253/0        4      160  0    0   0
62 ip           0.0.0.0/0           0.0.0.126/0        3      120  0    0   0
63 ip           0.0.0.0/0            0.0.0.63/0        4      296  0    0   0

Edited by Кашмир
Posted

ipfw pipe 1 config bw 2260Kbit/s

ipfw pipe 2 config bw 2260Kbit/s

ipfw queue 1 config pipe 1 weight 50 mask src-ip 0x0000ffff

ipfw queue 2 config pipe 2 weight 50 mask dst-ip 0x0000ffff

ipfw add 1 queue 1 ip from 10.10.15.0/24,10.10.16.0/24 to any in

ipfw add 2 queue 2 ip from any to 10.10.15.0/24,10.10.16.0/24 out

 

 

 

Posted

Огромное спасибо, други!

 

Немного edit по тексту и вот такая конструктия пашет на ура:

 

#CHANNEL SHAPER

 

/sbin/ipfw pipe 1 config bw 1950Kbit/s

/sbin/ipfw pipe 2 config bw 1950Kbit/s

/sbin/ipfw queue 1 config pipe 1 weight 50 mask src-ip 0x0000ffff gred 0.002/10/30/0.1

/sbin/ipfw queue 2 config pipe 2 weight 75 mask dst-ip 0x0000ffff gred 0.002/10/30/0.1

 

/sbin/ipfw add 80 queue 1 ip from 10.10.15.0/24,10.10.16.0/24 to any in

/sbin/ipfw add 85 queue 2 ip from any to 10.10.15.0/24,10.10.16.0/24 out

Posted (edited)

Люди Человеки кто нить может доходчиво обьяснить один раз и навсегда как этот MASk вычесляется ....

 

 

Edited by hmd
Posted (edited)

с инвертированной маской типа понятно,

 

но почему у тебя маска стала /16= 0x0000ffff когда подсеть /24

Edited by hmd
Posted (edited)

Опечатался, сорри.

Вот верно:

 

#CHANNEL SHAPER

 

/sbin/ipfw pipe 1 config bw 1950Kbit/s

/sbin/ipfw pipe 2 config bw 1950Kbit/s

/sbin/ipfw queue 1 config pipe 1 weight 50 mask src-ip 0x000000ff gred 0.002/10/30/0.1

/sbin/ipfw queue 2 config pipe 2 weight 75 mask dst-ip 0x000000ff gred 0.002/10/30/0.1

 

/sbin/ipfw add 80 queue 1 ip from 10.10.15.0/24,10.10.16.0/24 to any in

/sbin/ipfw add 85 queue 2 ip from any to 10.10.15.0/24,10.10.16.0/24 out

Edited by Кашмир
Posted (edited)

Не было там опечатки, и правильно как раз было 0x0000ffff ибо в случае 0x000000ff пайпа будет создаваться по последнему октету, т.е. в одну трубу попадут сразу допустим 10.10.15.15 и 10.10.16.15.

Наглядно все это видно в выводе ipfw pipe 1 sh

Edited by dsk
Posted

а ещё замени 10.10.15.0/24,10.10.16.0/24 на таблицу

создай файлик, сделай что б запускался вместе с rc.firewall

fwcmd="/sbin/ipfw -q"

${fwcmd} table 1 flush

${fwcmd} table 1 add 10.10.15.0/24

${fwcmd} table 1 add 10.10.16.0/24

...

и вместо

/sbin/ipfw add 80 queue 1 ip from 10.10.15.0/24,10.10.16.0/24 to any in

/sbin/ipfw add 85 queue 2 ip from any to 10.10.15.0/24,10.10.16.0/24 out

получится

/sbin/ipfw add 80 queue 1 ip from "table(1)" to any in

/sbin/ipfw add 85 queue 2 ip from any to "table(1)" out

после этого в таблицу можно добавлять записи не перезапуская весь firewall.

 

 

 

 

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.