免费Whois查询API有哪些限制和注意事项?
免费Whois查询需先区分传统43端口、RDAP和聚合API,重点应对总量/频率/并发限制、云服务器43端口封禁、缓存与隐私导致的数据不准及条款合规,并通过限流、缓存、错误分类和备用源兜底。
学完这篇你能搞清楚免费 Whois 查询接口到底卡在哪、哪些坑会导致线上查询突然失败,以及接入前该确认哪几件事。
第一步:先分清你接的是哪一类接口
这一步要确认接口形态,因为它直接决定后面会遇到什么限制。目前有三类:
- 传统 WHOIS:走 TCP 43 端口,返回纯文本,字段格式各注册局不统一,需要自己写正则解析;
- RDAP:HTTP + JSON 结构化返回,是 ICANN 推行用来替代 43 端口的方案,字段规范、好解析;
- 聚合 API:第三方把上面两种封装成统一 JSON,免费额度一般来自这类服务。
调用前先看文档里的协议,返回纯文本的接口不要用 JSON 解析器硬套。
注意:不少云服务器(阿里云、腾讯云等)默认封禁出站 43 端口,本地测试能通、服务器上一律超时,就是这个问题,需要提交工单申请放行。选 RDAP/HTTP 接口可以绕开。
第二步:搞清免费额度的三种限制
免费额度通常不是“一天能查多少次”这么简单,而是三层叠加:
- 总量限制:每天或每月固定次数,用完当天直接报错;
- 频率限制:每分钟或每秒请求数(QPS),超了返回 429;
- 并发限制:同一时刻最多几个请求在跑,超了排队或直接拒绝。
接入前把这三个数字抄进配置,用令牌桶限流 + 队列串行发送,别用多线程硬冲。免费接口被限流后通常不会给你恢复时间提示,只能自己按 429 响应退避重试。
第三步:注意数据本身的不准确
这一步是很多人踩坑最狠的地方:接口返回“查询成功”,不代表数据可信。
- 缓存延迟:免费接口大多返回缓存结果,TTL 从几小时到几天不等,刚注册或刚过户的域名查不到新数据;
- 隐私脱敏:受 GDPR 等隐私政策影响,注册人姓名、邮箱、电话普遍显示为 REDACTED FOR PRIVACY 或 GDPR Masked,拿不到真实联系人;
- 后缀覆盖不全:
.cn等国家域名要走对应注册局的查询服务器,部分冷门后缀免费接口直接不覆盖; - 未注册域名返回的是“NO MATCH / NOT FOUND”这类正常结果,不是错误,别当成失败去重试,否则白白烧额度。
注意:绝对不要用 Whois 查询结果直接判断域名可注册并下单。缓存延迟会造成“显示未注册、实际已被注册”的误判,最终判断要以注册局下单接口的返回为准。
第四步:读一遍服务条款,别踩合规线
多数免费接口在条款里明确禁止:商业转售、批量爬取全量域名、把数据做成对外查询站点、去除版权声明。给客户做工具、做 SaaS 的,先确认你的使用场景是否落在“个人非商业”范围内。另外查询日志里可能带域名和调用方 IP,涉及用户数据时要在隐私政策里说明。
第五步:工程侧的四个必做项
- 超时:单次查询设 5~10 秒超时,43 端口接口尤其容易挂死;
- 缓存:本地按域名 + 过期时间缓存结果,同一域名一天内不重复查,省额度也省时间;
- 错误分类:把“未注册”“限流”“超时”“服务端错误”分成不同分支,只有后两种重试;
- 兜底:免费服务没有 SLA,随时可能改规则或关停,接口层做抽象,留好切换备用源的开关。
需要讨论具体接口选型或解析脚本写法,可以到 GJ 站长论坛(www.gj0.com)的问答区发帖交流,附上你的返回样例更容易得到针对性回复。
小结
- 先确认接口形态:43 端口纯文本、RDAP JSON、聚合 API,解析方式完全不同;
- 免费额度是总量、频率、并发三层限制叠加,必须做限流和队列;
- 云服务器出站 43 端口常被默认封禁,优先选 HTTP 接口;
- 缓存延迟和隐私脱敏决定数据不能用于自动下单判断;
- 条款里的商用与批量抓取限制要先看清,免费服务无 SLA,接口层留好切换开关。
免责声明:本文为通用技术经验整理,各服务商的额度、条款、字段规则以其官方文档为准,接入前请自行核实;文中涉及的端口与平台策略可能随版本调整,请以实际测试结果为准。
转载请注明出处,版权归原作者所有。