📦 jackjyq / ip

考拉IP归属地,可查询用户IP地址及归属地, 及设备型号、操作系统及浏览器版本。

11 stars 1 forks 👁 11 watching ⚖️ MIT License
geolocationhttp-headersipip-addressip-locationuser-agent
📥 Clone https://github.com/jackjyq/ip.git
HTTPS git clone https://github.com/jackjyq/ip.git
SSH git clone git@github.com:jackjyq/ip.git
CLI gh repo clone jackjyq/ip
Jack Jiang Jack Jiang fix ip address 5590f38 11 months ago 📝 History
📁 docs
📁 src
📄 .gitignore
📄 LICENSE
📄 README.md
📄 uv.lock
📄 README.md

考拉 IP 归属地

查询我的 IP 地址、归属地、设备类型、操作系统、浏览器版本、屏幕分辨率、经纬度、地理位置等。

快速开始

注:因用到 sh 而不兼容 Windows。此外,由于大陆网路原因,查看 Whois 信息 功能或不可用。

安装

uv

# 安装 Python 依赖
uv sync

# 下载 ip2region 数据库
uv run ./src/update_ip2region.py

# 下载 GeoLite2 数据库
bash -c ./src/update_geolite2.sh

# 安装 whois
sudo apt install whois

运行

# 调试模式
DEBUG="True" uv run ./src/main.py runserver

# 生产模式
uv run gunicorn --workers 3 --worker-class=gevent src.main

API 文档

我的 IP(文本格式)

  • curl 'https://ip.jackjyq.com/text'
  • curl 'https://ip.jackjyq.com/'

我的 IP(JSON 格式)

  • curl 'https://ip.jackjyq.com/json'
  • curl 'https://ip.jackjyq.com/' -H 'Content-Type: application/json'

批量查询 IP 归属地

HTTP POST: https://ip.jackjyq.com/ips

请求:

{
  "ips": ["127.0.0.1", "114.114.114.114", "8.8.8.8"],
  "database": "both"
}

database 选项:

  • both: 默认值,返回完整
  • ip2region: 速度快,请求数量大
  • GeoLite2: 可选
例如:

curl -X POST -H "Content-Type: application/json" -d '{
  "ips": ["127.0.0.1", "114.114.114.114", "8.8.8.8"],
  "database": "both"
}' https://ip.jackjyq.com/ips

返回:

{
  "127.0.0.1": {
    "ip": "127.0.0.1",
    "country": null,
    "region": null,
    "province": null,
    "city": "内网IP",
    "isp": "内网IP",
    "database_name": "ip2region",
    "database_href": "https://gitee.com/lionsoul/ip2region/"
  },
  "114.114.114.114": {
    "ip": "114.114.114.114",
    "country": "中国",
    "region": null,
    "province": "江苏省",
    "city": "南京市",
    "isp": null,
    "database_name": "ip2region",
    "database_href": "https://gitee.com/lionsoul/ip2region/"
  },
  "8.8.8.8": {
    "ip": "8.8.8.8",
    "country": "美国",
    "region": null,
    "province": "加州",
    "city": "洛杉矶",
    "isp": null,
    "database_name": "GeoLite2",
    "database_href": "https://www.maxmind.com/"
  }
}

数据源

IP 归属地

经纬度位置

参考