Добрый день!Есть squid, на который с помощью iptables заворачиваются запросы по 80-у порту, только если
они не идут в сеть 10.0.0.0/8:
iptables -t nat -A PREROUTING -d !10.0.0.0/8 -p tcp --dport 80 -j REDIRECT --to-ports 3128Теперь понадобилось, чтобы они также НЕ заворачивались и в случае если идут в сеть 192.168.0.0.
Т.е. нужно что-то вроде такой записи: iptables -t nat -d !(10.0.0.0/8 and 192.168.0.0/16) -j REDIRECT ...Как это можно сделать??
создай новую цепочку
заворачивай в неё то, что нужно
а в этой цепочке отправляй всё что нужно на squid
да блин понаписал ----iptables -N nonredir
iptables -A PREROUTING -d 10.0.0.0/8 -p tcp --dport 80 -j nonlocal
iptables -A PREROUTING -d 192.168.0.0/24 -p tcp --dport 80 -j nonlocal
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128iptables -A nonlocal -j ACCEPT(или как там дальше фильтровать пакеты)
>да блин понаписал ----
неее -- вот ведь чудак --- надо спать,надо спать,надо спать,надо спать....
Благодарю!Без опечаток решение выглядит так:
iptables -t nat -N nonredir
iptables -t nat -A PREROUTING -d 10.0.0.0/8 -p tcp --dport 80 -j nonredir
iptables -t nat -A PREROUTING -d 192.168.0.0/24 -p tcp --dport 80 -j nonredir
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128iptables -A nonredir -j ACCEPT
>Благодарю!
>
>Без опечаток решение выглядит так:
>
>iptables -t nat -N nonredir
>
>iptables -t nat -A PREROUTING -d 10.0.0.0/8 -p tcp --dport 80 -j
>nonredir
>iptables -t nat -A PREROUTING -d 192.168.0.0/24 -p tcp --dport 80 -j
>nonredir
>iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports
>3128
>
>iptables -A nonredir -j ACCEPTНесколько улыбнуло - почему же сразу не сделать:
iptables -t nat -A PREROUTING -d 10.0.0.0/8 -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -d 192.168.0.0/24 -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128и не создавать лишние цепочки "ни о чем"?