URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 30549
[ Назад ]

Исходное сообщение
"iptables и 2 squid"

Отправлено PJ , 02-Июн-03 18:36 
Дано: роутер на RH7.3, выполняющий маршрутизацию между 3-мя сетями - 192.168.1.0, 192.168.2.0, 192.168.3.0. В подсетях 1.0 и 2.0 есть по squid-у, "смотрящих" на разных провайдеров.
Что хотелось бы: клиентам в настройках прокси прописать адрес этого роутера (на котором squid'a нет) и в зависимости от адреса источника направлять запрос на тот или иной squid в сетях 1 и 2. Думаю что реализовать это можно с помощью конструкции типа

iptables -t nat -A PREROUTING --src 192.168.3.1 --dst 192.168.3.250 --dport 3128 -j DNAT --to-destination 192.168.1.254:3128

iptables -t nat -A PREROUTING --src 192.168.3.2 --dst 192.168.3.250 --dport 3128 -j DNAT --to-destination 192.168.2.254:3128


А вот как вернуть ответ "другого" squid клиенту? По документации, обратная детрансляция делается автоматически. Или я что-то упустил?


Содержание

Сообщения в этом обсуждении
"iptables и 2 squid"
Отправлено Sol , 04-Июн-03 06:51 
>Дано: роутер на RH7.3, выполняющий маршрутизацию между 3-мя сетями - 192.168.1.0, 192.168.2.0,
>192.168.3.0. В подсетях 1.0 и 2.0 есть по squid-у, "смотрящих" на
>разных провайдеров.
>Что хотелось бы: клиентам в настройках прокси прописать адрес этого роутера (на
>котором squid'a нет) и в зависимости от адреса источника направлять запрос
>на тот или иной squid в сетях 1 и 2. Думаю
>что реализовать это можно с помощью конструкции типа
>
>iptables -t nat -A PREROUTING --src 192.168.3.1 --dst 192.168.3.250 --dport 3128 -j
>DNAT --to-destination 192.168.1.254:3128
>
>iptables -t nat -A PREROUTING --src 192.168.3.2 --dst 192.168.3.250 --dport 3128 -j
>DNAT --to-destination 192.168.2.254:3128
>
>
>А вот как вернуть ответ "другого" squid клиенту? По документации, обратная детрансляция
>делается автоматически. Или я что-то упустил?


Ну как минимум надо разрешить прохождение пакетов:
iptables -A FORWARD -d 192.168.1.254 -p tcp -m tcp --dport 3128 -j ACCEPT
iptables -A FORWARD -d 192.168.2.254 -p tcp -m tcp --dport 3128 -j ACCEPT