You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GeoLite2-City缺失或过期,Yarn/MaxMind官网下载失败求助

解决GeoLite2-City组件下载失败(getaddrinfo ENOTFOUND)问题

针对你遇到的域名解析失败导致无法下载GeoLite2数据的问题,给你几个直接有效的解决方案:

1. 切换公共DNS服务器

报错里的mm-prod-geoip-databases.a2649acb697e2c09b632799562c076f2.r2.cloudflarestorage.com是Cloudflare R2存储的域名,大概率是本地DNS无法解析这个域名。你可以把本地DNS换成公共DNS:

  • 谷歌DNS:8.8.8.8 和 8.8.4.4
  • Cloudflare DNS:1.1.1.1 和 1.0.0.1
    修改后刷新DNS缓存(Windows执行ipconfig /flushdns,macOS执行sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder),再尝试运行yarn add geolite2。

2. 排查网络代理/防火墙限制

如果你的网络是公司内网或使用了代理工具,可能防火墙或代理规则拦截了该R2域名的请求:

  • 暂时关闭代理工具,重试下载操作
  • 联系网络管理员,将上述R2域名加入防火墙白名单

3. 手动下载数据库文件替代自动安装

如果自动安装始终失败,直接手动获取数据库文件:

  1. 注册MaxMind免费账号,登录后进入「My License Key」页面生成许可证密钥
  2. 在「Download Files」页面找到GeoLite2-City的.mmdb格式二进制数据库文件,复制下载链接
  3. 用浏览器或curl命令下载文件:
    curl -o GeoLite2-City.mmdb "你的下载链接"
    
  4. 将下载好的GeoLite2-City.mmdb放到项目对应目录,比如node_modules/geolite2/data/,或在代码中指定数据库文件路径

4. 改用官方SDK包

放弃第三方geolite2包,直接使用MaxMind官方的@maxmind/geoip2-node包,配合手动下载的数据库文件:

  1. 安装官方包:
    yarn add @maxmind/geoip2-node
    
  2. 在代码中指定本地数据库路径:
    const { Reader } = require('@maxmind/geoip2-node');
    const reader = await Reader.open('/path/to/GeoLite2-City.mmdb');
    

内容的提问来源于stack exchange,提问作者Shubham Ghanghotia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 01:15:08