squid и iptables.

Есть роутер на Дженте 192.168.0.5, на нем работал squid в прозрачном режиме. Пакеты идущие с ip 192.168.0.40 нормально пробрасовались такой строчкой:

iptables -t nat -A PREROUTING -i ${LAN} -s 192.168.0.40 -p tcp --dport 80 -j REDIRECT --to-ports 3128

Решил вынести squid на виртуальную машину 192.168.0.70, настроил его там тоже в транспорент на 3128 порт, на роутере делаю:

iptables -t nat -A PREROUTING -i ${LAN} -s 192.168.0.40 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.70:3128

не работает. Сам squid работает, если я конкретно в браузере указываю прокси на 192.168.0.70:3128 все нормально. Что я делаю не так?

Может есть смысл просто на

Может есть смысл просто на 192.168.0.40 поменять шлюз по умолчанию, с 192.168.0.5 на 192.168.0.70 и там уже поворачивать трафик который идет на 80й порт в сквид, как вы и раньше делали?

Скажи мне - и я забуду, покажи мне - и я не смогу запомнить, привлеки меня к участию - и я пойму...

Спасибо, если не получится,

Спасибо, если не получится, то наверно так и придется делать, но хочется понять почему не получается и как реализовать по схеме как я хочу. Делал даже так:
На 192.168.0.5

iptables -t nat -A PREROUTING -i ${LAN} -s 192.168.0.40 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.70

На 192.168.0.70

iptables -t nat -A PREROUTING -i ${LAN} -p tcp --dport 80 -j REDIRECT --to-ports 3128

Всеравно не работает. Понять бы ы чем я ошибаюсь.

Мона мне спросить, а?

У Вас 192.168.0.40 делает запрос к шлюзу, который "днатит" на сквидовую тачку, а сквидовая машина
отдаёт запрос напрямую клиенту, минуя шлюз. А клиент-то кого слушает? На машине со сквидом SNAT на рутер работает?

На машине со squid'ом

На машине со squid'ом (192.168.0.70) нет правила с SNAT. Не понимаю какое должно быть правило, подскажите.

не понимаю, зачем тут нат.

не понимаю, зачем тут нат.

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

туго мыслю с утра....micbal

туго мыслю с утра....

micbal написал(а):
iptables -t nat -A PREROUTING -i ${LAN} -s 192.168.0.40 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.70:3128

а почему тут нат?

по логике вещей должен быть форвардинг или редирект....???

просто туго мыслю...

что-то добрый я сегодня ....

Насколько я понимаю, REDIRECT

Насколько я понимаю, REDIRECT подменяет в пакете адрес доставки на свой, также как DNAT на 192.168.0.70. Но REDIRECT не может подменить адрес назначения на 192.168.0.70.

-j TPROXY ?

-j TPROXY ?
http://www.mjmwired.net/kernel/Documentation/networking/tproxy.txt

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".