搜档网
当前位置:搜档网 › 全球IP地址查询完整版

全球IP地址查询完整版

全球IP地址查询完整版
全球IP地址查询完整版

全球IP地址查询完整版

全球IP地址查询完整版

突然在某某网站看到IP地址查询,于是心血来潮做了一个。这是用asp查询全球IP地址的程式,由于类似的的用Asp查询IP的速度不是很理想,本人使用的也是宏志宏的IP地址数据库,只是对它进行了改进。

本人在 win98+pws+access2000上测试通过,效果比较理想。

数据库的设计在一个软件中的比例,毫不夸张的说占60%,虽然这是一个小的程式,但也得到一定的体现。

有任何错误或建议请一定要给我发E-mail: ljz811@https://www.sodocs.net/doc/887016605.html, ,我也不了解“追捕”等类似算法,欢迎交流,谢谢!

好了废话少说,开始吧。

1、转wry.dll为.mdb由于我们要优化数据库(适合我们用的),建议这样做:

将文件改为wry.xls用Excel打开。

在Access中新建表IP

字段名类型长度说明

------------------------------------------------------------------------------------------------------------

id 自动编号

newid 数字 5 startip前三个数字

seconded 数字 5 startip第二部分三个数字

startip 文本 20 起始IP段

endip 文本 20 止 IP 段

country 文本此段IP所在国家或省

local 文本此段IP所在地

从Excel中copy startip/endip/country/local 四个字段至Access ,id会自动添加,对于newid和secondid当然我们不可能手工添加,可以这样实现。

<%

sqlcmd="select * from ip"

‘建议使用sqlcmd="select * from ipwhere id>=值1 and id<值2" ,因为对于一万个左右的数据一下子添加资源占用很大

set rs=ip.execute(sqlcmd)

do while not rs.eof

fir=left(rs("startip"),3)

sec=mid(rs("startip"),5,3)

sqlcmd3="update ip set newid=′"&str&"′,secondid=′"sec"′ "

ip.execute sqlcmd3

rs.movenext

loop

%>

这样就完成数据库的修改,对于dbpath.asp 文件下面讲

2、文件介绍

本程序分 dbpath.asp 和 search.asp

以下是源程序及简要描述

Dbpath.Asp 代码如下:(本人命名数据库名字为ip.mdb)

<%@ Language=VBScript %>

<% set ip=server.createobject("ADODB.CONNECTION")

ip.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("ip.mdb") %>

search.asp 代码如下:

<%

′ Write by 尥蹶子

′ If you find some error or you have better idea

′ Please contact me

′ My Email: ljz811@https://www.sodocs.net/doc/887016605.html, Oicq:30763914

%>

<%

′建立一个提交的表单

%>

IP查询


输入IP:

style ="BACKGROUND-COLOR: lavender; HEIGHT: 22px; WIDTH: 182px" >

<%

userip=Request.ServerVariables ("REMOTE_ADDR")

listip=trim(request("putip"))

if listip="" or listip=" " then

Response.Write "

请输入IP地址!

"

else

′---判断访问者的IP是否与输入的ip同

cmp=strcomp(userip,listip,1)

if cmp=0 then %>

这就是你自己呀!

<%

else

′获得输入ip的第1段,并置3位

num1=Instr(listip,".")

′判断第一段是否正确

if mun1=1 then

Response.Write "

"&listip&"
"&" 非有效的IP地址,IP每段必须1~3位!

"

else

fir=left(listip,num1-1)

if len(fir)=2 then

fir=0&fir

end if

if len(fir)=1 then

fir=0&fir

fir=0&fir

end if

′获得输入ip的第2段,并置3位

num2=Instr(num1+1,listip,".")

sec=mid(listip,num1+1,num2-(num1+1)) if len(sec)=2 then

sec=0&sec

end if

if len(sec)=1 then

sec=0&sec

sec=0&sec

end if

′获得输入ip的第3段,并置3位

num3=Instr(num2+1,listip,".")

thr=mid(listip,num2+1,num3-(num2+1)) if len(thr)=2 then

thr=0&thr

end if

if len(thr)=1 then

thr=0&thr

thr=0&thr

end if

′获得输入ip的第4段,并置3位

fou=right(listip,len(listip)-num3)

if len(fou)=2 then

fou=0&fou

end if

if len(fou)=1 then

fou=0&fou

fou=0&fou

end if

′判断是否为有效IP

if len(fir)=0 or len(fir)>3 or len(sec)=0 or len(sec)>3 or len(thr)=0 or len(thr)>3 or len(fou)=0 or len(fou)>3 then

