Проксирование трафика с сохранением ip адреса

Доброго времени суток, хабровчане!

Возможно ли пробрасывать трафик от пользователя к одному серверу(винда) через другой сервер(дебиан) так, что бы на первом сервере был виден ip адрес пользователя, а не проксирующего сервера? Также пользователь должен знать только ip-адрес прокси и не иметь прямого доступа к основному серверу.
Много гуглил, но конкретики не находил. Вероятнее всего мне нужен BiNAT, но под Linux-системы годных мануалов не нашлось. Стоит учесть одну особенность, что доступа к виндовому серверу нет. Squid не подходит, ибо трафик не http. Пробовал DNAT+SNAT, тоже не подходит. Так что надеюсь на вашу помощь и заранее благодарю за ответ!
  • Вопрос задан
  • 4750 просмотров
Пригласить эксперта
Ответы на вопрос 4
opium
@opium
Просто люблю качественно работать
Это делается обычным dnat в iptables
какой нифиг binat
Ответ написан
Комментировать
IlyaEvseev
@IlyaEvseev
Opensource geek
1) binat в Линуксе делается либо парой правил snat\dnat в iptables, либо через iproute2: linux-ip.net/html/nat-stateless.html

2) если Windows будет видеть в заголовке приходящих IP-пакетов настоящий адрес отправителя,
то по умолчанию она будет отправлять ему ответы напрямую, а не через Дебиан.

3) решением могло бы стать туннельное соединение между Дебианом и Windows (например, OpenVPN)
и политика маршрутизации на Windows для данного протокола, но если к ней нет доступа, то увы.
Ответ написан
@bondbig
Если речь про WEB-трафик, то задача решается при помощи заголовков x-forwarded-for или x-real-ip.
Ответ написан
ValdikSS
@ValdikSS
Если у вас эти две машины в одной сети, то все должно решиться через SNAT+DNAT, ну и еще на маршрутизаторе тоже нужно будет делать DNAT, если же нет, то практически нереально без костылей.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы