[ blog · comparison ]9 min read

2026 年免费 IP 地理定位 API 全解:精度、速率限制,以及什么时候该花钱

Sarah Choy发布于 2026年7月29日约 9 分钟阅读
2026 年免费 IP 地理定位 API 全解:精度、速率限制,以及什么时候该花钱

IP 地理定位看起来是个已经解决的问题——直到你读到细则:仅限非商用的许可、只走 HTTP 的免费层、每月 100 次的上限,或者只返回国家的「免费」套餐。本指南对比了 2026 年真正值得考虑的免费选项——自托管 GeoLite2、ip-api.com、IPinfo、ipstack、ipgeolocation.io 与 API Pick——附上诚实的精度数字和一份决策指南。

一句话总结

  • IP 地理定位在国家层面很可靠(精度 >99%),但城市级精度只有 55–80%,因国家而异——绝不要指望它给出街道级位置。
  • 大多数「免费」IP 地理定位 API 要么限制商用(ip-api.com、ipgeolocation.io),要么把你限制在每月约 100–3 万次请求(ipstack、IPinfo 的城市数据),要么只提供 HTTP。
  • 自托管 MaxMind GeoLite2 在任何量级下都是真免费,但更新管线由你负责(数据库每周刷新两次),而且精度低于付费的 GeoIP2。
  • API Pick 的 IP Geolocation API 采用按量付费、无订阅:每次查询 1 credit(=$0.001),120 次/分钟,支持 IPv4 + IPv6,包含商用授权,且只对成功的查询计费。
  • 对 AI Agent 来说,一个 JSON 进/JSON 出、用 API key 鉴权的地理定位工具,胜过爬虫或自托管数据库——一次 GET 请求就能返回国家、城市、坐标、时区、EU 标志和 ASN。

细则里的问题

搜「免费 IP 地理定位 API」,会跳出十几家看起来一模一样的服务商:贴一个 IP 进去,返回国家和城市。差异只藏在细则里——而细则正是生产事故的栖身之处。一家的免费层只走 HTTP,你的查询在链路上明文裸奔。另一家仅限非商用,而你的 SaaS 显然不是。第三家给你每月 100 次请求,你的注册流程午饭前就把额度烧光了。

本指南对比 2026 年真正值得考虑的选项——自托管 MaxMind GeoLite2、ip-api.com、IPinfo、ipstack、ipgeolocation.io,以及 API Pick 的 IP Geolocation API——沿着决定真实项目成败的三条轴:许可到底允许什么、免费层到底包含什么、数据到底准到能用来做什么

IP 地理定位能告诉你什么,不能告诉你什么

在对比厂商之前,先校准预期——因为所有厂商用的都是类似的底层数据,而这些数据有硬性的物理极限:

  • 国家:准确率高于 99%。国家级识别是 IP 地理定位可靠的那部分,也是地理封锁、税务管辖和内容授权决策的基础。
  • 城市:约 55–80%(误差 ~50 km 内)。MaxMind 自己公布的精度数字就在各国之间有这么大的浮动。城市 ISP 解析得不错;农村、移动网络和 CGNAT 连接则经常被定位到错误的城市。
  • 街道级:永远不行。任何 IP 地理定位响应里的经纬度,都是匹配区域的估算中心,而不是设备位置。把它当成 GPS 用曾经引出过官司——臭名昭著的堪萨斯农场案,一个默认的地图中心点把数百万「位置未知」的 IP 都压在了一户人家的地产上,就是那个教科书级的警示。
  • VPN 会被定位到出口节点。asn 字段就是你的筛子:「住宅 ISP」的 ASN 意味着大概率是真实用户位置;托管服务商的 ASN 则意味着这个位置属于数据中心。

候选者,实话实说

自托管 MaxMind GeoLite2

大多数免费 API 底层都在用的那个可免费下载的数据库。注册一个 MaxMind 账号,下载 City/Country/ASN 三个 MMDB 文件,用读取库在进程内查询——亚毫秒级查询、不限量、真正免费且包含商用(需按 EULA 署名)。

代价在运维:数据库每周更新两次,而过期数据在移动 IP 空间里劣化极快;刷新管线、部署面、每台主机上的内存占用都由你负责。而且 GeoLite2 是精度打了折的兄弟版本——MaxMind 的付费 GeoIP2 数据库解析得明显更准,这正是他们能收钱的原因。

