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 次/分钟。
逐项对比
| GeoLite2(自托管) | ip-api.com | IPinfo | ipstack | API Pick | |
|---|---|---|---|---|---|
| 真正的免费额度 | 不限量,自行运维 | 45 次/分钟 | 仅国家+ASN | 约 100 次/月 | 100 次查询(注册赠送 credits) |
| 商用(免费层) | 允许(EULA) | 不允许 | 允许 | 允许 | 允许 |
| 免费层 HTTPS | 不适用(本地) | 不支持 | 支持 | 不支持 | 支持 |
| 城市级数据 | 有(精度较低) | 有 | 付费 | 有 | 有 |
| 定价模式 | 免费 + 你的运维时间 | 订阅制 | 订阅制 | 订阅制 | 按次计费($0.001) |
| 维护 | 你自己(每周 2 次更新) | 无 | 无 | 无 | 无 |
| ASN / VPN 信号 | 独立 ASN 库 | 付费字段 | 有 | 付费 | 内置 |
| 面向 Agent 的鉴权 | 不适用 | 免 key(免费层) | Token | Key | x-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 是 API Pick 的 CEO,专注于为 AI Agent 与 LLM 工作流构建可用于生产的 API。