只能根据IP显示你在的城市。。 最理想的也就这样了。 手机的话可以根据A-GPS或者手机基站信号来定位的。
目前,星卫光系统,可以对人员通过号码查找,方便后勤管理,人员出勤考核!主要功能:
1、GPS定位;
2、NBR定位;
3、远程拾音;你懂的;
4、虚拟围栏;
5、双向通话、一键SOS、低电量报警、历史轨迹查询等等等等。
目前IPV4协议使用的是32位地址,也就是理论上会有2的32次方个地址,约有42亿个地址,全球共用,不同国家分配的地址段不一样,也就是根据地址段就可判别是哪个国家的,中国约分配到6000多万个IP地址,同理各个省各个地区的地址段也不一样,因此根据IP地址就可判断出你的计算机是在哪儿上网的,你说每次开机你的IP地址多不一样,那是电信为了方便,拿出一段分配好的IP地址,比如500个或一千个供所有使用adsl的用户使用,让adsl用户动态拨号,既方便又节约了资源,所以尽管你每次拨号,可能获得的IP地址不一样,但都是那个地区的,很容易定位,同时IP地址尽管是动态的,但是你的计算机上网卡都有一个唯一的MAC地址,它会记录不同时段对应的IP地址使用,这些都保存在电信的路由器日志里,因此要找你位置就不难确定了,如果你是用的小区宽带或光纤,位置则更好确定,不知我说的是否清楚。
IP地址是可以通过工具来改变原来的显示的,比如双鱼IP转换器上面有北京 ,上海等全国和国外多个城市的IP地址,通过服务器中转,你就可以显示这些IP步骤很简便,登陆 选您需要的地区 然后连接 ,成功之后IP就会显示成您选择的地区
自己以前做过一个程序 根据discuz里面的ip查询改的
/
ip地址所属地区计算
修改自 discuz
使用dicuz tinyipdata数据文件
将一些英文提示修改为汉字
$is_simple true的话显示到市 false显示到网通电信等等
/
function convertip($ip,$is_simple=true,$ipfile='include/data/ipdat') {
$return = '';
if( !file_exists($ipfile) ) $ipfile = '/'$ipfile;
if(preg_match("/^\d{1,3}\\d{1,3}\\d{1,3}\\d{1,3}$/", $ip)) {
$iparray = explode('', $ip);
if($iparray[0] == 10 || $iparray[0] == 127 || ($iparray[0] == 192 && $iparray[1] == 168) || ($iparray[0] == 172 && ($iparray[1] >= 16 && $iparray[1] <= 31))) {
return '局域网';
} elseif($iparray[0] > 255 || $iparray[1] > 255 || $iparray[2] > 255 || $iparray[3] > 255) {
return 'ERR';
} elseif($is_simple) {
return change_simply_area(convertip_tiny($ip, $ipfile));
}
else {
return convertip_tiny($ip, $ipfile);
}
}
}
/
从ip文件得到ip所属地区
过滤掉了具体的位置(如 网通/电信/网吧) 基本到市
/
function convertip_tiny($ip, $ipdatafile) {
static $fp = NULL, $offset = array(), $index = NULL;
$ipdot = explode('', $ip);
$ip = pack('N', ip2long($ip));
$ipdot[0] = (int)$ipdot[0];
$ipdot[1] = (int)$ipdot[1];
if($fp === NULL && $fp = @fopen($ipdatafile, 'rb')) {
$offset = unpack('Nlen', fread($fp, 4));
$index = fread($fp, $offset['len'] - 4);
} elseif($fp == FALSE) {
return '- Invalid IP data file';
}
$length = $offset['len'] - 1028;
$start = unpack('Vlen', $index[$ipdot[0] 4] $index[$ipdot[0] 4 + 1] $index[$ipdot[0] 4 + 2] $index[$ipdot[0] 4 + 3]);
for ($start = $start['len'] 8 + 1024; $start < $length; $start += 8) {
if ($index{$start} $index{$start + 1} $index{$start + 2} $index{$start + 3} >= $ip) {
$index_offset = unpack('Vlen', $index{$start + 4} $index{$start + 5} $index{$start + 6} "\x0");
$index_length = unpack('Clen', $index{$start + 7});
break;
}
}
fseek($fp, $offset['len'] + $index_offset['len'] - 1024);
if($index_length['len']) {
return mb_convert_encoding(fread($fp, $index_length['len']),'utf-8','gb2312'); //将读出的gb编码数据转成utf-8并返回
} else {
return '未知';
}
}
function change_simply_area($area) {
$tmp = explode(' ',$area); //过滤掉一些具体信息
return $tmp[0];
}
里面那个ipfile你可以去下载一个discuz 在 ipdata目录里面有wrydat的文件就是了 其实这个就是网上用的最多的那个纯真版数据库 很多显示ip的qq用的也是那个
这两个函数的原型参考 discuz 里面 include\miscfuncphp
共同学习进步 :)
我来回答吧,能够查询到的,天津市南开区鞍山西道。
但是可能费一些功夫,这就需要社会工程学了。请看详细过程:
首先很容易查到这个地址是天津市的。再具体的直接查不到。
我们可以用百度或者google查询这个IP地址。用google搜索221238108190得到的结果就是这个帖子,而用百度没有结果。看来百度比google要弱一些。
继续:
我们知道,一般属于同一网段的地址都在同一个地区,至少离的很近。所以我们可以用搜索引擎搜索221238108 也就是把最后一段的地址省略到,我们去搜索这个网段的IP地址的在互联网上的活动记录。肯定有很多无用信息。认真浏览,我们就可以发现这个网站信息>
以上就是关于手机能通过IP定位获得准确的省或者是城市位置吗全部的内容,包括:手机能通过IP定位获得准确的省或者是城市位置吗、通过IP地址 确定具体位置、如何根据ip地址判断属于哪个市区等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)