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

Исходное сообщение
"Хитрый NAT/Proxy"

Отправлено crazy8 , 18-Ноя-07 07:52 
Коллеги, есть такая интересная задачка.
Имеется некий сервер, подключенный к двум интернет-каналам. То есть - это просто веб сервер, никакой не маршрутизатор ни роутер - просто сервер с двумя сетевыми картами и двумя интернет каналами. Назовем его Сервер_ВЕБ. Пусть каналы будут от Провайдера1 и Провайдера2.
В сети Провайдера1 стоит еще один сервер к которому имеется доступ с любой части Интернета, в том числе из сети Провайдера2. Назовем его Сервер_Приложений. В сети Провайдера2 есть клиент, который пользуется этим самым Сервером_Приложений.
Так вот задача состоит в том, чтобы доступ Клиента к Серверу_Приложений организовать через Сервер_Веб. Зачем? Потому что внутри провайдерских сетей трафик локальный, то есть почти бесплатный.
Вариант который первым пришел на ум - поднять на Сервере_Веб mpd и организоваь VPN с Клиентом и Сервером_Приложений. В принципе - вариант рабочий, но немного заморочистый ввиду того что Клиент и Сервер_Приложений - виндовые машины.
Поэтому в голову пришла идея - а нельзя ли на Сервере_Веб развернуть NAT и форвардить пакеты на Сервер_Приложений. Все бы хорошо, да только адрес источника при этом действии остается оригинальным, поэтому к Серверу_Приложений приходит пакет с адресом источника Клиента. Ответ уходит по роутингу Клиенту и ессно убивается, потому что изначальный запрос был на Сервер_Веб.
По названию, думаю, понятно, что Сервер_Приложений - это виндовый терминальный сервер.
У кого есть какие соображения на этот счет? Можно ли такую штуку как-нибудь организовать не прибегая к помощи VPN ?


Содержание

Сообщения в этом обсуждении
"Хитрый NAT/Proxy"
Отправлено Oyyo , 18-Ноя-07 10:19 
>[оверквотинг удален]
>но немного заморочистый ввиду того что Клиент и Сервер_Приложений - виндовые
>машины.
>Поэтому в голову пришла идея - а нельзя ли на Сервере_Веб развернуть
>NAT и форвардить пакеты на Сервер_Приложений. Все бы хорошо, да только
>адрес источника при этом действии остается оригинальным, поэтому к Серверу_Приложений приходит
>пакет с адресом источника Клиента. Ответ уходит по роутингу Клиенту и
>ессно убивается, потому что изначальный запрос был на Сервер_Веб.
>По названию, думаю, понятно, что Сервер_Приложений - это виндовый терминальный сервер.
>У кого есть какие соображения на этот счет? Можно ли такую штуку
>как-нибудь организовать не прибегая к помощи VPN ?

ни каких сложностей :), на Клиенте вносится в таблицу маршрутизации маршрут к Серверу_Приложений через интерфейс локальной сети, при этом все остальные запросы будут ходить по дефолтному маршруту
если ИП адреса Сервера_Приложений и Сервера_Веб находятся в разных адресных пространствах (для Кдиента), то на Сервере_Веб необходимо пророутить Клиента к Серверу_Приложений


"Хитрый NAT/Proxy"
Отправлено reader , 18-Ноя-07 20:55 
>[оверквотинг удален]
>>ессно убивается, потому что изначальный запрос был на Сервер_Веб.
>>По названию, думаю, понятно, что Сервер_Приложений - это виндовый терминальный сервер.
>>У кого есть какие соображения на этот счет? Можно ли такую штуку
>>как-нибудь организовать не прибегая к помощи VPN ?
>
>ни каких сложностей :), на Клиенте вносится в таблицу маршрутизации маршрут к
>Серверу_Приложений через интерфейс локальной сети, при этом все остальные запросы будут
>ходить по дефолтному маршруту
>если ИП адреса Сервера_Приложений и Сервера_Веб находятся в разных адресных пространствах (для
>Кдиента), то на Сервере_Веб необходимо пророутить Клиента к Серверу_Приложений

А чтобы ответ возвращался по тому же пути , на Сервер_Веб сделать SNAT


"Хитрый NAT/Proxy"
Отправлено crazy8 , 20-Ноя-07 15:25 
>А чтобы ответ возвращался по тому же пути , на Сервер_Веб сделать
>SNAT

можно подробнее про snat? что это и где найти во FreeBSD - сервер_веб на ней.


"Хитрый NAT/Proxy"
Отправлено reader , 20-Ноя-07 23:10 
>>А чтобы ответ возвращался по тому же пути , на Сервер_Веб сделать
>>SNAT
>
>можно подробнее про snat? что это и где найти во FreeBSD -
>сервер_веб на ней.

на FreeBSD просто NAT, если Firewall- pf , то примерно так

nat pass on $интерфейс_на_Провайдера1 inet from $ip_Клиент to $ip_Сервер_Приложений -> $ip_интерфейс_на_Провайдера1


"Хитрый NAT/Proxy"
Отправлено crazy8 , 20-Ноя-07 15:24 
>ни каких сложностей :), на Клиенте вносится в таблицу маршрутизации маршрут к
>Серверу_Приложений через интерфейс локальной сети, при этом все остальные запросы будут
>ходить по дефолтному маршруту
>если ИП адреса Сервера_Приложений и Сервера_Веб находятся в разных адресных пространствах (для
>Кдиента), то на Сервере_Веб необходимо пророутить Клиента к Серверу_Приложений

Не, я видимо не так объяснил - у Клиента один интерфейс всего. Через него он ходит в Интернет. Причем еще и через нат. То есть если я укажу в маршруте шлюзом Сервер_Веб, то пакет до него не сможет дойти.
Ну и со стороны Сервера_Приложений тоже не дойдет - ибо они не в одной подсети.