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

Igor Sysoev igor на sysoev.ru
Сб Авг 21 10:39:09 MSD 2010


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 at 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 at nginx.org
> > http://nginx.org/mailman/listinfo/nginx-ru
> >

> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru


-- 
Игорь Сысоев
http://sysoev.ru



Подробная информация о списке рассылки nginx-ru