Max Mind 地理定位异常
Posted
技术标签:
【中文标题】Max Mind 地理定位异常【英文标题】:Max Mind Geolocation anomalies 【发布时间】:2017-09-21 21:43:10 【问题描述】:我有一个使用 MaxMind 本地数据库根据 IP 地址对用户进行地理定位的站点。我发现桌面上的结果与手机上的结果不同。例如:
我正在使用 X-Forwarded-For 标头进行地理定位 我的手机在邮政编码 18036 中找到我,大约 50 英里 关闭。 我使用 IPv4/IPv6 Dual-Stack Test 在手机上查找 ip 地址 使用桌面上的浏览器扩展,我将 X-Forwarded-For 标头设置为相同的 IP 地址 桌面将我放在 19428 中,这仍然是错误的,但是很多 更接近正确为什么会有差异?
这是我执行查找的方式:
var ip = httpContext.Request.Headers["X-Forwarded-For"];
CityResponse cityResponse;
using (_dbReader = new DatabaseReader(fullPath, FileAccessMode.Memory))
cityResponse = _dbReader.City(ip);
更新
您的手机是否与桌面连接到同一个 WiFi?还是通过 3G/4G 连接?
没有。为确保手机和桌面查看相同的内容:
我的网站明确查看 IP 以获取位置 - 我没有利用浏览器位置服务,它可能使用多种方法来确定您的位置。
在手机上搜索时,我关闭了wifi,所以肯定是在使用3G/4G
在手机上定位后,我在浏览器中使用“我的 IP”检索了手机的 IP 地址
我在浏览器中使用 X-Forwarded-For 标头欺骗了手机的 IP,并确保我的网站正在查看该标头而不是实际 IP(本来是内部 IP)
【问题讨论】:
您的手机是否与您的桌面连接到同一个 WiFi?还是通过 3G/4G 连接? 对否决票的任何解释?老实说想知道所以我不会再这样做了。 我投了反对票,因为我问了一个你似乎没有回答的问题。 您确实有点在针对以下答案的评论中回答了该问题,但您没有使用该信息更新您的帖子 - 以便其他人可以轻松找到。 【参考方案1】:如果您使用的是Wifi,并且与您的计算机在同一网络上,则不会有任何区别,因为公共IP地址(WAN IP地址)将相同。
如果您的手机不在计算机所在的网络上,则无法确定您将被分配到哪个 ISP(在给定时间)以及为您的手机分配了哪个 IP 地址。如果蜂窝塔发生故障或过载,您的连接将是
【讨论】:
桌面在公司网络上。手机在蜂窝网络上。但是我检查了我的手机 ip,然后在桌面上欺骗了那个 ip。 您可以尝试其他网站吗?去隐身并尝试谷歌地图。根据自动更正建议查看您所在的位置。 谷歌地图很准,但是用的不是你的ip吗? Google 地图有时会使用您的无线接入点来确定您的位置 bb以上是关于Max Mind 地理定位异常的主要内容,如果未能解决你的问题,请参考以下文章