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

Исходное сообщение
"Как работает оптимизатор pf на OpenBSD 4.6"

Отправлено Renat , 17-Сен-10 13:50 
Никак не могу разобраться как работает функция pfct -o в PF.
есть заведомо не оптимальные правила:
cat /root/rules                    
pass from 10.1.2.3
pass from 10.3.4.5
pass from 10.4.5.6
pass from 10.5.6.7

для начало делаем:
pfctl -nvf /root/rules
pass inet from 10.1.2.3 to any flags S/SA keep state
pass inet from 10.3.4.5 to any flags S/SA keep state
pass inet from 10.4.5.6 to any flags S/SA keep state
pass inet from 10.5.6.7 to any flags S/SA keep state

Далее пробуем оптимизировать:
pfctl -nvf /root/rules -o basic
pass inet from 10.1.2.3 to any flags S/SA keep state
pass inet from 10.3.4.5 to any flags S/SA keep state
pass inet from 10.4.5.6 to any flags S/SA keep state
pass inet from 10.5.6.7 to any flags S/SA keep state
Но не чего не проихошло. Как пользоваться этой функцией или я что то не допонимаю?


Содержание

Сообщения в этом обсуждении
"Как работает оптимизатор pf на OpenBSD 4.6"
Отправлено guest , 17-Сен-10 14:43 
>Никак не могу разобраться как работает функция pfct -o в PF.
>есть заведомо не оптимальные правила:
>cat /root/rules
>pass from 10.1.2.3
>pass from 10.3.4.5
>pass from 10.4.5.6
>pass from 10.5.6.7

Как раз наоборот, у Вас они изначально оптимальны.


"Как работает оптимизатор pf на OpenBSD 4.6"
Отправлено Renat , 17-Сен-10 14:53 
>Как раз наоборот, у Вас они изначально оптимальны.

Но так ведь было бы оптимальней:
table <_automatic_0> const { 10.1.2.3 10.3.4.5 10.4.5.6 10.8.9.1 }
pass inet from <_automatic_0> to any ?
или я уже точноне чего не понимаю?


"Как работает оптимизатор pf на OpenBSD 4.6"
Отправлено guest , 17-Сен-10 15:02 
>>Как раз наоборот, у Вас они изначально оптимальны.
>
>Но так ведь было бы оптимальней:

Есть некий порог (точное число не скажу) до которого отдельное правило оптимальней чем таблица.
Попробуйте добавить еще таких же тестовых правил и тогда из них сделают одно.


"Как работает оптимизатор pf на OpenBSD 4.6"
Отправлено Renat , 17-Сен-10 15:16 
>>>Как раз наоборот, у Вас они изначально оптимальны.
>>
>>Но так ведь было бы оптимальней:
>
>Есть некий порог (точное число не скажу) до которого отдельное правило оптимальней
>чем таблица.
>Попробуйте добавить еще таких же тестовых правил и тогда из них сделают
>одно.

А сам принцип я правильно понял pfctl -nvf /root/rules -o basic
это именно так? Или я гдето в написании команды ошибся?


"Как работает оптимизатор pf на OpenBSD 4.6"
Отправлено Renat , 17-Сен-10 15:25 
>[оверквотинг удален]
>>>
>>>Но так ведь было бы оптимальней:
>>
>>Есть некий порог (точное число не скажу) до которого отдельное правило оптимальней
>>чем таблица.
>>Попробуйте добавить еще таких же тестовых правил и тогда из них сделают
>>одно.
>
>А сам принцип я правильно понял pfctl -nvf /root/rules -o basic
>это именно так? Или я гдето в написании команды ошибся?

Ок спасибо большое после добавления 6-й строй строчки все получилось.
pfctl -nvf /root/rules
table <__automatic_0> const { 10.1.2.3 10.3.4.5 10.4.5.6 10.5.6.7 10.1.2.5 10.3.4.6 }
pass inet from <__automatic_0> to any flags S/SA keep state
Правда он я так понял автоматом оптимизирует так как я не добовлял ключ -о