php - 有可能根据ip获取 精确到街道 的地址吗
迷茫
迷茫 2017-04-11 09:06:13
0
10
1242

这个功能貌似是无法实现的,但是有一位同学却实现了。

效果见下图

这是地址,它是个图片隐藏信息的教程,但我无意中发现其获取本机IP确如此详细?!
https://imququ.com/post/use-i...

我很想知道,这个功能是如何实现的?

【很可惜,此时此刻,教程作者尚未回复我】

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

membalas semua(10)
PHPzhong

针对一级运营商,有两种途径:
方法1、以ipip和ip138为代表的ip库:基于各电信运营商、网络服务的BGP/ASN数据而分析处理,而得来的IP库。

这是比较正规的通过IP获取到所在地理位置的途径。

IP是不断变化的,很多IP都是基于运营商随机动态分配的,所以同一个IP会在同一个运营商范围内不断变化,不会有固定的街道或者坐标,但因为运营商是固定的,所以变化范围也可以确定是在一个范围内。所以当你拿到一个属于北京联通的IP时,你就可以确定这个IP是属于北京地区的。

能根据IP获取到用户真实且具体地址的,只有电信运营商,其通过IP查到分配给的用户账户,再通过用户账户查询宽带报装时的街道地址。这个信息是保密的,一般情况下只有公安部门能查看。

给你看个珍藏多年的宝贝:

2011年时在某运营商工作时偷拍的

方法2、以某通过IP获取用户GPS信息的。

首先声明,这是某些大厂以不道德手段,通过用户已连接WiFi的手机偷偷获取GPS信息,并结合出口IP,获取IP对应GPS信息的,可以通过IP定位到精度与手机GPS精度相同的坐标。

这是一种流氓行为。

而且这个方法,只要用户更换IP(比如重启路由器),那么在其下次偷偷获取用户GPS信息之前,他的坐标就都是错的。只有使用固定IP的网络会精确定位(比如企业用户)

目前广义上就这两种办法。

对于二级运营商,因为没有真实IP,所以上面两种方式的可靠性就不确定了,理由:

  • 对于方法1,二级运营商可能会在几个省之间都使用同一个IP(比如北京、河北、天津,某二级运营商都是用同一组出口IP),所以定位会非常不确定

  • 对于方法2,正确思路是因为没有真实IP了所以不会暴露个人隐私。然而部分二级运营商却会针对于这种定位,专门去暴露用户的一段私有IP,进一步去主动泄露用户GPS信息,所以定位会非常不确定

对于移动网用户:
使用3G或4G上网的用户,对于同一运营商,其出口IP是固定的。就算你把北京联通的手机拿到广州去,他的出口IP也还是北京,所以确定不了用户位置。
当然这个就和根据IP获取地址不太有关系了。


补充:
没想到这么短时间题主修改了这么多次问题,连例子都有了。

题主的这个,如果真想知道的话,告诉你是方法二:

然而我花了几秒钟就搬家了:


虽然离的不是很远,就旁边的小区。
顺带一提上面两个地址都和我没什么关系,方法二中地图上的地址也是我伪造的。

题主例子中这个数据是高德的。
方法二不仅高德在用,百度、搜狗也都在用。百度的最为恶劣,这里就不谈了。

如今个人信息泄露的真实厉害啊,大厂耍流氓都拦不住了。

洪涛

当然可以,精确到网吧的情况不是很多吗?
不过家庭用户,为了安全起见,运营商会故意分配随机IP的。
从一个市或县的范围随机分配。所以,凭IP,只能精确到市县就是这个原因。

迷茫

假如能,可能也不精确

黄舟

这个说是不可能的, 除了少部分企业, 如大公司机房, 网吧等电信会给固定ip, 而大部分家用的ip都是不固定的, 今天在这条街道, 每天在另外一条, 所以除了机房, 网吧这类固定ip外, 其他ip想定位到街道是不可能的.
(只有运营商才有ip的详细地址, 可以精确到门牌号)

阿神

http://lbsyun.baidu.com/index...
我找了找百度有这个接口还没测试过。

上面这个接口,看文档是一次性给所有的信息。我找了找,有的是要通过IP去获得经纬度,然后经纬度生成定位的图片,也就是地图,然后抓取上面的信息。

洪涛

单纯靠ip是不可能的,ISP对于个人用户都是随机分配IP的,小的宽带商都是用的nat,这也是为什么便宜的原因,基于ip定位这一动作是针对服务器的,就和黑个人电脑一样,企业的更好下手而个人的却更困难,但是现在无处不在的社工信息和各种实名,让个人信息像空气一样弥漫在互联网中,我猜想这种基于ip的定位是结合了已知的社工信息

黄舟

PHP安装GeoIP扩展根据IP获取访客所在国家/城市/经纬度等信息

print_r(geoip_record_by_name('106.37.165.80'));
Array
(
    [continent_code] => AS
    [country_code] => CN
    [country_code3] => CHN
    [country_name] => China //国家
    [region] => 22
    [city] => Beijing //城市
    [postal_code] => 
    [latitude] => 39.928901672363 //纬度
    [longitude] => 116.38829803467 //经度
    [dma_code] => 0
    [area_code] => 0
)
左手右手慢动作

有一个叫做《网速通》的Android App,主要功能是测速,测试延迟等…
奇怪的是,我用没有任何GPS定位模块平板电脑运行此款软件(注意,连接的是家用无线路由器WiFi,电信ADSL拨号用户)测速之后,点击查看详细信息,发现有我的地址,精准到街道名称!重启过多次路由器,IP地址多次更换,依然能查看我的地址,我真的不明白这软件到底是怎么做到的?!我用手机,禁止所有定位权限,关闭所有定位选项,这软件还是依然能检测到我的地址,依然精准到街道名称!左思右想,还是不明白这软件是怎么做到的?!难道他奶奶的电信把我的用户信息给泄露出去了?!不过,用电信3G移动网络查看,发现运营商是另一个城市的电信,地址显示末知…

Peter_Zhu

不能。现在ipv4分配光了。没有需求,运营商都不会分配公网ipv4的了。ipv6还没普及

小葫芦

话说有个东西叫VPN,可以把我的地址定位到USA!

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan