Перейти к содержимому
Калькуляторы

Не могу разделить внеш. канал на FreeBSD через шейпер

Внешний канал 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 кбит/сек и дальше этой планке нельзя грузануть, все получили очень низкую скорость и какой-то тупой серфинг.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Неверна взята маска. Заменить на 0x000000ff

 

Использовать не via rl0 - а пользовать in recv rl0 и xmit rl0

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

#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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

почти также для исходящего только заместо 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 интерфейс в локалку

 

Изменено пользователем netmonster

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

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

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

 

/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

Изменено пользователем Кашмир

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

Немного 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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

 

Изменено пользователем hmd

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Скачай Ланкалькулятор

post-3776-1202932457_thumb.png

Изменено пользователем Кашмир

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

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

Изменено пользователем hmd

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Он или опечатался - или невнимательно скопировал то что я в начале давал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Вот верно:

 

#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

Изменено пользователем Кашмир

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

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

Изменено пользователем dsk

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а ещё замени 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.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.