Коллеги, есть такая интересная задачка.
Имеется некий сервер, подключенный к двум интернет-каналам. То есть - это просто веб сервер, никакой не маршрутизатор ни роутер - просто сервер с двумя сетевыми картами и двумя интернет каналами. Назовем его Сервер_ВЕБ. Пусть каналы будут от Провайдера1 и Провайдера2.
В сети Провайдера1 стоит еще один сервер к которому имеется доступ с любой части Интернета, в том числе из сети Провайдера2. Назовем его Сервер_Приложений. В сети Провайдера2 есть клиент, который пользуется этим самым Сервером_Приложений.
Так вот задача состоит в том, чтобы доступ Клиента к Серверу_Приложений организовать через Сервер_Веб. Зачем? Потому что внутри провайдерских сетей трафик локальный, то есть почти бесплатный.
Вариант который первым пришел на ум - поднять на Сервере_Веб mpd и организоваь VPN с Клиентом и Сервером_Приложений. В принципе - вариант рабочий, но немного заморочистый ввиду того что Клиент и Сервер_Приложений - виндовые машины.
Поэтому в голову пришла идея - а нельзя ли на Сервере_Веб развернуть NAT и форвардить пакеты на Сервер_Приложений. Все бы хорошо, да только адрес источника при этом действии остается оригинальным, поэтому к Серверу_Приложений приходит пакет с адресом источника Клиента. Ответ уходит по роутингу Клиенту и ессно убивается, потому что изначальный запрос был на Сервер_Веб.
По названию, думаю, понятно, что Сервер_Приложений - это виндовый терминальный сервер.
У кого есть какие соображения на этот счет? Можно ли такую штуку как-нибудь организовать не прибегая к помощи VPN ?
>[оверквотинг удален]
>но немного заморочистый ввиду того что Клиент и Сервер_Приложений - виндовые
>машины.
>Поэтому в голову пришла идея - а нельзя ли на Сервере_Веб развернуть
>NAT и форвардить пакеты на Сервер_Приложений. Все бы хорошо, да только
>адрес источника при этом действии остается оригинальным, поэтому к Серверу_Приложений приходит
>пакет с адресом источника Клиента. Ответ уходит по роутингу Клиенту и
>ессно убивается, потому что изначальный запрос был на Сервер_Веб.
>По названию, думаю, понятно, что Сервер_Приложений - это виндовый терминальный сервер.
>У кого есть какие соображения на этот счет? Можно ли такую штуку
>как-нибудь организовать не прибегая к помощи VPN ?ни каких сложностей :), на Клиенте вносится в таблицу маршрутизации маршрут к Серверу_Приложений через интерфейс локальной сети, при этом все остальные запросы будут ходить по дефолтному маршруту
если ИП адреса Сервера_Приложений и Сервера_Веб находятся в разных адресных пространствах (для Кдиента), то на Сервере_Веб необходимо пророутить Клиента к Серверу_Приложений
>[оверквотинг удален]
>>ессно убивается, потому что изначальный запрос был на Сервер_Веб.
>>По названию, думаю, понятно, что Сервер_Приложений - это виндовый терминальный сервер.
>>У кого есть какие соображения на этот счет? Можно ли такую штуку
>>как-нибудь организовать не прибегая к помощи VPN ?
>
>ни каких сложностей :), на Клиенте вносится в таблицу маршрутизации маршрут к
>Серверу_Приложений через интерфейс локальной сети, при этом все остальные запросы будут
>ходить по дефолтному маршруту
>если ИП адреса Сервера_Приложений и Сервера_Веб находятся в разных адресных пространствах (для
>Кдиента), то на Сервере_Веб необходимо пророутить Клиента к Серверу_ПриложенийА чтобы ответ возвращался по тому же пути , на Сервер_Веб сделать SNAT
>А чтобы ответ возвращался по тому же пути , на Сервер_Веб сделать
>SNATможно подробнее про snat? что это и где найти во FreeBSD - сервер_веб на ней.
>>А чтобы ответ возвращался по тому же пути , на Сервер_Веб сделать
>>SNAT
>
>можно подробнее про snat? что это и где найти во FreeBSD -
>сервер_веб на ней.на FreeBSD просто NAT, если Firewall- pf , то примерно так
nat pass on $интерфейс_на_Провайдера1 inet from $ip_Клиент to $ip_Сервер_Приложений -> $ip_интерфейс_на_Провайдера1
>ни каких сложностей :), на Клиенте вносится в таблицу маршрутизации маршрут к
>Серверу_Приложений через интерфейс локальной сети, при этом все остальные запросы будут
>ходить по дефолтному маршруту
>если ИП адреса Сервера_Приложений и Сервера_Веб находятся в разных адресных пространствах (для
>Кдиента), то на Сервере_Веб необходимо пророутить Клиента к Серверу_ПриложенийНе, я видимо не так объяснил - у Клиента один интерфейс всего. Через него он ходит в Интернет. Причем еще и через нат. То есть если я укажу в маршруте шлюзом Сервер_Веб, то пакет до него не сможет дойти.
Ну и со стороны Сервера_Приложений тоже не дойдет - ибо они не в одной подсети.