LINUX.ORG.RU
ФорумAdmin

2 proxy in one net


0

0

такая задачка .
есть прокси для сети 172.16.0.0/16 его ip 172.16.0.6
сейчас собрал другой прокси его ip 172.16.0.5 ,

у всех юзверей ~600 указан 172.16.0.6:3128
надо сделать такую вешь , не отключая первый прокси как нибудь редиректить пакеты приходяшие на 172.16.0.6:3128 на 172.16.0.5:3128

первое что я попробовал это было
iptables -t nat -A PREROUTING -s 172.16.0.94 -d 172.16.0.6 -p tcp --dport 3128 -j DNAT --to-destination 172.16.0.5:3128

172.16.0.94 - это тестовый комп .

в этом случае насколько я понимаю пакет днатится на 172.16.0.5 , но так как клиент и второй прокси находятся в одной сети пакеты приходят к клиенту с ip 172.16.0.5 а ожидается что будет 172.16.0.6 , и из-за этогло ничего не работает .

второе что я попробовал это был ssh port forward
на 172.16.0.6 запускал
#ssh -L 2102:172.16.2.14:3128 user@172.16.0.5
ожидалось что telnet c 172.16.0.94 на 172.16.0.6 3128 будет попадать на 172.16.0.5:3128 , но проблема оказалась в том , что ssh баиндит порт 2102 только на 127.0.0.1 и соответственно с 172.16.0.94 я до него достучатся не могу .


какие еще будут мысли ? как можно осушествить эту идею ?

сейчас ковыряю socat

★★

должно получиться что-то вроде

iptables -t nat -A PREROUTING -s 172.16.0.94 -d 172.16.0.6 -p tcp --dport 3128 -j DNAT --to-destination 172.16.0.5:3128
iptables -t nat -A POSTROUTING -s 172.16.0.94 -d 172.16.0.5 -p tcp --dport 3128 -j SNAT --to-source 172.16.0.5

тогда пакеты на 172.16.0.5 будут приходить с апишником второго прокси и ответы соответственно тоже будут слаться на 2-й прокси, а он уже будет их слать клиенту.

а вообще неплохо бы поднять в сети днс.

anti_social
()
Ответ на: комментарий от sa22

ладно , вышло без iptables-ов
/usr/local/s/bin/socat TCP-LISTEN:2102,reuseaddr,fork,su=nobody TCP:172.16.0.5:3128

все что приходит на 2102 уходит на 172.16.0.5:3128
вообще я потерялся в мануaле socat-а , похоже им можно делать все :)

но , даже этот вариант мне не подходит , так как настроено разграничение по ip - delay pool-ы , а тут получается что на второй прокси приходит все от ip первого ( этакий NAT :) ) и все разграничения идут лесом ...

кароче я в принципе удовлетворен .


j262 ★★
() автор топика
Ответ на: комментарий от j262

А если на втором сервачке(172.16.0.5) добавить:

iptables -t nat -A POSTROUTING -p tcp --sport 3128 -j SNAT --to-source 172.16.0.6

SlavikSS ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.