【测速】C#编程获取IP地址的方法示例

更新时间:2021-06-11    来源:php常用代码    手机版     字体:

【www.bbyears.com--php常用代码】

本文实例讲述了C#编程获取IP地址的方法。分享给大家供大家参考,具体如下:

1、获取客户端IP

 代码如下

///

/// 获取客户端Ip

///

///

publicString GetClientIp()

{

  String clientIP ="";

  if(System.Web.HttpContext.Current !=null)

  {

    clientIP = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

    if(string.IsNullOrEmpty(clientIP) || (clientIP.ToLower() =="unknown"))

    {

      clientIP = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_REAL_IP"];

      if(string.IsNullOrEmpty(clientIP))

      {

        clientIP = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];

      }

    }

    else

    {

      clientIP = clientIP.Split(',')[0];

    }

  }

  returnclientIP;

}

2、服务器端获取客户端请求IP和客户端机器名称

 代码如下

///

/// 服务器端获取客户端请求IP和客户端机器名称

///

publicstaticvoidGetClientInfo()

{

  OperationContext context = OperationContext.Current;

  MessageProperties messageProperties = context.IncomingMessageProperties;

  RemoteEndpointMessageProperty endpointProperty = messageProperties[RemoteEndpointMessageProperty.Name]asRemoteEndpointMessageProperty;

  HttpRequestMessageProperty requestProperty = messageProperties[HttpRequestMessageProperty.Name]asHttpRequestMessageProperty;

  stringclientIp = !string.IsNullOrEmpty(requestProperty.Headers["X-Real-IP"]) ? requestProperty.Headers["X-Real-IP"] : endpointProperty.Address;

  stringclientName = Environment.MachineName;

  Console.WriteLine("ClientIp: "+ clientIp +"clientName:"+ clientName);

}

本文来源:http://www.bbyears.com/jiaocheng/123022.html

热门标签

更多>>

本类排行