项目原因,网上下载了 We7 CMS安装版,(想下载源码竟然发现要加入什么什么源码小组,还要一年交¥100,晕,这叫什么GP开源啊!!!),下载下来看了下app_data目录,惊奇发现有个ip.db,呵呵,我猜可能是IP地址数据库了,而且是sqlite的,打开一看:
嘿嘿 ,果然是IP地址数据库,而且都转成长IP格式的了,自己写了个aspx页面来获取IP的:
http://5mdn.com/getip.aspx
给网上的人测试发现其实这个IP数据库也不是很完全的,算了,不管了,先记下来吧,下面是aspx.cs的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Text.RegularExpressions;
using System.Data;
using System.Data.SQLite;
public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string ip = Request.UserHostAddress;
string longip = IpToLong(ip).ToString();
litmes.Text = "<h3>您的IP:" + ip + "</h3>";
litmes.Text += "<h3>转换后的IP:" + longip + "</h3>";
litmes.Text += "<h4>从IP数据库中取出的记录:</h4>";
SQLiteConnection conn = null;
SQLiteCommand cmd = null;
SQLiteDataReader sdr = null;
string connStr = "Data Source=" + HttpContext.Current.Server.MapPath("~/App_Data/ip.db");
conn = new SQLiteConnection(connStr);
conn.Open();
string sql = "SELECT * FROM iptocity where " + longip + " between ip_start and ip_end";
cmd = new SQLiteCommand(sql, conn);
DataTable dt = new DataTable();
using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
dt.Load(sdr);
}
GridView1.DataSource = dt;
GridView1.DataBind();
}
// 把IP地址转成长数字,
// 算法:128.125.1.24 → (128*256*256*256) + (125*256*256) + (1*256) +24
public static ulong IpToLong(string ip)
{
try
{
string[] cip = ip.Trim().Split('.');
string[] aip = new string[4];
cip.CopyTo(aip, 0);
if (cip.Length < 3)
{
for (int i = 3; i > cip.Length; i--)
{
aip[i] = "0";
}
}
uint[] iip = new uint[4];
Regex reg = new Regex(@"\d+");
for (int x = 0; x < aip.Length; x++)
{
if (reg.IsMatch(aip[x]))
iip[x] = Convert.ToUInt32(aip[x]);
else
iip[x] = 0;
}
ulong uip = Convert.ToUInt64(256 * 256 * 256 * iip[0] + 256 * 256 * iip[1] + 256 * iip[2] + iip[3]);
return uip;
}
catch (Exception ess)
{
throw ess;
}
}
}
相关文件下载:点击下载
分享到:
相关推荐
比较详细的IP地址对应地区列表,包含国家、省、市等信息
IP对应地址,数据库
access数据库, 可以查询ip地址,对应的城市,地区,等信息。
全世界最新IP地址数据库,2017年12月最新数据,可用于网站IP地址查询,无错漏无重复。
可以将IP地址转换为对应的国家和地区,数据库是网上非常流行的IP纯真数据库,包含40多万条IP记录,也包含在压缩文件中,精确度甚至达到了某个网吧,某条街道.
全球IP地址对应省市SQL 各种数据库均可用!
近50万个 最新IP地址对应城市名称的 mdb数据库,附查询源码。可以在asp网页文件,网站,软件查询方便使用
对应世界各地ip地址对应的大概地址,对于开发者来说非常有用
最新的IP地址库,MYSQL5版,有GBK和UTF8两个库。
包含所有地区,所有号码段的IP地址 可以轻松查找对应地区 IP地址转数字方式: 例如:127.12.0.1=> 127*256*256*256+12*256*256+0*256+1
IP数据库,直接可以导入SQL server使用
Python根据IP地址查询对应的地理信息的实现原理是利用IP地址库,IP地址库是一个存放IP地址和其对应地理信息的数据库,通过查询IP地址库,就可以得到某IP地址对应的地理信息,比如国家、省份、城市、运营商等。...
37M ip地址及对应的地区。包括使用说明!使用方便。
专业 纯真版IP地址数据库是当前网络上最权威、地址最精确、IP记录以及网吧数据最多的IP地址数据库。收集了包括中国电信、中国移动、中国联通、铁通、长城宽带等各 ISP 的最新准确 IP 地址数据。通过大家的共同努力...
IP地址与地点对应表数据 例: 0.0.0.0 0.255.255.255 IANA保留地址 CZ88.NET 1.0.0.0 1.0.0.255 澳大利亚 CZ88.NET 1.0.1.0 1.0.3.255 福建省 电信 1.0.4.0 1.0.7.255 澳大利亚 CZ88.NET 1.0.8.0 1.0.15.255 广东省...
里面有所有世界上所有IP地址的地址段 用Access数据库打开便可以得到所有地址段 地址段已经转换为整形 数据表主要包括以下三个字段 起始地址 结束地址 区域名
纯真ip地址数据库,点击exe文件安装,安装目录中qqwry.dat为核心文件,里面保存了世界各地的ip与地理位置信息,使用时只需要复制这个文件到项目的自定义目录,再读取这个文件即可获取ip地址对应的地理位置。...
可动态更新的全球IP数据库SQL可动态更新的全球IP数据库SQL可动态更新的全球IP数据库SQL可动态更新的全球IP数据库SQL可动态更新的全球IP数据库SQL可动态更新的全球IP数据库SQL可动态更新的全球IP数据库SQL可动态更新...
全球国家地区数据库(sql脚本)
这个IP地址数据库是SQLite版本,便于一些项目中需要大量IP数据的高效数据库。是在MaxMind(也就是IP地理中英文版)的基础上,进行了简体中文的汉化并将QQ纯真地理位置数据库(QQWry.Dat)中中国地区详细的IP数据库...