Welcome! Log In Create A New Profile

Advanced

Re: Неправильный remote addr

Никита Козлов
August 21, 2010 02:52AM
Так вопрос был вроде не в том почему в $remote_addr нет реального IP
клиента, а в том почему переменная всегда содержит 78.159.118.162.

Клиентский запрос приходит на 78.159.118.168, а и ожидается, что на
проксируемый сервер запрос придет с 78.159.118.168, но приходит
с 78.159.118.162.

21 августа 2010 г. 10:39 пользователь Igor Sysoev <igor@sysoev.ru> написал:

> On Sat, Aug 21, 2010 at 10:13:57AM +0400, Никита Козлов wrote:
>
> > Нет, если на сетевом интерфейсе более одного IP, то исходящий адрес ОС
> будет
> > выбирать по некоторому алгоритму и обычно это самый первый IP на этом
> > интерфейсе.
> >
> > В 0.8.22+ есть proxy_bind, fastcgi_bind и memcached_bind которые
> позволяют
> > выставить исходящий IP для проксируемых запросов.
>
> Но поставить туда адрес клиента принципиально невозможно.
>
> > 21 августа 2010 г. 9:05 пользователь zdm <nginx-forum@nginx.us> написал:
> >
> > > Имеется такой конфиг:
> > >
> > > #SERVER_1
> > > server {
> > > listen 78.159.118.168:81;
> > > listen 78.159.118.162:81;
> > > listen 78.159.118.162:80;
> > >
> > > location / {
> > > proxy_pass http://78.159.118.162:8080;
> > > proxy_set_header X-Real-IP $remote_addr;
> > > proxy_set_header X-Forwarded-For
> > > $proxy_add_x_forwarded_for;
> > > }
> > > }
> > >
> > > #SERVER_2
> > > server {
> > > listen 78.159.118.162:8080;
> > >
> > > location / {
> > > fastcgi_pass unix:/tmp/fcgi.sock;
> > > fastcgi_param QUERY_STRING $query_string;
> > > fastcgi_param REQUEST_METHOD $request_method;
> > > fastcgi_param CONTENT_TYPE $content_type;
> > > fastcgi_param CONTENT_LENGTH $content_length;
> > > fastcgi_param HTTP_X_REAL_IP $http_x_real_ip;
> > > fastcgi_param HTTP_X_FORWARDED_FOR
> > > $proxy_add_x_forwarded_for;
> > > fastcgi_param PATH_INFO $uri;
> > > }
> > > }
> > >
> > >
> > > Клиентские запросы приходят на SERVER_1, он
> > > проксирует их на SERVER_2, а тот, в свою
> > > очередь, на FCGI приложение.
> > > Проблема:
> > > Значение переменной $remote_addr в конфиге
> > > SERVER_2 всегда равно 78.159.118.162, не зависимо
> > > от того, на какой ip пришел клиентский
> > > запрос на SERVER_1 (на 78.159.118.162 или на
> > > 78.159.118.168).
> > > Разве при проксируемый запрос не
> > > должен отправляться с того-же адреса,
> > > на который пришел клиентский запрос?
> > >
> > > Posted at Nginx Forum:
> > > http://forum.nginx.org/read.php?21,121999,121999#msg-121999
> > >
> > >
> > > _______________________________________________
> > > nginx-ru mailing list
> > > nginx-ru@nginx.org
> > > http://nginx.org/mailman/listinfo/nginx-ru
> > >
>
> > _______________________________________________
> > nginx-ru mailing list
> > nginx-ru@nginx.org
> > http://nginx.org/mailman/listinfo/nginx-ru
>
>
> --
> Игорь Сысоев
> http://sysoev.ru
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru
>
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Re: Неправильный remote addr

Никита Козлов August 21, 2010 02:16AM

Re: Неправильный remote addr

Igor Sysoev August 21, 2010 02:40AM

Re: Неправильный remote addr

Никита Козлов August 21, 2010 02:52AM

Re: Неправильный remote addr

Igor Sysoev August 21, 2010 03:36AM

Re: Неправильный remote addr

Maxim Dounin August 21, 2010 04:54AM

Re: Неправильный remote addr

Igor Sysoev August 21, 2010 11:56AM

Re: Неправильный remote addr

Maxim Dounin August 22, 2010 05:32AM

Re: Неправильный remote addr

zdm August 21, 2010 05:11AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 291
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready