还有部分非洲地区的IP分配管理,与此相应的是,whois.apin.net是IP
whois的root
server,标准的IP
whois查询方法是,首先向whois.apin.net查询某个IP属于哪个大区,然后再向该区的whois
目前负责
IPV4的大区
whois.arin.net
美洲区
北美
whois.apnic.net
亚太区
包括亚洲和澳大利亚
whois.ripe.net
欧洲区
欧洲/中东(西亚)/北非
whois.lacnic.net
拉美区
拉丁美洲和加勒比海区域
非洲网络的IP查询也在whois.arin.net
向某个whois服务器提交whois查询的过程
打开一个到whois服务器的43端口的连接,然后发送要查询的域名
和一个回车换行。如果要查询多个域名,请用空格分开然后从sokect中读取结果。最后服务器将自动断开连接。
用PHP实现
1.验证IP(用
ip2long代替
ereg)
2.向
whois.arin.net查询,如果数据库中没有相关信息,会给出一个Referral
Server的URL,格式如下
ReferralServer:
然后根据此信息,继续查询
代码如下
whoisip.php
<?php
include_once
"lang.inc.php"
$IP
=
isset($_GET['ip'])?$_GET['ip']:'blank'
if
(-1
===
ip2long($ip))
die(str_replace('%IP%',
$IP,
$Text['ip_invalid']))
echo
GetWhois($IP)
function
GetWhois($IP)
{
global
$Text
$rootwhois
=
'whois.arin.net'
$buffer
=
str_replace('%SERVER%',
$rootwhois,
$Text['sock_connect'])
$buffer1
=
ReadSocket($rootwhois,$IP)
if
($buffer1
!==
'')
{
$whois
=
SubStrByTag("ReferralServer:
whois://","\n",$buffer1)
//remove
port
number
":43"
if
(
($pos=strpos($whois,":"))
!==
FALSE)
{
$whois
=
substr($whois,
0,$pos)
}
if
($whois
!==
'')
{
$buffer
.=
str_replace('%SERVER%',
$whois,
$Text['sock_connect'])
$buffer
.=
ReadSocket($whois,$IP)
}
else
{
$buffer
.=
$buffer1
}
}
return
nl2br($buffer)
}
function
SubStrByTag($firstTag,$secondTag,&$longStr)
{
$firstPos
=
strpos
($longStr,$firstTag)
$ret
=
''
if
($firstPos
!==
FALSE)
{
$secondPos
=
strpos
($longStr,$secondTag,$firstPos)
if
($secondPos
!==
FALSE)
{
$firstPos
+=
strlen($firstTag)
$ret
=
substr($longStr,$firstPos,$secondPos-$firstPos)
}
}
return
$ret
}
function
ReadSocket($whois,$ip)
{
global
$Text
$buffer
=
''
if
(!$sock
=
fsockopen(
$whois,
43,
$errNum,
$errStr,
20))
{
$buffer
=
str_replace('%SERVER%',
$whois,
$Text['sock_fail'])
}
else
{
fputs($sock,"$ip\n")
//$buffer
=
fread($sock,
8192)
while(!feof($sock))
$buffer.=fgets($sock,
8192)
fclose($sock)
}
return
$buffer
}
?>
语言文件:
lang.inc.php
<?php
$Text
=
Array(
'ip_invalid'=>'I
want
to
get
a
valid
IP,
but
it
is
[%IP%].',
'sock_connect'=>'Ask
%SERVER%
...
',
'sock_fail'=>'Cannot
connect
to
the
host:%SERVER%'
)
?>
其他有名的whois服务器
1.Tucows
(whois.opensrs.net)
一次只能一个连接
dnsstuff就是查询的它
2.BulkRegister
(whois.bulkregiter.net)
小心它临时封IP,如果大量连接的话
3.Network
Solutions
(whois.networksolutions.com)
一天只能查1000次
4.Go
Daddy
(whois.godaddy.com)
5.whois.abuse.net
查域名的注册商的具体操作步骤如下:
1、我们打开电脑浏览器百度whois信息查询服务进入主页,假设我们需要查询“baidu”这个域名的服务商,请输入“baidu”,点击“立即查询”。
2、我们可以看到“baidu.com”已注册,点击右侧“查看域名信息”。
3、以下为“baidu.com”的基础信息。基础信息里面可以看到注册商。
4、以下为“baidu.com”的站点信息。
5. 以下为“baidu.com”的网站信息。
6、以下为“baidu.com”的备案信息,在这我们呢既可以看到域名的注册商。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)