C#에서 Client IP 주소 가져오기 (CloudFlare 사용)

C#에서 Client IP 주소를 가져오기 위해선 HttpContext 객체를 사용하면 된다.

하지만 보안으로 인해 중간에 CloudFlare가 사용되고 있다면 기존에 사용하고 있던 "REMOTE_ADDR" 은 사용자의 IP 주소가 아닌 CloudFlare 주소를 가져오게 된다.

 

그래서 CloudFlare로 전송된 Request의 헤더에 "HTTP_X_FORWARDED_FOR" 값을 가져오면 된다.

저 값이 없다면 "CF_Connecting-IP"의 값을 가져오면 된다. 

추가로 ASP.NET CORE MVC Views에서 Client IP 주소를 가져오고 싶다면 HttpContext 객체와 같은 Context를 사용하면 된다. 

 

자세한 참고는 밑에 링크 클릭!

https://support.cloudflare.com/hc/en-us/articles/200170986-How-does-Cloudflare-handle-HTTP-Request-headers-

'IT > C#, ASP.NET' 카테고리의 다른 글

IIS 셋팅으로 원하는 주소로 설정(로컬 환경)  (0) 2020.12.01

+ Recent posts