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

Исходное сообщение
"работа nat в pf"

Отправлено gadzilkin , 22-Дек-10 09:07 
Начал разбираться в PF по мануалу на сайте openBsd.org. Насколько я понял, в случае если пакет должен натится, то PF сначала преобразует адресс, а потом уже передает его фильтру. А как же тогда фильтровать пакеты прищедшие из локалки на основе политик разграничения по ip, ведь, насколько я понял, фильтр увидит пакет с уже измененным айпишником, т.е. айпишником шлюза......а как мне тогда сначала решить можно ли этот пакет вообще пропускать,а потом уже натить? Или же пакет сначала проходит правила фильтра входящих пакетов, потом натится, а потом уже передается на фильтр исходящих пакетов?

Содержание

Сообщения в этом обсуждении
"работа nat в pf"
Отправлено reader , 22-Дек-10 10:06 
> Начал разбираться в PF по мануалу на сайте openBsd.org. Насколько я понял,
> в случае если пакет должен натится, то PF сначала преобразует адресс,
> а потом уже передает его фильтру. А как же тогда фильтровать
> пакеты прищедшие из локалки на основе политик разграничения по ip, ведь,
> насколько я понял, фильтр увидит пакет с уже измененным айпишником, т.е.
> айпишником шлюза......а как мне тогда сначала решить можно ли этот пакет
> вообще пропускать,а потом уже натить? Или же пакет сначала проходит правила
> фильтра входящих пакетов, потом натится, а потом уже передается на фильтр
> исходящих пакетов?

на внутреннем (входящем) интерфейсе будут оригинальные ip


"работа nat в pf"
Отправлено gadzilkin , 22-Дек-10 10:13 

> на внутреннем (входящем) интерфейсе будут оригинальные ip

т.е получается такая схема пакет ---> внутренний интерфейс (проверяются правила фильтрации для этого интерфейса) ---> NAT ---> внешний интерфейс (проверяются правила фильтрации для этого интерфейса)

правильно я понимаю?


"работа nat в pf"
Отправлено reader , 22-Дек-10 11:17 
>> на внутреннем (входящем) интерфейсе будут оригинальные ip
> т.е получается такая схема пакет ---> внутренний интерфейс (проверяются правила фильтрации
> для этого интерфейса) ---> NAT ---> внешний интерфейс (проверяются правила фильтрации
> для этого интерфейса)
> правильно я понимаю?

да.

внутренний интерфейс фильтр > внешний интерфейс nat > внешний интерфейс фильтр


"работа nat в pf"
Отправлено gadzilkin , 22-Дек-10 11:27 

> да.
> внутренний интерфейс фильтр > внешний интерфейс nat > внешний интерфейс фильтр

Большое спасибо!


"работа nat в pf"
Отправлено Margulis , 11-Июн-15 11:59 
> внутренний интерфейс фильтр > внешний интерфейс nat > внешний интерфейс фильтр

Поганая ситуация, кстати. Я не пойму, это баг или фича, но это противоречит ВСЕМ мануалам. Абсолютно везде написано, что правила трансляции срабатывают до правил фильтрации. Мало того, есть специальная указивка для правил трансляции (необязательная) - pass - в этом случае пакет в блок фильтрации вообще не должен попадать! Но и это не работает. Вернее, работает только в отношении фильтрации на исходящем плече.