반응형
요청한 클라이언트의 IP 가져오기
Request.ServerVariables["REMOTE_ADDR"]; 를 통해서 기본적으로 요청 클라이언트의 IP 를 얻어올 수 있다.
하지만 해당 서버가 proxy 서버를 통해서 전달이 된 경우 REMOTE_ADDR 는 proxy 서버의 IP 가 들어가게 된다.
이러한 경우 실제 IP 를 얻기 위해서는 http 헤더에 "X-Forwarded-For" 를 통해서 IP 를 얻어올 수 있다.
string ipaddr = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (string.IsNullOrEmpty(ipaddr))
{
ipaddr = Request.ServerVariables["REMOTE_ADDR"];
}
* 참고: 닷넷 프로임워크의 HttpRequest 객체의 Request.UserHostAddress 를 통해 "REMOTE_ADDR" 와 같은 값을 얻을 수 있다.
[Request.ServerVariables Collections 글 보기]
반응형
'dev > asp.net, c#' 카테고리의 다른 글
[c#] 데이터 타입 - enum 열거형 (0) | 2021.03.05 |
---|---|
[c#] CLASS to XML 로 Serialize 할때 CDATA 섹션 으로 생성하기 (0) | 2021.02.05 |
[asp.net] Request.ServerVariables Collections 정보 보기 (0) | 2021.01.18 |
[asp.net c#] DEXTUpload.NET 업로드 상태 확인(DEXTUpload.NET.FileUploadMonitor.ShowMonitor) 이슈 (0) | 2021.01.04 |
[asp.net core 3.1] 파일 로깅 for SeriLog (세리로그) (0) | 2020.12.18 |