URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 83680
[ Назад ]

Исходное сообщение
"freebsd 7.0"

Отправлено bsdn00b , 15-Янв-09 20:52 
Всем доброго времени суток!
И так имеем:
====== IPFW Rulles =======
00100 7604  509736 allow ip from 192.168.2.1 to me dst-port 22
00200 8079 5227032 allow ip from me to 192.168.2.1 src-port 22
65200    0       0 pipe 65200 ip from any to 192.168.2.254
65300    0       0 pipe 65300 ip from 192.168.2.254 to any
65535 1502  190313 deny ip from any to any
====== IPFW Pipes ======
65200:  64.000 Kbit/s    0 ms   50 sl. 0 queues (1 buckets) droptail
65300:  64.000 Kbit/s    0 ms   50 sl. 0 queues (1 buckets) droptail

1. в результате скорость на 192.168.2.254 ~100кбайт/сек (сама порезка заметна, но непонятна)
2. и ещё, если добавить в 65200 в конец сторки out, а в 65300 in пакеты на 192.168.2.254
перестают бегать вообще.

Хотелось бы получить ответы на 2 этих вопроса.

Заранее извеняюсь если подобная тема уже была, хотелось бы её увидеть если есть такова ...


Содержание

Сообщения в этом обсуждении
"freebsd 7.0"
Отправлено Andrey Mitrofanov , 15-Янв-09 20:55 
>Хотелось бы получить ответы на 2 этих вопроса.

Если Вы думаете, что сформулировали хотя бы один вопрос, то... думайте дальше.


"freebsd 7.0"
Отправлено bsdn00b , 15-Янв-09 20:57 
>>Хотелось бы получить ответы на 2 этих вопроса.
>
>Если Вы думаете, что сформулировали хотя бы один вопрос, то... думайте дальше.
>

Извените, а что не понятно в вопросах ? По-моему ясно, почему скорость режится неправильно, список правил я привел ...


"freebsd 7.0"
Отправлено Shane , 15-Янв-09 23:14 
При таком раскладе пакет попадает в пайп 2 раза, т.к. ipfw пропускает пакет через правила и на входе и на выходе. Пайп надо ставить конкретно на in или на out, на противополжной стороне должно быть allow.
Вот пример:

add 65200 pipe 65200 ip from any to 192.168.2.254 in
add 65300 pipe 65300 ip from 192.168.2.254 to any out
add 65310 allow ip from any to 192.168.2.254 out
add 65320 allow from 192.168.2.254 to any in


"freebsd 7.0"
Отправлено bsdn00b , 15-Янв-09 23:56 
>При таком раскладе пакет попадает в пайп 2 раза, т.к. ipfw пропускает
>пакет через правила и на входе и на выходе. Пайп надо
>ставить конкретно на in или на out, на противополжной стороне должно
>быть allow.
>Вот пример:
>
>add 65200 pipe 65200 ip from any to 192.168.2.254 in
>add 65300 pipe 65300 ip from 192.168.2.254 to any out
>add 65310 allow ip from any to 192.168.2.254 out
>add 65320 allow from 192.168.2.254 to any in

Ну вот почему-то когда добавляю IN & OUT пропадает связь вообще.


"freebsd 7.0"
Отправлено bsdn00b , 16-Янв-09 00:00 
то есть вот так не работает вообще
====== IPFW Rulles =======
00100 9023  601144 allow ip from 192.168.2.1 to me dst-port 22
00200 9579 6163451 allow ip from me to 192.168.2.1 src-port 22
64200    0       0 allow ip from any to 192.168.2.254 out
64300    0       0 allow ip from 192.168.2.254 to any in
65535 1905  240033 deny ip from any to any
====== IPFW Pipes ======



"freebsd 7.0"
Отправлено Shane , 16-Янв-09 00:44 
>
>Ну вот почему-то когда добавляю IN & OUT пропадает связь вообще.

Это все правила, которые есть в системе??


"freebsd 7.0"
Отправлено bsdn00b , 16-Янв-09 01:13 
>>
>>Ну вот почему-то когда добавляю IN & OUT пропадает связь вообще.
>
>Это все правила, которые есть в системе??

да, это то что выдает ipfw show & ipfw pipe show


