怎么操作

解决方案 »

  1.   

    System.Web.HttpContext.Current.Request.UserHostAddress;
      

  2.   

    js获取客户端ip
      

  3.   

    private string GetClientIP()
      {
      string result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
      if (null == result || result == String.Empty)
      {
      result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
      }  if (String.IsNullOrEmpty(result))
      {
      result = HttpContext.Current.Request.UserHostAddress;
      }
      return result;
      }
    http://topic.csdn.net/u/20090617/11/8f0432b6-84ee-49da-a55f-86b3d343ab8b.html
      

  4.   

    private void getip()
            {
                string user_IP = "";
                if (Request.ServerVariables["HTTP_VIA"] != null)
                {
                    user_IP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
                }
                else
                {
                    user_IP = Request.ServerVariables["REMOTE_ADDR"].ToString();
                }
    }
      

  5.   

    private string GetClientIP()
      {
      string result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
      if (null == result || result == String.Empty)
      {
      result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
      }  if (null == result || result == String.Empty)
      {
      result = HttpContext.Current.Request.UserHostAddress;
      }
      return result;
      }获取MAC地址:[DllImport("Iphlpapi.dll")]  
      private static extern int SendARP(Int32 dest,Int32 host,ref Int64 mac,ref Int32 length);  
      [DllImport("Ws2_32.dll")]
      private static extern Int32 inet_addr(string ip);  private void Page_Load(object sender, System.EventArgs e)
      {
      try
      {
      string userip=Request.UserHostAddress;
      string strClientIP = Request.UserHostAddress.ToString().Trim();
      Int32 ldest = inet_addr(strClientIP);  
      Int32 lhost = inet_addr("");   
      Int64 macinfo = new Int64();  
      Int32 len = 6;  
      int res = SendARP(ldest,0, ref macinfo, ref len);
      string mac_src=macinfo.ToString("X");
      if(mac_src == "0")
      {
      if(userip=="127.0.0.1")
      Response.Write ("");
      else
      Response.Write ("" + userip + "" + "<br>");
      return;
      }  while(mac_src.Length<12)
      {
      mac_src = mac_src.Insert(0,"0");
      }  string mac_dest="";  for(int i=0;i<11;i++)
      {
      if (0 == (i % 2))
      {
      if ( i == 10 )
      {
      mac_dest = mac_dest.Insert(0,mac_src.Substring(i,2));
      }
      else
      {
      mac_dest ="-" + mac_dest.Insert(0,mac_src.Substring(i,2));
      }
      }  
      }  }
      catch(Exception err)  
      {  
      Response.Write(err.Message);
      }
      }学习了,非常有效的代码,谢谢
      

  6.   

    ///// <summary>
        ///// 获取IP 的方法 
        ///// </summary>
        ///// <returns></returns>
        //private string GetComIp()
        //{
        //    string ip;  //计算机ip
        //    if (Context.Request.ServerVariables["HTTP_VIA"] != null) // 服务器, using proxy
        //    {
        //        // 得到真实的客户端地址
        //        ip = Context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); // Return real client IP.
        //    }
        //    else//如果没有使用代理服务器或者得不到客户端的ip not using proxy or can't get the Client IP
        //    {    //        // 得到服务端的地址
        //        ip = Context.Request.ServerVariables["REMOTE_ADDR"].ToString(); //While it can't get the Client IP, it will return proxy IP.
        //    }
        //    return ip;
        //}