Response.Write "

"&listip&"
"&" 非有效的IP地址,IP每段必须1~3位!

"

else

′判断是否为保留地址

if ((fir>=0) and (fir<= 2)) or ((fir>=58) and (fir<=60)) or ((fir>=67) and (fir<=126)) then

Response.Write "

"&listip&"
"&" Internet IP保留地址!

"

else

′判断是否为分配地址

if (fir>=219 and fir<=223) or fir=225 then

Response.Write "

"&listip&"
"&" 此IP地址尚未分配!

"

else

if fir>255 or fir<0 or sec>255 or sec<0 or thr>255 or thr<0 or fou>255 or fou<0 then

Response.Write "

"&listip&"
"&" Internet IP地址输入值不正确!

"

else

′查询IP地址数据库

Set sql= Server.CreateObject("ADODB.Recordset")

rs1="select id,startip,endip,country,local from ip where id<9904 and newid="&fir&" and secondid="&sec&" "

sql.open rs1,ip,1,1

′对于类似224.000.000.000~224.255.255.255的ip地址进行处理

if sql.RecordCount = 1 then

sql.Close

sqlcmd2="select id,startip,endip,country,local from ip where id<9904 and newid="&fir&" and secondid="&sec&" order by id desc"

set rs=ip.execute(sqlcmd2)

else

sqlcmd2="select id,startip,endip,country,local from ip where id<9904 and newid="&fir&" order by id desc"

set rs=ip.execute(sqlcmd2)

if rs.eof then

%>



<%=listip%>
★未知IP数据★
如果你知道请告诉我!OICQ:30763914 谢谢!
=尥蹶子=

<% else

do while not rs.eof

′*******处理country or local为空的情况,使用了按id倒排(why?因为根据IP地址表可知,先列大地区的ip段,例如先列出欧洲的062.000.000.000~062.255.255.255,再列英国等IP段)

′对后面三段IP进行处理,是否在IP表内

if (sec>=(mid(rs("startip"),5,3)) and

(sec<=mid(rs("endip"),5,3))) and

(thr>=(mid(rs("startip"),9,3)) and

(thr<=mid(rs("endip"),9,3))) and

(fou>=(mid(rs("startip"),13,3)) and

(fou<=mid(rs("endip"),13,3))) then

%>

<%=listip%>
<%=rs("country")%> <%=rs("local")%>

<%

′若查到数据,马上跳出以免占用资源

exit do

else

end if

if rs.eof then

′如果没有打出提示

%>



<%=listip%>
★未知IP数据★
如果你知道请告诉我!OICQ:30763914 谢谢!
=尥蹶子=

<%

end if

rs.movenext

loop

end if

end if

%>

<%

end if

end if%>

<%end if%>

<%end if%>

<%end if%>

<%end if%><%end if%>

IP地址域名互查技巧

IP地址域名互查技巧 身为中小企业的网络管理员的我们往往身兼多职,既要负责企业网站的维护与制作还要保证员工计算机正常访问网络。因此我们需要成为一个全面发展的技术人员。在众多网络故障排除实例中处理域名解析问题往往成为关键,学会并熟练掌握IP地址与域名之间的互相查询方法也是我们这些网络管理员应有的技能。今天笔者就将自己的经验全盘托出,为各位IT168的读者讲解IP地址与域名之间互相查询的独门绝技。 一、查询某域名对应IP地址: 很多时候为了检测内部DNS服务器是否工作正常,我们需要查询域名解析到IP地址是否顺利,这时应该使用nslookup命令。 第一步:通过系统的“开始->运行->输入CMD后回车”,进入到命令提示窗口。 第二步:在命令提示窗口中输入“nslookup 域名”,例如我们要查询本机设置的DNS服务器是否可以正确解析https://www.sodocs.net/doc/887016605.html,这个地址,那么通过“nslookup https://www.sodocs.net/doc/887016605.html,”来检测。首先显示的是本地使用的DNS服务器地址,例如笔者显示的是10.82.0.4,接下来的显示区域才是https://www.sodocs.net/doc/887016605.html,对应的地址,例如我们看到的是202.106.124.56,这个就是https://www.sodocs.net/doc/887016605.html,对应的IP地址,这说明DNS可以正确解析出来此地址,输入此地址应该也可以访问https://www.sodocs.net/doc/887016605.html,站点。(如图1) 第三步:当然如果DNS出现问题自然无法解析出来,显示信息会变成“DNS request timed out,timeout was 2 seconds”的提示,说明DNS解析超时,网络故障根源是DNS解析问题。(如图2) 有的时候我们用IP地址可以访问某站点而用域名访问却失败,这时就应该按照上面介绍的方法来检测DNS是否工作正常,通过nslookup命令查询本机是否可以顺利把域名转换到正确的IP地址。 二、查询内网IP地址对应域名:

