c#怎样获取本地和别人的ip,我想做一个签到系统,这个技术我不咋懂,求解答

解决方案 »

  1.   

    //来访者IP
    public string GetUserIP()
     {
           string _userIP;
          if(Request.ServerVariables["HTTP_VIA"] == null)
            {
                 userIP= Request.UserHostAddress;
             }
           else
            {
              userIP= Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
           }
           return userIP;
       }你要本地IP干嘛?
      

  2.   

     /// <summary>
            /// 得到外网IP地址
            /// </summary>
            /// <returns></returns>
            public static string GetIP()
            {
                Uri uri = new Uri("http://city.ip138.com/ip2city.asp");
                System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(uri);
                req.Method = "get";
                using (Stream s = req.GetResponse().GetResponseStream())
                {
                    using (StreamReader reader = new StreamReader(s))
                    {
                        char[] ch = {'[',']' };
                        string str = reader.ReadToEnd();
                        System.Text.RegularExpressions.Match m = System.Text.RegularExpressions.Regex.Match(str, @"\[(?<IP>[0-9\.]*)\]");
                        return m.Value.Trim(ch) ;                }
                }
            }
      

  3.   

    看你在哪个环境下运行,你可以具体说说,反正很简单.
    ////////////////
    在asp.net C#中,你可以
    string  ipdz;
    ipdz = Request.ServerVariables["REMOTE_ADDR"].ToString();
      

  4.   

    呵呵,谢谢哈,我已经解决了。我就写了一个内,在把它引到label就实现了。