0w0

[HTTP 헤더] X-Forwarded-For (XFF) 본문

Header

[HTTP 헤더] X-Forwarded-For (XFF)

0w0 2019. 2. 8. 06:23
728x90
반응형


1. X-Forwarded-For (XFF) 란?

- HTTP 헤더의 필드 중 하나

- XFF의 목적 : WAS, Web Server 앞 단에 위치한 Load Balancers, Proxy Server, Caching Server 등의 IP로 HTTP 헤더의 src_ip가 되어 로깅되는 것을 확인하고 실제 Client의 IP를 로깅 및 확인하기 위해 사용됨.



2. X-Forwarded-For (XFF)에서 Client IP 는?

- HTTP 헤더에서 XFF가 다음과 같이 확인된다면


X-Forwarded-For : IP_1, IP_2, IP_3


- 해석

○ XFF 필드는 우측 끝으로 추가가 이뤄짐.

○ 즉, 해당 패킷에서 추가 경로가 발생되면 IP_3 뒤로 IP_4가 붙는 것

○ IP_1 이 실제 Client IP로 확인하면됨

○ 패킷에서 src_ip와 XFF의 IP_1이 같다면 정상적인 처리가 이뤄진 것

○ XFF 필드가 생성되어 있으며 IP_1과 src_ip가 다르다면 서버(WAS, Web Server)로 접속하는 과정 중 앞 단의 장비나 S/W에 의해서src_ip가 변경된 것, IP_1을 Client인 것을 XFF를 통해 확인 가능.


- 흐름

클라이언트(IP_1)   ->        Caching Sever(IP_2)        ->        Proxy Server(IP_3)        ->        Web Server

 X-Forwarded-For : IP_1                    + IP_2   

X-Forwarded-For : IP_1 , IP_2                        +IP_3

X-Forwarded-For : IP_1, IP_2, IP_3

○ 결과적으로 Web Server 로깅상에 남는 src_ip가 이상하거나 패킷 src_ip가 이상할 경우에서 추가적으로 X-Forwarded-For 필드가 있을 경우 src_ip 보다 XFF의 첫번 째 IP(IP_1) 를 Client IP라는 것을 알 수 있음



728x90
반응형

'Header' 카테고리의 다른 글

[HTTP] HTTP 응답 코드  (0) 2020.11.24
[HTTP] HTTP와 HTTPS  (0) 2019.02.13
[HTTP] HTTP/1.0과 HTTP/1.1 차이로 HTTP/1.1이 갖는 특징 (0.1 눈높이)  (0) 2019.02.10
Comments