Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: laskov в Jul 24, 2008, 16:42



Титла: Transparent squid
Публикувано от: laskov в Jul 24, 2008, 16:42
Преди squid работеше на машината, която е и gateway и с
Цитат
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
си работеше чудесно. Преместих squid на друга машина (192.168.1.5) и пренасочването вероятно трябва да е нещо от рода на
Цитат
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -s ! 192.168.1.5 -j DNAT --to 192.168.1.5:3128
, но така не работи - squid не регистрира никакви заявки. Моля за помощ!


Титла: Transparent squid
Публикувано от: alex_c в Jul 24, 2008, 18:57
От правилата за iptables, които си дал, предполагам, че proxy-сървърът (192.168.1.5) и клиентските машини, които обслужваш, са в един и същи сегмент.
В този случай, след като във веригата PREROUTING се извърши смяната на destination-адреса и за пакета трябва да се вземе решение за маршрутизиране, машината-gateway вижда, че source и destination адресите са от една и съща мрежа и изпраща на компютъра, иницииращ връзка, пакет за пренасочване. С него тя казва: "Ти и машината-адресат сте от една и съща мрежа, така че най-краткият път до нея не е през мен - обърни се директно към нея". Компютърът, иницииращ връзка, обаче, си няма на идея за какво става въпрос, т.к. той прави заявка към dir.bg, например, а не към 192.168.1.5 и така историята се забозва  :p
Можеш да пробваш да изключиш изпращането на пакети за пренасочване в рутера с командата:
echo 0 >/proc/sys/net/ipv4/conf/eth1/send_redirects
и да добавиш още един ред в iptables:
iptables -t nat -A POSTROUTING -o eth1 -p tcp -s 192.168.1.0/24 -d 192.168.1.5 --dport 3128 -j SNAT --to 192.168.1.1 (предполагам, това е адресът на вътрешния интерфейс на рутера ти)
но може би няма да помогне
Най-добре е да отделиш squid-машината в друг сегмент, но това не винаги е възможно
Пробвай тези варианти и пиши дали е проработило


Титла: Transparent squid
Публикувано от: VladSun в Jul 24, 2008, 19:23
http://www.faqs.org/docs/Linux-mini/TransparentProxy.html#s6