Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

ASP.NET MVC C#에서 클라이언트의 IP 주소를 어떻게 얻을 수 있습니까?

<시간/>

네트워크의 모든 시스템에는 고유한 식별자가 있습니다. 우편으로 보낼 편지의 주소를 지정하는 것처럼 컴퓨터는 고유 식별자를 사용하여 네트워크의 특정 컴퓨터에 데이터를 보냅니다. 인터넷의 모든 컴퓨터를 포함하여 오늘날 대부분의 네트워크는 네트워크에서 통신하는 방법에 대한 표준으로 TCP/IP 프로토콜을 사용합니다. TCP/IP 프로토콜에서 컴퓨터의 고유 식별자를 IP 주소라고 합니다.

HttpRequest.UserHostAddress 속성 사용

예시

using System.Web.Mvc;
namespace DemoMvcApplication.Controllers{
   public class HomeController : Controller{
      public string Index(){
         string ipAddress = Request.UserHostAddress;
         return ipAddress;
      }
   }
}

컨트롤러 외부, 즉 일반 클래스에서 IP 주소를 가져오려면 아래와 같이 할 수 있습니다.

using System.Web;
namespace DemoMvcApplication.Helpers{
   public static class DemoHelperClass{
      public static string GetIPAddress(){
         string ipAddress = HttpContext.Current.Request.UserHostAddress;
         return ipAddress;
      }
   }
}

ServerVariables 사용 예

using System.Web.Mvc;
namespace DemoMvcApplication.Controllers{
   public class HomeController : Controller{
      public string Index(){
         string ipAddress = Request.ServerVariables["REMOTE_ADDR"];
         return ipAddress;
      }
   }
}

출력

ASP.NET MVC C#에서 클라이언트의 IP 주소를 어떻게 얻을 수 있습니까?

로컬에서 애플리케이션을 실행하고 있기 때문에 localhost의 IP 주소는 ::1입니다. localhost라는 이름은 일반적으로 IPv4 루프백 주소 127.0.0.1 및 IPv6 루프백 주소 ::1

로 확인됩니다.