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

Исходное сообщение
"Аналог ipfw fwd"

Отправлено roman_d , 26-Июл-13 06:42 
Здравствуйте!

Хочу организовать прозрачный прокси для мобильных устройств. Пересобирать ядро нецелесообразно: во-первых, мобильных устройств всего несколько; во-вторых, компьютер-шлюз находится в таком запущенном состоянии, что лишний раз его трогать просто страшно.

Мысль в том, чтобы реализовать прозрачный прокси без пересборки ядра и, следовательно, без ipfw fwd.

Я изучил вопрос как мог, получается, что ipfw divert для такой задачи не подойдёт, а использовать в таких случаях предлагается либо rinetd, либо pf, в котором rdr будет работать без пересборки.

Вот вопрос: подскажите, пожалуйста, какой из этих вариантов предпочтительнее? Или, может, порекомендуйте что-нибудь ещё.


Содержание

Сообщения в этом обсуждении
"Аналог ipfw fwd"
Отправлено михалыч , 26-Июл-13 07:24 
>[оверквотинг удален]
> Хочу организовать прозрачный прокси для мобильных устройств. Пересобирать ядро нецелесообразно:
> во-первых, мобильных устройств всего несколько; во-вторых, компьютер-шлюз находится
> в таком запущенном состоянии, что лишний раз его трогать просто страшно.
> Мысль в том, чтобы реализовать прозрачный прокси без пересборки ядра и, следовательно,
> без ipfw fwd.
> Я изучил вопрос как мог, получается, что ipfw divert для такой задачи
> не подойдёт, а использовать в таких случаях предлагается либо rinetd, либо
> pf, в котором rdr будет работать без пересборки.
> Вот вопрос: подскажите, пожалуйста, какой из этих вариантов предпочтительнее? Или, может,
> порекомендуйте что-нибудь ещё.

Штатного pf хватит и rinetd устанавливать дополнительно не нужно.


"Аналог ipfw fwd"
Отправлено roman_d , 26-Июл-13 08:12 
> Штатного pf хватит

Извиняюсь, но я сначала не совсем внятно изложил ситуацию. Смысл в том, что полностью от ipfw я отказаться не могу, и pf если и будет работать, то параллельно, только ради форвардинга. Стоит ли только ради этого подымать второй файрвол? Я читал, что это возможно, но не уверен, что это хорошо будет работать в моих руках. Не лучше ли в таком случае поставить rinetd?


"Аналог ipfw fwd"
Отправлено михалыч , 26-Июл-13 08:39 
>> Штатного pf хватит
> Извиняюсь, но я сначала не совсем внятно изложил ситуацию. Смысл в том,
> что полностью от ipfw я отказаться не могу, и pf если
> и будет работать, то параллельно, только ради форвардинга. Стоит ли только
> ради этого подымать второй файрвол? Я читал, что это возможно, но
> не уверен, что это хорошо будет работать в моих руках. Не
> лучше ли в таком случае поставить rinetd?

Я бы попробовал и так и сяк. ))
Лучше один раз увидеть, чем сто раз услышать.
Лучше один раз сделать самому, чем сто раз увидеть как делают другие.
Свой опыт безо всякого сомнения гораздо ценней и важней.


"Аналог ipfw fwd"
Отправлено Сергей , 26-Июл-13 10:06 
>[оверквотинг удален]
>> Извиняюсь, но я сначала не совсем внятно изложил ситуацию. Смысл в том,
>> что полностью от ipfw я отказаться не могу, и pf если
>> и будет работать, то параллельно, только ради форвардинга. Стоит ли только
>> ради этого подымать второй файрвол? Я читал, что это возможно, но
>> не уверен, что это хорошо будет работать в моих руках. Не
>> лучше ли в таком случае поставить rinetd?
> Я бы попробовал и так и сяк. ))
> Лучше один раз увидеть, чем сто раз услышать.
> Лучше один раз сделать самому, чем сто раз увидеть как делают другие.
> Свой опыт безо всякого сомнения гораздо ценней и важней.

  Можно подредактировать исходники и пересобрать только модуль ipfw


"Аналог ipfw fwd"
Отправлено roman_d , 26-Июл-13 10:31 
>   Можно подредактировать исходники и пересобрать только модуль ipfw

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



"Аналог ipfw fwd"
Отправлено roman_d , 26-Июл-13 10:07 
> Я бы попробовал и так и сяк. ))
> Лучше один раз увидеть, чем сто раз услышать.
> Лучше один раз сделать самому, чем сто раз увидеть как делают другие.
> Свой опыт безо всякого сомнения гораздо ценней и важней.

Я бы тоже попробовал, если бы понимал в этом побольше.
Это целый анализ получится, можно статью писать по его окончании.
Мне же было бы достаточно типового, наименее проблематичного способа.

Тут просто по условию задачи подходит целый ряд решений (проксирование, перенаправление, трансляция) и все с виду похожи. Я и хотел уточнить, какое из решений будет более адекватным для условий моей задачи.


"Аналог ipfw fwd"
Отправлено михалыч , 26-Июл-13 12:14 
> Тут просто по условию задачи подходит целый ряд решений (проксирование, перенаправление,
> трансляция) и все с виду похожи. Я и хотел уточнить, какое
> из решений будет более адекватным для условий моей задачи.

Из условий не ясно что и куда проксировать и перенаправлять.
Из локалнет в инет, наоборот или из локал в локал.

Если нет возможности пересобрать ядро, то использовать pf из коробки.
Переписать правила из ipfw в синтаксис pf и добавить правила для перенаправления.
Что-то типа
rdr on $int_if inet proto tcp from x.x.x.x to !$int_if port http -> y.y.y.y port 80


"Аналог ipfw fwd"
Отправлено roman_d , 26-Июл-13 13:13 
> Переписать правила из ipfw в синтаксис pf и добавить правила для перенаправления.

то есть вариант с rinetd вам не нравится?

и я не могу отказаться ipfw - машина не моя - вариант только подключить pf параллельно с ipfw.

> Из условий не ясно что и куда проксировать и перенаправлять.

Прозрачный прокси для нескольких мобильных клиентов локальной сети. То есть http запросы определенного диапазона адресов локалки перенаправлять на squid, работающий в режиме intercept.