IP 位置检测是如何进行的?

IP 位置检测是如何进行的?

有没有办法(除了虚拟网络)阻止网站检测位置?网站如何根据位置告诉其服务器要加载哪些信息?

更具体地说,我有一个网站,我从该网站获取 JSON 来创建 Excel 文件。最近该网站已将自身设置为特定于位置,因此我生成的 JSON 仅适用于我的位置,并且无法在网站内更改位置。

我想知道我该如何尝试创建所有位置的“主列表”的 JSON。换句话说,以某种方式覆盖它分配给我的默认位置。

答案1

IP 位置检测是如何进行的?

有一些数据库可以将 IP 地址与地理位置进行匹配,还有一些服务可以提供将 IP 与其位置进行匹配的服务。这个 GitHub 项目列出这些服务。

获取 IP 地址的地理位置就像查询一样简单,例如:http://freegeoip.net/xml/8.8.8.8而这正是您所访问的网站最有可能做的事情(数据来自哪里以及其准确性取决于数据库)。

响应是:

<Response>
  <IP>8.8.8.8</IP>
  <CountryCode>US</CountryCode>
  <CountryName>United States</CountryName>
  <RegionCode>CA</RegionCode>
  <RegionName>California</RegionName>
  <City>Mountain View</City>
  <ZipCode>94035</ZipCode>
  <TimeZone>America/Los_Angeles</TimeZone>
  <Latitude>37.386</Latitude>
  <Longitude>-122.0838</Longitude>
  <MetroCode>807</MetroCode>
</Response>

有没有办法(除了虚拟网络之外)阻止网站检测位置?

这个问题可以归结为“有没有办法隐藏我的真实 IP 地址并显示为保存在不同位置的数据库中的 IP 地址?”

是的,正如您已经知道的那样,您主要可以使用 VPN 或其他路由/转发来完成此操作,但无论哪种情况,您都必须(以某种方式)控制终端节点。

您也可以尝试使用 Tor 网络,但是这些节点很容易被为您提供数据的服务器阻止(并且提供地理位置的服务可能会指示该请求是针对作为 Tor 出口节点的 IP)。

网站如何告诉其服务器根据位置加载什么信息?

获得了请求数据的 IP 地址的位置后,只需进行一个简单的查询,例如考虑CountryCodeRegionCode,并City从上述结果中得出。

答案2

没有检测 IP 地址位置

无法通过某种方式从随机 IP 地址生成主机位置。整个“检测”过程只是对 IP 地址范围的数据库查询。

每个注册的 IP 地址范围都有附加信息。

  1. 你的 ISP 在更大的网络中注册了一个 IP 范围(比如说,成熟
  2. ISP 在相应的数据库中指定范围的公共信息(包括位置)
  3. 当你连接到互联网时,ISP 会向你出租一个 IP 地址
  4. 网站(或您连接的任何主机)可以查询数据库,以查找有关范围的公开信息

该信息包含位置信息。通常它是您的 ISP 所在的城市,而不是确切的地点。

欺骗网站获取您所在位置的最佳方法是使用不同的公共 IP 地址。有些服务(包括免费服务,例如 friGate Chrome 扩展程序)提供某种代理/VPN 访问。

相关内容