ip-api.com

限额慷慨(45 次/分钟)且无需 API key——但免费层的许可仅限非商用,且仅走 HTTP。只要你做的东西会向任何人收费,或者你不希望 IP 查询在传输中可被读取,你就得上付费套餐。

IPinfo

数据质量出色,国家 + ASN 层是真免费。但城市级数据锁在起步价不低的订阅套餐后面。如果你只需要国家级解析,它是一个很强的免费选择;如果你需要城市和坐标,就得做好预算。

ipstack & ipgeolocation.io

ipstack 的免费套餐约为每月 100 次请求,HTTPS 留给付费层——这是演示额度,不是运营预算。ipgeolocation.io 慷慨一些(约每天 1k 次请求),但同样把免费层限定在非商用项目。一旦你的项目动真格,两家都会把你推向包月订阅。

API Pick IP Geolocation

API Pick 的端点走了另一条定价路线:无订阅、无月度上限——每次查询 1 credit,$1 = 1,000 credits,即每次查询 $0.001,且只对成功的查询计费。失败的查询(私有 IP、无数据的地址)分文不收。包含商用授权,全程 HTTPS,同时覆盖 IPv4 和 IPv6。新账号赠送 100 免费 credits——足足 100 次真实查询供你评估,无需绑卡。

一次请求返回完整记录:国家代码与名称、地区、城市、经纬度、时区、EU 成员标志(对 GDPR 条件分支流程很有用),以及用于 VPN/数据中心甄别的 ASN。查询跑在本地托管的 MaxMind 数据库上,延迟路径中没有第三方调用。速率限制:每个 key 120 次/分钟。

逐项对比

免费层条款为写作时(2026 年 7 月)所公布。免费额度会在不通知的情况下变动,请务必核实最新条款。
GeoLite2(自托管)ip-api.comIPinfoipstackAPI Pick
真正的免费额度不限量,自行运维45 次/分钟仅国家+ASN约 100 次/月100 次查询(注册赠送 credits)
商用(免费层)允许(EULA)不允许允许允许允许
免费层 HTTPS不适用(本地)不支持支持不支持支持
城市级数据有(精度较低)付费
定价模式免费 + 你的运维时间订阅制订阅制订阅制按次计费($0.001)
维护你自己(每周 2 次更新)
ASN / VPN 信号独立 ASN 库付费字段付费内置
面向 Agent 的鉴权不适用免 key(免费层)TokenKeyx-api-key 请求头

调用 API

请求形态就是一次 GET。省略 ip 参数时,API 会查询调用方自己的地址——对客户端侧的个性化很有用:

curl "https://www.apipick.com/api/ip-geolocation?ip=8.8.8.8" \
  -H "x-api-key: YOUR_API_KEY"

响应:

{
  "ip": "8.8.8.8",
  "country_code": "US",
  "country_name": "United States",
  "region": "California",
  "city": "Mountain View",
  "latitude": 37.4223,
  "longitude": -122.085,
  "timezone": "America/Los_Angeles",
  "is_eu": false,
  "asn": 15169
}

Python 里,用标准的 requests 库:

import requests

def geolocate(ip: str) -> dict:
    r = requests.get(
        "https://www.apipick.com/api/ip-geolocation",
        params={"ip": ip},
        headers={"x-api-key": API_KEY},
        timeout=10,
    )
    r.raise_for_status()
    return r.json()

geo = geolocate("2001:4860:4860::8888")  # IPv6 works too
print(geo["country_code"], geo["city"], geo["asn"])

接进 AI Agent

IP 地理定位天生适合做 Agent 工具:确定性输入、结构化输出、一次带鉴权的调用。支持工单分流 Agent 用请求方的国家和时区丰富工单信息;反欺诈 Agent 把注册国家与银行卡国家交叉比对,并标记托管服务商的 ASN。OpenAI/Anthropic 的工具 schema 极简:

{
  "name": "ip_geolocation",
  "description": "Look up country, city, coordinates, timezone, EU flag and ASN for a public IPv4/IPv6 address.",
  "input_schema": {
    "type": "object",
    "properties": {
      "ip": { "type": "string", "description": "Public IP address to look up" }
    },
    "required": ["ip"]
  }
}

