以上,用ASP.NET实现.

解决方案 »

  1.   

    先 string ip = ipscanner.IpToInt(Request.UserHostAddress.ToString()).ToString();
    public  long IpToInt(string ip)
            {
                char[] dot = new char[] { '.' };
                string[] ipArr = ip.Split(dot);
                if (ipArr.Length == 3)
                    ip = ip + ".0";
                ipArr = ip.Split(dot);            long ip_Int = 0;
                long p1 = long.Parse(ipArr[0]) * 256 * 256 * 256;
                long p2 = long.Parse(ipArr[1]) * 256 * 256;
                long p3 = long.Parse(ipArr[2]) * 256;
                long p4 = long.Parse(ipArr[3]);
                ip_Int = p1 + p2 + p3 + p4;
                return ip_Int;
            }   string sql = string.Format("select warea,narea  from ippos where startip<{0} and endip>{1}", Ip, Ip);
    去找个IP库
    没有我发给你`
      

  2.   

    这是asp.net 中 HttpContext.Current.Request.UserHostAddress 获取IP,当然其他b/s框架也大同小异,都能获取来访者IP,然后去下载一个IP数据库,代理超人里就有,当然越新越好,然后把你获得IP跟数据库中的 IP和掩码比较,在哪个范围内,就可以确定是哪个城市或地区了.
      

  3.   

    HttpContext.Current.Request.UserHostAddress 
      

  4.   

    http://8d.pcxun.com,
    这个我是我写着玩的论坛.
    里面有个功能就是:发/回帖子时候:是否显示IP归属地.
    你去看看帖子每楼的右边,就是显示这个信息的.(不过里面的人基本不打开此项设置)当时我的做法就是:
    1:找一个ip库
    2:在程序中,根据用户的IP去查这个库,就能得到地址信息了.注意:
    尽量找个全的IP库,我当时应该是自己改造的什么QQ纯真版的IP库.也是baidu里找的.我那边只能达到80%的正确.好像有20多w数据吧 .
    然后,自己修改了一下(忘记了,好像改了里面数据的进制,因为最后查库的时候,你是不能直接用ip字符串来查,要把ip转换成和你库一样的进制)