>[оверквотинг удален]
> Исходные данные:
> Inet -> 95.173.x.x GW(Nat) 10.1.1.1-> $Ext_if (bridge with pf) $int_if ->10.1.1.2 client
> На клиенте прописан default gateway 10.1.1.1
> Собственно само соединение через мост работает нормально, pf фильтрует трафик, все Ок.
> Для организации антивирусной проверки на bridge пытаюсь прикрутить Squid+AV (DrWeb)+rdr
> правила вида
> rdr on $int_if inet proto tcp from any to any port 80
> -> 127.0.0.1 port 3128
> pass in quick on $int_if route-to lo0 inet proto tcp from any
> to 127.0.0.1 port 3128 keep state А зачем последнее правило? В прозрачном перенаправлении трафика на сквид хватает первого.
rdr pass on $int_if inet proto tcp from any to any port 80
-> 127.0.0.1 port 3128
> Squid соответственно слушает 127.0.0.1:3128 intercept.
> (К слову если сделать на бридже адрес и явно прописать его на
> клиенте все опять же работает, AV фильтрует)
> Правило даже вроде как работает, т.к. pfctl -ss дает кучу записей типа
> all tcp 127.0.0.1:3128 <- 82.204.218.126:80 <- 10.1.1.2:35550
> CLOSED:SYN_SENT
> Не пойму в чем проблема. Читал, что где то еще нат нужен,
> но в данной конфигурации непонятно где. К тому же tcpdump на
> lo0 вообще пустой. По статусу соединения проблема где-то в роутинге, но
> вот где?
А tcpdump что говорит на интерфейсах
tcpdump -nqtttti _IF_NAME_