RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Прозрачный прокси-сервер


Список сообщений | Написать новое | Ответить на сообщение | Домой Поиск:
Предыдущее сообщение | Следующее сообщение
From : Oleg Bulavsky
To : sedfom
Subj : Прозрачный прокси-сервер

> Те же грабли вид сбоку :)
>
> Есть сеть состоящая из 4-х сегментов (192.168.11.0/24 ; 192.168.12.0/24 ; 192.168.13.0/24 ; 192.168.14.0/24) У каждого компьютера в сегменте прописан шлюз по умолчанию 192.168.11.1 ; 192.168.12.1 ; 192.168.13.1 ; 192.168.14.1 соответственно сегменту. Эти IP адреса установлены сетевым картам на компьютере (ОС - FreeBSD 5.3), также на этом компьютере имеется 5-ая сетевая карта с IP=192.168.152.2, шлюзом по умолчанию в FreeBSD установлен адрес 192.168.152.1. FreeBSD настрона как маршрутизатор и только. Есть компьютер с OS/2 (eComStation 1.2) IP внешний = 192.168.170.40, IP внутренний = 192.168.152.1. На OS/2 установлен NAT (SFF 1.2), DNS сервер, Squid, настроена маршрутазация для сегментов 192.168.11.0/24 ; 192.168.12.0/24 ; 192.168.13.0/24 ; 192.168.14.0/24.
>
> Возникшая проблема:
>
> Завернуть пользовательские HTTP запросы из сегментов 192.168.11.0/24 ; 192.168.12.0/24 ; 192.168.13.0/24 ; 192.168.14.0/24 на squid.
>
> To Oleg Bulavsky
>
> Во FreeBSD команда файрвола:
> ipfw fwd 192.168.152.1,3128 from any to any 80 работает не корректно, а именно FreeBSD в этот правиле игнорирует порт 3128, Работает только правило ipfw fwd 127.0.0.1,3128 from any to any 80 , но тогда squid нужно ставить на FreeBSD, а не на OS/2, такой вариант меня не устраивает. Также я пробовал разобраться с портами portfwd и rinetd для FreeBSD. Увы перенаправить запросы на порт 3128 OS/2 не получилось.
>
> google не помог
>
> Вариант замены OS/2 на FreeBSD не устраивает.
>
> Вопрос актуален.

Там, где не помогает Google, обычно помогает чтение документации, желательно до просвещения! ;)
Действительно, man ipfw про правило fwd говорит, что:

> If ipaddr is a local address, then matching packets will be forwarded to port (or the port number in the packet if one is not specified in the rule) on the local machine. If ipaddr is not a local address, then the port number (if specified) is ignored

Значит твоё изначальное правило и не должно работать.
Тогда сделай ДВА правила!
fwd 127.0.0.1,3128 from any to any 80
fwd 192.168.152.1 from any to not 192.168.152.1 3128
Так, например. Если не сработает (я явно где-то накосячил, потому как опты работы с ipfw нету), то простор для творчества - неохватный.

Или, например, если на ОСёвой машине нету Веб-сервера, то:
fwd 192.168.152.1 from any to any 80
а на ОСи поставить mlink от Евгения Романенко и в нём
link http 0.0.0.0:80 127.0.0.1:3128

Короче, путей решения задачи несколько, и часть из них - правильные. :)


Thu 24 Nov 2005 08:47 Mozilla/5.0 (X11; U; Linux i686; ru-RU; rv:1.7.12) Gecko/200




Programmed by Dmitri Maximovich, Dmitry I. Platonoff, Eugen Kuleshov.
25.09.99 (c) 1999, RU/2. All rights reserved.
Rewritten by Dmitry Ban. All rights ignored.