"freebsd 7.0"
Отправлено Shane , 16-Янв-09 16:38 
>>>
>>>Ну вот почему-то когда добавляю IN & OUT пропадает связь вообще.
>>
>>Это все правила, которые есть в системе??
>
>да, это то что выдает ipfw show & ipfw pipe show

add 65200 pipe 65200 ip from any to 192.168.2.254 in
add 65210 allow ip from any to 192.168.2.254 out
add 65300 pipe 65300 ip from 192.168.2.254 to any in
add 65310 allow from 192.168.2.254 to any out

Это ДОЛЖНО работать, проблема скорее всего не в правилах..
Еще помоему пакеты не проходят пока не был выполнен pipe config первый раз.


"freebsd 7.0"
Отправлено Pahanivo , 16-Янв-09 18:01 
у вас ошибку надо поискать в коде ДНК ..


00100 7604  509736 allow ip from 192.168.2.1 to me dst-port 22
00200 8079 5227032 allow ip from me to 192.168.2.1 src-port 22
65200    0       0 pipe 65200 ip from any to 192.168.2.254
65300    0       0 pipe 65300 ip from 192.168.2.254 to any

неужели не заметно что пакеты ВООБЩЕ НЕ ПОПАЛИ В ПРАВИЛО???
сдается мне фаревол таки не полный показывается


"freebsd 7.0"
Отправлено bsdn00b , 16-Янв-09 19:49 
>[оверквотинг удален]
>00100 7604  509736 allow ip from 192.168.2.1 to me dst-port 22
>
>00200 8079 5227032 allow ip from me to 192.168.2.1 src-port 22
>65200    0       0
>pipe 65200 ip from any to 192.168.2.254
>65300    0       0
>pipe 65300 ip from 192.168.2.254 to any
>
>неужели не заметно что пакеты ВООБЩЕ НЕ ПОПАЛИ В ПРАВИЛО???
>сдается мне фаревол таки не полный показывается

да все там попадает в правило, даже по 2 раза ...
просто скопировал ничего не делая ещё ...


на самом деле в логах имеем вид по этмоу правилу:

Jan 15 17:35:04 mysrv kernel: ipfw: 65200 Pipe 65300 ICMP:8.0 192.168.2.254 192.168.2.1 in via le0
Jan 15 17:35:04 mysrv kernel: ipfw: 65200 Pipe 65300 ICMP:8.0 192.168.2.254 192.168.2.1 out via le0
Jan 15 17:35:04 mysrv kernel: ipfw: 65300 Pipe 65200 ICMP:5.1 192.168.2.3 192.168.2.254 out via le0
Jan 15 17:35:04 mysrv kernel: ipfw: 65300 Pipe 65200 ICMP:0.0 192.168.2.1 192.168.2.254 in via le0
Jan 15 17:35:04 mysrv kernel: ipfw: 65300 Pipe 65200 ICMP:0.0 192.168.2.1 192.168.2.254 out via le0


"freebsd 7.0"
Отправлено bsdn00b , 16-Янв-09 19:58 
>[оверквотинг удален]
>>да, это то что выдает ipfw show & ipfw pipe show
>
>add 65200 pipe 65200 ip from any to 192.168.2.254 in
>add 65210 allow ip from any to 192.168.2.254 out
>add 65300 pipe 65300 ip from 192.168.2.254 to any in
>add 65310 allow from 192.168.2.254 to any out
>
>Это ДОЛЖНО работать, проблема скорее всего не в правилах..
>Еще помоему пакеты не проходят пока не был выполнен pipe config первый
>раз.

работает с IN & OUT, но все равно режит неправильно.

и почему оба IN идут по пайпу а оба OUT по аллоу ?


"freebsd 7.0"
Отправлено Shane , 16-Янв-09 20:04 
>
>работает с IN & OUT, но все равно режит неправильно.

Какие отклонения от заданной скорости?
DEVICE_POLLING ?
HZ=?
ipfw pipe show ?
sysctl net.inet.ip.fw.one_pass ?


"freebsd 7.0"
Отправлено bsdn00b , 16-Янв-09 20:16 
>>
>>работает с IN & OUT, но все равно режит неправильно.
>
>Какие отклонения от заданной скорости?
>DEVICE_POLLING ?
>HZ=?
>ipfw pipe show ?
>sysctl net.inet.ip.fw.one_pass ?

