Люди, объясните, плз., как такое может быть и что это такое?!Как недавно писал, есть:
FreeBSD 5.4; pf-filter;
fxp0-внешяя сеть (от прова)
rl0-внутренняя сетьФайл pf.conf:
lan_net = "192.168.0.0/24"
int_if = "rl0"
ext_if = "fxp0"
ext_ip = "192.168.11.11"
ext_gw = "192.168.11.101"scrub in all
nat on $ext_if from $lan_net to any -> ($ext_if)
block in from any to any
block out from any to anypass in quick on lo0 all
pass out quick on lo0 allblock in on $ext_if all
block out on $ext_if allblock in on $ext_if inet proto tcp from any to $ext_ip port 0 >< 65535
pass out on $ext_if inet proto tcp from $ext_ip to any flags S/SA modulate state
block in on $ext_if inet proto {udp, icmp} from any to $ext_ip
pass out on $ext_if inet proto {udp, icmp} from $ext_ip to anypass in quick on $int_if from $lan_net to any
pass out quick on $int_if from any to $lan_netВОПРОС:
Почему траффик проходит во внутрь через $ext_ip если стоит:
block in on $ext_if all
block in on $ext_if inet proto tcp from any to $ext_ip port 0 >< 65535
block in on $ext_if inet proto {udp, icmp} from any to $ext_ipТ.е. с этими "блоками" у меня грузятся сайты и пингуется весь инет из 192.168.0.254 (роздан ноутбуку по DHCP)??!!
Появилась идея, праверил на практике - дело в NAT:
nat on $ext_if from $lan_net to any -> ($ext_if)Тогда совсем маленький вопросик - "Как применить правила фильтрации до NAT, т.е. чтобы правила обрабатывали и NAT в том числе"???
Заранее признателен!
>Появилась идея, праверил на практике - дело в NAT:
>nat on $ext_if from $lan_net to any -> ($ext_if)
>
>Тогда совсем маленький вопросик - "Как применить правила фильтрации до NAT, т.е.
>чтобы правила обрабатывали и NAT в том числе"???
>
>Заранее признателен!Никак :)
Since translation occurs before filtering the filter engine will see
packets as they look after any addresses and ports have been translated.
Filter rules will therefore have to filter based on the translated
address and port number.
Ты натишь на внешьнем if и можешь все отрезать на внутреннем,
пока траф не дойдет до внешнего.
Стоп! Не все так просто. Предположения были ложными. Опять все пингуется и из FreeBSD. Т.е. файл pf.conf видаlan_net = "192.168.0.0/24"
int_if = "rl0"
ext_if = "fxp0"
ext_ip = "192.168.11.11"
ext_gw = "192.168.11.101"scrub in all
nat on $ext_if from $lan_net to any -> ($ext_if)
block in from any to any
block out from any to anypass in quick on lo0 all
pass out quick on lo0 allblock in on $ext_if all
block out on $ext_if allblock in on $ext_if inet proto tcp from any to $ext_ip port 0 >< 65535
pass out on $ext_if inet proto tcp from $ext_ip to any flags S/SA modulate state
block in on $ext_if inet proto {udp, icmp} from any to $ext_ip
pass out on $ext_if inet proto {udp, icmp} from $ext_ip to any keep statepass in quick on $int_if from $lan_net to any
pass out quick on $int_if from any to $lan_netпоходу пропускает пакеты внутрь! Как это может быть?