三种方法查看IP地址是否被占用

三种方法查看IP地址是否被占用 在通过局域网(例如校园网、公司内网)上网时,首先需要设定一个可用的IP。那么局域网中哪些IP没有被占用呢?可以包着碰运气的心理,设置好IP再看有没有冲突报告,但这种办法实在是太笨了!下面笔者就给你带来三个察看IP地址是否可用的办法。 简单PING法 网络中查看某个计算机是否在线的最简单的办法就是ping该计算机对应的IP地址。例如想查看192.168.1.1这台计算机是否已经在线。点击“开始/运行”输入“cmd”进入命令行命令提示符状态,在命令行模式中输入“ping 192.168.1.1即可,如果ping得通就说明该IP地址对应的计算机已经在线。 ARP缓存法 如果仅仅使用ping法来判断网络中计算机的存在是不太严谨的,因为防火墙或者过滤规则,会使ping无法返回正确的信息,也就是说如果按照上面介绍的方法ping了对方IP地址不通,但对方仍然可能会在线,不过通过ARP缓存可以解决这个问题。 防火墙或者过滤包的方法也无法禁止ARP的查看,远程计算机不返回Ping成功的消息但会告诉本地计算机该IP地址对应的MAC地址。这样就可以通过ARP缓存信息来查看了。如果能看到该IP地址对应了MAC地址说明该计算机在线,相应的MAC地址没有出现在ARP缓存表中则表明该计算机不在线。首先按照上面介绍的ping法来检测某IP地址的计算机是否在线,然后在ping返回信息为不通的情况下,在命令提示符下输入“arp –a”查看本地ARP缓存列表,看对应的IP是否得到了MAC地址信息。 批处理法 利用上述原理,可以通过建立批处理的办法,批量检测局域网中在线的机器。例如要查看192.168.1.*这个网段中有哪些地址在线。在桌面上点鼠标右键新建一个文本文件后输入如下代码: FOR /L %%i IN (0,1,255) Do ping 192.168.114.%%i -n 1 arp -a -> IP.txt 将该文件保存为.bat文件,双击这个批处理文件将自动搜索网段中的所有IP,并且将发现出的ARP信息都保存到ip.txt文件中。笔者探测了192.168.114.1到192.168.114.10这十个IP得到了如图1的文档。可以看出,两个IP返回了MAC地址,说明它们是在线的。

IP地址应该怎么查看

IP地址应该怎么查看 大家都知道每个电脑都有自己的ip地址,就像每个人的手机号一样只有一个,也是唯一的一个,那么我们在使用电脑的时候,有的时候会需要查询自己的电脑ip地址,但是就这么简单的一个问题,相信也不是所有的人都会的,那么小编带大家一起来看一下我们该如何查询自己的ip地址吧。 IP地址介绍 网络之间互连的协议也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。IP地址具有唯一性,根据用户性质的不同,可以分为5类。另外,IP还有进入防护,知识产权,指针寄存器等含义。

查看ip地址方法一 我们来介绍通过网上邻居来查看自己的ip地址,首先我们可以右键单击网络邻居,之后在下拉菜单中选择属性,之后在打开的对话框中找到本地连接,然后右键单击本地连接,找到属性,找到并且点击Internet协议(TCP/IP),然后双击就会出现ip地址,就是我们的电脑的ip地址了。其实查询的方法还有很多种,上边介绍的只是这两种,还有别的,在这里就不一一介绍了,大家可以自己下去查询。 查看ip地址方法二

首先我们来介绍通过搜索引擎如何来查询自己的ip地址,步骤如下,首先我们可以先打开浏览器,不管是百度浏览器还是UC 浏览器或者是360浏览器,在搜索出输入ip地址,直接敲空格键,就可以查询自己的本机的ip,之后就会出现一串32位的数字,那就是本机ip地址。过程很简单,大家都是可以自己动手去查询的。 以上就是对查看ip地址的方法介绍,讲解到这里,相信大家都会查询了吧。其实查询的方法还有很多,也可以通过电脑左下角的开始按钮,进去控制面板里边查询,或者直接在运行里边直接输入命令也是可以的,还有就是可以通过路由器设置查ip地址。方法不仅仅有这几种,还有很多。自己可以下去科普一下自己的电脑知识,知识是永远都学习不完的,我们要不断的学习。

相关主题