Как передать клиентский ip на виртуальную машину в hyper-v?
Здравствуйте.
Прошу помощи касательно получения реального Ip пользователя, при заходе на сайт.
Имеется сервер под управлением windows 2012r2 который имеет белый ip адрес (1.1.1.1) и смотрит в инет. На нем сделана виртуальная сеть и стал он шлюзом (192.168.1.1), а так же поднята (с помощью hyper-v) CentOS (192.168.1.2) и развернут LAMP.
Пробросил порты с windows на виртуальную машину (1.2) 80, 443, 8080. Все ок, все хорошо работает. Но все пользователи которые заходят на сайт имеют ip адрес 192.168.1.1 что в свою очередь очень логично...
Скажите пжл как на винде можно сделать правило, что бы передавался реальный ip клиента, а не ip шлюза?
п.с. много чего почитал. единственная оставшаяся мысль выставить centos в инет напрямую...
Увы нет. Просто мне нужен ip пользователя на проекте и не понимал почему не корректно работают скрипты. Потом решил вывести ip пользователя при заходе и мне с любых точек показывается как захожу с 192.168.1.1
Может быть я лажанул именно с выбором проброса?
Может быть то решение не является нужным и есть мануал как надо сделать?
Я сделал проброс просто через powershell
netsh interface portproxy add v4tov4 listenport=80 listenaddress=1.1.1.1 connectport=80 connectaddress=192.168.1.2 (для каждого нужного порта)
Не помню досконально конструкцию, на работе заметки держу. Но смысл был такой, что просто перенаправлять соединение с внешнего адреса на нужный порт в локальной сети.
Abchys, я использую Debian, не делал подобного на винде ни разу, да и не пользуюсь ей давно. В продакшене страшно с виндой работать надёжность нулевая. Если ты верно пробросил порты должен быть виден ip клиента по умолчанию без дополнительных танцев.