ngx_http_realip_module

ngx_http_realip_module 모듈은 클라이언트 주소 및 포트 옵션을 지정된 헤더 필드의 전송된 항목으로 변경하는 데 사용됩니다.

이 모듈은 기본적으로 빌드되지 않고 –with-http_realip_module 구성 매개변수로 활성화해야 합니다.

예제 구성

set_real_ip_from  192.168.1.0/24;
set_real_ip_from  192.168.2.1;
set_real_ip_from  2001:0db8::/32;
real_ip_header    X-Forwarded-For;
real_ip_recursive on;

Directives

Syntax:  set_real_ip_from address | CIDR | unix:;
Default: —
Context: http, server, location

올바른 교체 주소를 전송하는 것으로 알려진 신뢰할 수 있는 주소를 정의합니다. 특수 값 unix:가 지정되는 경우 모든 UNIX-도메인 소켓을 신뢰할 수 있습니다. 신뢰할 수 있는 주소도 호스트 이름(1.13.1)을 사용하여 지정할 수 있습니다.

IPv6 주소는 버전 1.3.0 및 1.2.1부터 지원됩니다.

Syntax:  real_ip_header field | X-Real-IP | X-Forwarded-For | proxy_protocol;
Default: real_ip_header X-Real-IP;
Context: http, server, location

클라이언트 주소를 대체하는 데 값이 사용되는 요청 헤더 필드를 정의합니다.

포트 옵션을 포함하는 요청 헤더 필드 값도 클라이언트 포트를 대체하는 데 사용됩니다(1.11.0). 주소 및 포트는 RFC 3986에 따라 지정해야 합니다.

proxy_protocol 매개변수(1.5.12)는 클라이언트 주소를 PROXY 프로토콜 헤더의 항목으로 변경합니다. PROXY 프로토콜은 listen 명령에서 proxy_protocol 매개변수를 설정하여 이전에 활성화되어야 합니다.

Syntax:  real_ip_recursive on | off;
Default: real_ip_recursive off;
Context: http, server, location
This directive appeared in versions 1.3.0 and 1.2.1.

재귀 검색이 비활성화되면 신뢰할 수 있는 주소 중 하나와 일치하는 원래 클라이언트 주소가 real_ip_header 명령이 정의하는 요청 헤더 필드의 전송된 마지막 주소로 교체됩니다. 재귀 검색이 활성화되면 신뢰할 수 있는 주소 중 하나와 일치하는 원래 클라이언트 주소가 요청 헤더 필드의 전송된 마지막 신뢰할 수 없는 주소로 교체됩니다.

임베디드 변수

$realip_remote_addr

원래 클라이언트 주소 유지(1.9.7)

$realip_remote_port

원래 클라이언트 포트 유지(1.11.0)