1.
mysrv# ipfw show
00100 6532  352984 allow ip from 192.168.2.1 to me dst-port 22
00200 9816 5037483 allow ip from me to 192.168.2.1 src-port 22
65200 1932  264476 allow ip from 192.168.2.254 to any out
65300    0       0 allow ip from any to 192.168.2.254 out
65400 1937  264949 pipe 65200 ip from 192.168.2.254 to any in
65500    0       0 pipe 65300 ip from any to 192.168.2.254 in
65535  267   23677 deny ip from any to any
mysrv# ipfw pipe show
65200:  64.000 Kbit/s    0 ms   50 sl. 1 queues (1 buckets) droptail
65300:  64.000 Kbit/s    0 ms   50 sl. 0 queues (1 buckets) droptail

стредняя скорость закачки: 64Кбайта(скорость прыгает) - это не точно, ну точного числа нету ... чтобы было в 2 раза больше положенной или меньше, все время прыгает - но не фулл, то есть порезка присутсвует точно.

2. Нет.
3. Нет.
4.
mysrv# sysctl net.inet.ip.fw.one_pass
net.inet.ip.fw.one_pass: 1


"freebsd 7.0"
Отправлено Shane , 16-Янв-09 20:43 
>[оверквотинг удален]
>стредняя скорость закачки: 64Кбайта(скорость прыгает) - это не точно, ну точного числа
>нету ... чтобы было в 2 раза больше положенной или меньше,
>все время прыгает - но не фулл, то есть порезка присутсвует
>точно.
>
>2. Нет.
>3. Нет.
>4.
>mysrv# sysctl net.inet.ip.fw.one_pass
>net.inet.ip.fw.one_pass: 1

1. Что за канал? Ширина? Физическая среда? Возможно скорость прыгает на внешнем канале или есть потеря пакетов.
2. Обязательно пересобери ядро с DEVICE_POLLING и включи его на сетевой карте.
3. Попробуй поставить HZ>1000 kern.hz="2000" в /boot/loader.conf
4. Попробуй уменьшить размер queue на пайпе. Для такой скорости 10 или меньше..


"freebsd 7.0"
Отправлено bsdn00b , 17-Янв-09 02:42 
>[оверквотинг удален]
>>mysrv# sysctl net.inet.ip.fw.one_pass
>>net.inet.ip.fw.one_pass: 1
>
>1. Что за канал? Ширина? Физическая среда? Возможно скорость прыгает на внешнем
>канале или есть потеря пакетов.
>2. Обязательно пересобери ядро с DEVICE_POLLING и включи его на сетевой карте.
>
>3. Попробуй поставить HZ>1000 kern.hz="2000" в /boot/loader.conf
>4. Попробуй уменьшить размер queue на пайпе. Для такой скорости 10 или
>меньше..

1. 10мбит, адсл2+, на внешнем канале скорость не прыгает (по крайней мере в таким приделах точно), без фаервола поднимается до ~1мбайта/сек, с ним же прыгает от 15кбайт/сек до 120кбайт/сек (при 64000)
2. Собираю, глянем какой даст результат ...

И ещё, судя по ipfw show почему-то работает только одно правило, например:
ipfw add 64200 allow log all from 192.168.2.254 to any
то есть для входа и выхода, или:
ipfw add 65200 pipe 65200 log all from 192.168.2.254 to any

по второму пакеты не ходят вообще:
ipfw add 64300 allow log all from any to 192.168.2.254
ipfw add 65300 pipe 65300 log all from any to 192.168.2.254


Jan 16 21:36:14 mysrv kernel: ipfw: 65200 Pipe 65200 ICMP:8.0 192.168.2.254 213.130.26.7 in via le0
Jan 16 21:36:14 mysrv kernel: ipfw: 65200 Pipe 65200 ICMP:8.0 192.168.2.254 213.130.26.7 out via le0


"freebsd 7.0"
Отправлено Pahanivo , 17-Янв-09 13:36 
>2. Обязательно пересобери ядро с DEVICE_POLLING и включи его на сетевой карте.

вы хоть в курсе что не все драйвера поддерживают пулинг? )