IP 地址库
IP 地址库功能提供 IP 归属地查询和管理能力,可以查询 IP 地址的地理位置信息,并为访问控制、安全审计等功能提供数据支撑。
技术原理
IP 地理位置数据库原理
IP 地理位置数据库通过维护 IP 地址段与地理位置的映射关系来实现归属地查询:
IP 地址段 地理位置信息
─────────────────────────────────────────────────────
1.0.0.0 - 1.0.0.255 → 澳大利亚 / Queensland / Brisbane
1.0.1.0 - 1.0.3.255 → 中国 / 福建省 / 福州市 / 电信
1.0.4.0 - 1.0.7.255 → 澳大利亚 / Victoria / Melbourne
...查询流程:
用户输入 IP(如 1.0.1.1)
│
▼
二分查找 IP 地址段数据库
│
▼
命中段:1.0.1.0 - 1.0.3.255
│
▼
返回:中国 / 福建省 / 福州市 / 中国电信主流 IP 数据库格式
| 数据库 | 格式 | 精度 | 免费版本 |
|---|---|---|---|
| MaxMind GeoIP2 | .mmdb 二进制 | 城市级 | GeoLite2(免费注册) |
| IP2Location | .bin 二进制 | 城市级 | DB1 免费版 |
| 纯真 IP 数据库 | .dat 自定义 | 城市级(国内精准) | 免费 |
| IPDB | .ipdb 二进制 | 城市级 | 部分免费 |
NetPanel 支持 MaxMind GeoIP2(.mmdb) 格式的数据库文件。
功能概述
- 查询单个 IP 的归属地信息(国家、省份、城市、运营商)
- 批量查询多个 IP 地址的归属地
- 支持上传自定义 IP 数据库文件(MaxMind GeoIP2 格式)
- 支持自动更新 IP 数据库
- 为访问控制、WAF 等功能提供地理位置数据
使用说明
单个 IP 查询
进入 IP 地址库 页面,在搜索框中输入 IP 地址,点击查询:
查询结果包含:
| 字段 | 说明 | 示例 |
|---|---|---|
| 国家/地区 | ISO 3166-1 国家代码和名称 | CN / 中国 |
| 省份/州 | 省级行政区划 | 广东省 |
| 城市 | 城市名称 | 深圳市 |
| 运营商/ISP | 互联网服务提供商 | 中国电信 |
| IP 类型 | IP 用途分类 | 家庭宽带 / 数据中心 / 代理 |
| 经纬度 | 大致地理坐标(精度到城市级) | 22.5431, 114.0579 |
批量查询
点击 批量查询 按钮,在文本框中每行输入一个 IP 地址:
1.2.3.4
5.6.7.8
192.168.1.1
2001:db8::1支持 IPv4 和 IPv6 地址,查询结果可导出为 CSV 格式。
数据库配置
使用内置数据库
NetPanel 内置了基础的 IP 地理位置数据库,开箱即用,无需额外配置。
上传自定义数据库
如需更精确的数据,可上传自定义数据库文件:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| IP 数据库文件 | 文件 | ❌ | 上传 MaxMind GeoIP2 格式(.mmdb)的数据库文件 |
| 自动更新 | 布尔 | ❌ | 是否定期自动更新数据库 |
| 更新周期 | 整数 | ❌ | 自动更新间隔(天),默认 7 天 |
获取免费 IP 数据库
MaxMind GeoLite2(推荐)
MaxMind 提供免费的 GeoLite2 数据库,精度到城市级:
- 访问 MaxMind 官网 注册免费账号
- 登录后进入 Download Files 页面
- 下载 GeoLite2-City.mmdb 文件
- 在 NetPanel IP 地址库页面上传该文件
自动更新 License Key
注册 MaxMind 账号后可获取 License Key,配置后 NetPanel 可自动从 MaxMind 下载最新数据库,无需手动更新。
其他免费数据库资源
| 数据库 | 下载地址 | 特点 |
|---|---|---|
| GeoLite2-City | MaxMind | 全球覆盖,城市级精度 |
| ip-api 数据库 | ip-api.com | 提供 API 查询,无需下载 |
| IPIP.net | ipip.net | 国内精度高,部分免费 |
使用场景
场景 1:访问控制地理位置过滤
结合 访问控制 功能,基于 IP 归属地限制访问:
规则示例:
- 只允许中国大陆 IP 访问管理后台
- 拒绝来自特定国家的访问请求
- 对海外 IP 启用额外的身份验证场景 2:安全审计与异常检测
通过查询访问日志中的 IP 归属地,识别异常访问:
异常场景示例:
- 管理员账号从未访问过的国家登录 → 可能是账号被盗
- 短时间内来自多个国家的大量请求 → 可能是 DDoS 攻击
- 来自数据中心 IP 的异常高频访问 → 可能是爬虫或扫描场景 3:DDNS 调试
验证当前公网 IP 的归属地是否符合预期:
1. 查询当前公网 IP 的归属地
2. 确认 ISP 和地区信息是否正确
3. 排查 DDNS 解析异常(如 IP 显示为代理 IP)场景 4:流量分析
分析访问来源的地理分布,了解用户群体:
统计维度:
- 按国家/地区统计访问量
- 按运营商统计访问量
- 识别主要用户群体的地理位置场景 5:WAF 规则优化
结合 WAF 功能,针对特定地区的攻击流量制定规则:
规则示例:
- 来自已知恶意 IP 段的请求直接拦截
- 对来自高风险地区的请求启用严格模式
- 对国内 IP 放宽访问限制数据精度说明
数据库精度
IP 归属地数据基于 IP 数据库,精度取决于数据库的质量和更新频率:
| IP 类型 | 典型精度 |
|---|---|
| 数据中心/云服务器 IP | 精确到城市,通常准确 |
| 家庭宽带 IP | 精确到城市,偶有偏差 |
| 移动网络 IP | 精确到省份,城市可能不准 |
| VPN/代理 IP | 可能显示为代理服务器所在地,非真实位置 |
| IPv6 地址 | 数据库覆盖率较低,精度可能较差 |
数据时效性
IP 地址段的分配会随时间变化,建议定期更新数据库(每周或每月)以保持数据准确性。MaxMind GeoLite2 数据库每周二更新一次。
性能优化建议
| 优化项 | 建议 |
|---|---|
| 数据库选择 | 优先使用 .mmdb 二进制格式,查询速度最快 |
| 缓存查询结果 | 对频繁查询的 IP 启用缓存,减少数据库读取 |
| 定期更新 | 启用自动更新,保持数据准确性 |
| 批量查询 | 需要查询多个 IP 时使用批量查询,效率更高 |
注意事项
自定义数据库
如果需要更精确的 IP 归属地数据,可以上传 MaxMind GeoIP2 格式的数据库文件。MaxMind 提供免费的 GeoLite2 数据库,可从其官网下载(需注册免费账号)。
隐私说明
IP 地址库功能仅在本地进行查询,不会将 IP 地址发送到外部服务器(使用本地数据库文件时)。如果使用在线 API 查询,请注意相关隐私政策。