☰
如何用Horus的geolock命令快速定位IP地址:IP追踪实战教程
2026/10/25 1:52:54 网站建设 项目流程

如何用Horus的geolock命令快速定位IP地址:IP追踪实战教程

Horus 是一款基于 Python 打造的 OSINT(开源情报)与数字取证工具箱,其中的geolock命令专门用于 IP 地址追踪与定位:只需输入一个 IP,就能快速获得该 IP 所在的城市、邮编、经纬度坐标和 ISP(运营商)信息,是新手进行 IP 定位实战的利器。本文带你从零开始,几分钟内跑通完整的 IP 追踪流程。

Horus 是什么?为什么用它做 IP 定位?

Horus 是一个"一站式"调查辅助工具,覆盖安全、枚举、OSINT、取证等多个模块,官方描述为 "An OSINT / digital forensics tool built in Python"。

geolock 属于它的OSINT模块,主打能力如下:

  • 📍免写代码:不用自己拼 API 请求,输入 IP 即可获得结构化结果
  • 🛰️多字段输出:城市、邮编、经纬度坐标、ISP 一次拿全
  • ⚡开箱即用:底层基于 ip-api.com 免费接口,无需申请密钥即可使用
  • 🔗生态互补:若你有 Shodan 付费 API,还可搭配shodan命令做端口与漏洞深挖(见 src/modules/shodan.py)

小提示:README 中特别说明,Shodan 是付费 API,其大量位置相关功能已在 geolock 中提供,geolock 本身就是零门槛的 IP 定位入口。

快速安装:4 步完成 Horus 环境配置

1. 获取项目源码

前提:本地已安装 Python(3.x)。

git clone https://gitcode.com/gh_mirrors/hor/horus.git cd horus

2. 安装依赖

项目依赖已整理在 requirements.txt 中(含requests、shodan、colorama等):

pip install -r requirements.txt

3. 启动主程序

在 horus 根目录执行(Linux/MacOS 用python3,Windows 用py):

python3 horus.py

启动后会看到终端 Banner 和完整命令清单(由 etc/init/banner.py 绘制),geolock 就列在 OSINT 分组下。

两种启动 geolock 命令的方式

方式一:交互模式

运行python3 horus.py后,在[»]提示符下输入命令名即可:

geolock

方式二:命令行参数直接启动

入口脚本 horus.py 注册了-geolock参数,一条命令直达:

python3 horus.py -geolock

两种方式最终都会调用 src/modules/geolock.py 中的geolock()函数。

实战演示:3 步定位一个 IP

以交互模式为例,整个流程只有三步:

步骤操作说明
1输入命令geolock进入 IP 定位模块
2在[?] IP:后输入目标 IP如8.8.8.8
3查看定位结果输出 3 行关键信息

成功后终端会依次打印:

  • Location:城市 | 邮编
  • Coordinates (Latitude | Longitude):纬度 | 经度
  • ISP:所属运营商

输出统一由 src/utils.py 的print_response()加上[+]前缀展示,末尾给出[SUCCESS]标记;若请求失败,则会打印[FAILED]并附带具体异常信息。

实战小建议:拿到经纬度后,可粘贴到地图工具中交叉验证城市定位;再结合 ISP 判断该 IP 是机房、宽带还是数据中心地址,这是 IP 追踪报告里非常有价值的一步。

geolock 背后是怎么工作的?(30 秒看懂源码)

geolock 的实现非常轻,核心逻辑在 src/modules/geolock.py 中:

  1. 启动时读取 src/modules/var/pipes/api_config.json 中的shodan配置项(保证配置文件结构完整);
  2. 将用户输入的 IP 拼接进http://ip-api.com/json/{IP}免费接口并发起请求;
  3. 解析返回的 JSON,提取city、zip、lat、lon、isp字段后格式化输出。

正因为核心定位走的是免费接口,geolock 不需要任何付费密钥即可工作,这也是它对新手最友好的地方。

如果以后想给其他模块(shodan、numlook、vt 等)配置密钥,可以运行:

python3 horus.py -apicon

交互式填入密钥后会写入api_config.json,实现逻辑见 src/apicon.py。⚠️ 注意:若向公共仓库提交代码,务必先清空密钥。

常见问题:定位失败或结果不准怎么办?

  • 提示[FAILED]:多半是网络无法访问 ip-api.com,或输入的不是合法 IPv4 地址(带端口、带域名都不行),请检查网络后重试。
  • 定位粒度是"城市级":IP 地理库基于运营商分配段,城市/经纬度精度较高,但无法精确到个人门牌位置,请勿夸大解读结果。
  • 想要更深度情报:配置 Shodan 付费密钥后,改用shodan命令,可额外获取组织归属、开放端口与 Heartbleed 漏洞状态(见 src/modules/shodan.py)。
  • 合规提醒:OSINT 调查请仅用于合法授权的安全研究与取证场景,尊重数据隐私与当地法律法规。

小结

要点内容
工具Horus(Python OSINT / 数字取证工具箱)
命令geolock(交互输入或-geolock参数)
输出城市 + 邮编、经纬度坐标、ISP
门槛免费接口,无需密钥

跟着本文走完"安装 → 启动 → 输入 IP"三步,你就掌握了用 Horus 的 geolock 命令快速定位 IP 地址的完整方法。对于需要更深层资产情报的进阶玩家,可以继续探索仓库中的 shodan、recpull、mactrace 等模块,把 IP 追踪扩展成一条完整的 OSINT 调查链。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询