一键查询服务器地理位置

在浏览网站时,经常会有看一下网站服务器放在地球那个角落的需求,再顺便看一下whois信息…当然你可以登录一些专门的whois等工具类网站进行查询,这里介绍一个简便的方法。

其实浏览器地址栏可以直接运行javascript,把这些js代码保存为书签,就可以达到上述要求。

直接上代码

javascript:
url=’https://223.5.5.5/resolve?name=’+top.location.hostname+’&type=A&short=1′;
console.log(url);
fetch(url)
.then(response=>response.json())
.then(json=>{
console.log(json);
console.log(‘json.length=’+json.length);
for(var i=0;i<json.length;i++)
{
window.open(‘https://db-ip.com/’+json[i],’_blank’)
}
}
)
.catch(err=>console.log(‘Request Failed’,err));

解释一下,首先top.location.hostname获取域名,通过阿里的公共DNS API('https://223.5.5.5/resolve?name='+top.location.hostname+'&type=A&short=1')查询域名对应ip地址,为什么通过第三方服务呢?因为js是直接获取不了服务器ip的,API返回一个ip地址json数组,分别取出在db-ip.com进行查询。将下面的代码保存为书签地址点击试一下。

javascript:url=’https://223.5.5.5/resolve?name=’+top.location.hostname+’&type=A&short=1′;console.log(url);fetch(url) .then(response=>response.json()) .then(json=>{console.log(json);console.log(‘json.length=’+json.length);for(var i=0;i<json.length;i++){window.open(‘https://db-ip.com/’+json[i],’_blank’)}}) .catch(err=>console.log(‘Request Failed’,err));

注意:1、如果服务器对应多个ip地址,你需要关闭浏览器的防弹出窗口,否则默认查询第一个。

2、代码里加了一些控制台输出,你也可以删除掉。

3、必须以”javascript:”开头,上述代码保存时需写在一行里,这里是为了浏览方便。

其他,比如直接查询网站whois,代码如下:

javascript:window.open('http://whois.chinaz.com/?DomainName='+top.location.hostname,'_blank');

Tagged .