决策指南

  • 业余项目、无营收、低用量:ip-api.com 的免费层起步最快——接受仅 HTTP 的限制即可。
  • 只需国家级(地理封锁、默认币种):IPinfo 的免费国家层,或自托管一个 GeoLite2 Country 数据库。
  • 百万级查询、有自建基础设施团队:自托管 GeoLite2(或为了精度上付费 GeoIP2),并把更新管线自动化。
  • 商业产品、要城市级数据、不想订阅:按量付费——按每次查询 $0.001 计,在 API Pick 上 50,000 次查询花 $50;而订阅制无论你用不用,每月都要交差不多的钱。
  • AI Agent 工具:带鉴权的 JSON API 胜过本地数据库——没有部署耦合,Agent 的工具 schema 与端点 1:1 对应。拿个 key,接上上面的 schema,搞定。

交互式演示里现场试试——每个新账号附带 100 次免费查询,无需绑卡。

常见问题

有完全免费的 IP 地理定位 API 吗?

有,但都有代价。ip-api.com 对非商用免费,速率 45 次/分钟,且仅走 HTTP。IPinfo 的免费层只提供国家和 ASN(不含城市)数据。自托管 MaxMind GeoLite2 在任何量级下都免费,但数据库更新要自己维护。如果你需要商用授权、HTTPS 和城市级数据又不想订阅,像 API Pick 每次查询 $0.001 这样的按量付费,通常比订阅制厂商的第一档付费套餐更便宜。

IP 地理定位有多准?

在各大主流数据库中,国家级识别的准确率都高于 99%。城市级精度则下降到约 55–80%(误差 ~50 km 以内),因国家和厂商而异——MaxMind 公布的精度数字显示各国差异极大。IP 地理定位永远无法可靠地解析出街道地址或精确的 GPS 位置;返回的坐标是匹配区域的估算中心点。

使用 IP 地理定位符合 GDPR 吗?

根据 GDPR,IP 地址属于个人数据(欧盟法院 Breyer v Germany 案)。为反欺诈、内容本地化或地理封锁推导一个粗粒度位置,通常可以基于正当利益(legitimate interest)处理,而且国家级查询远没有行为追踪那么侵入。你仍需把它列入处理活动记录和隐私政策——具体情形请咨询法律顾问。

IP 地理定位对 IPv6 地址有效吗?

有效——现代数据库(MaxMind GeoLite2/GeoIP2 以及构建在其上的 API,包括 API Pick)同时覆盖 IPv4 和 IPv6。精度特性相近,不过各地区 IPv6 普及程度的差异可能会影响城市级精度。

我该自托管 GeoIP 数据库,还是调用 API?

当你的查询量达到百万级、需要进程内亚毫秒延迟、并且能把每周两次的数据库更新自动化时,选择自托管(GeoLite2 MMDB + 读取库)。当你想要零维护、数据始终最新、按用量付费、并且需要一个 AI Agent 能直接调用的工具时,选择调用 API。分界点通常在每月几十万次查询左右。

IP 地理定位能检测 VPN 和代理吗?

不能直接检测——VPN 用户会被定位到 VPN 出口节点,而不是真实位置。实际可用的信号是 ASN(自治系统)字段:如果 ASN 属于托管服务商或已知的 VPN 运营商而非消费级 ISP,就该把这个位置视为不可靠。API Pick 每次查询都返回 ASN,正是为了这类甄别。

AI Agent 如何使用 IP 地理定位工具?

作为 function calling 工具:Agent 传入一个 IP 地址,工具返回结构化 JSON(国家、城市、坐标、时区、EU 标志、ASN),Agent 在此之上做推理——用于欺诈分流、支持工单信息补全或合规路由。一次带鉴权的 GET 请求加 JSON 响应,无需任何解析胶水代码就能接入 OpenAI 和 Anthropic 的工具调用接口。

本文涉及的 API

Sarah Choy
作者
Sarah Choy
CEO, API Pick

Sarah Choy 是 API Pick 的 CEO,专注于为 AI Agent 与 LLM 工作流构建可用于生产的 API。