WaveDigger:挖掘无线信号,发现其物理位置
摘要
WaveDigger 是一个基于网络的工具,利用 Apple 的 WLOC API 帮助发现 Wi-Fi 接入点和基站的物理位置,并提供由 deck.gl 驱动的交互式地图可视化。
查看缓存全文
缓存时间: 2026/09/24 16:10
christianrowlands/wavedigger
来源: https://github.com/christianrowlands/wavedigger
WaveDigger
深入无线信号,发现其物理位置。
WaveDigger 帮助您通过 BSSID(MAC地址)查找 Wi-Fi 接入点,并通过网络参数查找蜂窝基站(LTE 和 5G NR)。
基于 Next.js、TypeScript 和 deck.gl 构建,用于交互式地图可视化。
托管版本可访问:https://wavedigger.networksurvey.app。
功能
- BSSID搜索:输入 BSSID 以查找其大致位置
- 输入验证:自动格式化并验证 BSSID 输入
- 支持格式:
AA:BB:CC:DD:EE:FF、AA-BB-CC-DD-EE-FF、AABBCCDDEEFF
- 支持格式:
- 蜂窝基站搜索:查询 LTE 基站(MCC、MNC、TAC、Cell ID)或 5G NR 基站(MCC、MNC、TAC、NCI)。NR 搜索会返回目标基站及同一集群内的周边 NR 基站。
- 交互式地图:在 deck.gl 驱动的地图上可视化结果
- 搜索历史:跟踪最近的搜索记录以便快速访问
- 响应式设计:适用于桌面和移动设备
致谢
🙏 此项目之所以能够实现,离不开 apple-corelocation-experiments(https://github.com/acheong08/apple-corelocation-experiments)团队的杰出工作。
WaveDigger 建立在他们的研究以及对 Apple 位置服务 API 的逆向工程之上。具体而言,我们使用了:
- 他们为 Apple WLOC API 提供的 protobuf 定义
- API 端点及请求/响应格式的文档
- 对坐标编码和 API 行为的理解
- 有效请求所需的初始字节前缀
他们对 Apple 未公开位置服务的理解与记录,使得像 WaveDigger 这样的项目得以存在。请查看他们的仓库,了解原始研究以及使用 Apple 位置服务的更多工具。
入门指南
先决条件
- Node.js 24+ 和 npm
安装
- 安装依赖项:
npm install - (可选)添加 Mapbox 令牌以获得增强的地图瓦片:
- 从 Mapbox(https://www.mapbox.com/)获取令牌
- 将其添加到
.env.local:NEXT_PUBLIC_MAPBOX_TOKEN=your_token_here
运行开发服务器
npm run dev
打开 http://localhost:3000 查看应用。
技术细节
架构
- 前端:Next.js 15 与 TypeScript
- 地图可视化:deck.gl 与 react-map-gl
- 样式:Tailwind CSS
- API:Next.js API 路由
真实的 Apple WLOC API
应用使用真实的 Apple WLOC API 查询 BSSID 位置。
此实现基于 apple-corelocation-experiments(https://github.com/acheong08/apple-corelocation-experiments)项目的研究和 protobuf 定义。
API 实现细节:
- 使用 protobuf 与 Apple 服务器通信
- 向
https://gs-loc.apple.com/clls/wloc发送请求 - 处理坐标转换(Apple 使用带 8 位小数的 int64)
- 支持默认和中国区域端点
使用真实 BSSID 进行测试
测试应用:
- 从您的路由器或接入点获取真实的 Wi-Fi BSSID(MAC地址)
- 以任意支持的格式输入
- 应用将查询 Apple 数据库,若找到则显示位置
注意:并非所有 BSSID 都在 Apple 的数据库中。新部署或私有的接入点可能没有位置数据。
功能路线图
- 导出结果:将搜索结果下载为 JSON/CSV
- TAC 集群视图:浏览特定 TAC 中的所有基站,无需具体的 Cell ID 或 NCI
许可证
WaveDigger 基于 GNU Affero 通用公共许可证 v3.0 授权。
如果您将此软件的修改版本作为网络服务运行,AGPL 要求您向该服务的用户提供修改后的源代码。
相似文章
@IndieDevHailey: 这个开源项目,让你的 iOS 随便改位置! wloc 一键把 iPhone 网络定位改到全世界任何地方(香港、东京、纽约、巴黎……随便选)! - 地图上一点就行,无需手动输经纬度 - 支持 Surge / Quantumult X / L…
wloc 是一个开源工具,允许 iOS 用户通过地图选点一键更改网络定位到世界各地,支持多种代理应用,无需越狱。
Wi-Fi数据包捕获与mac OS(2025)
本文介绍如何在macOS上使用内置工具和AirTool 2应用捕获Wi-Fi数据包,面向网络工程师提供实用的数据包捕获技巧。
@Lee_points: 我在网上已看到关于 Wi-Fi Calling、WLOC 相关项目不下 10 次,这是首次见有人将两者放到 OpenWrt 路由器里。 它将“Wi-Fi Calling 走指定代理节点”和“让 iPhone 的 Apple WLOC 定位…
本文介绍了首个将Wi-Fi Calling和Apple WLOC集成到OpenWrt路由器的项目,允许通过代理节点处理Wi-Fi Calling和定位请求,无需手机端额外操作,适合技术爱好者尝试。
QuadRF 可以探测无人机并透过墙壁看到 WiFi 信号
QuadRF 是一款基于 Raspberry Pi 5 的相控阵无线电,能够探测无人机并透过墙壁可视化 WiFi 信号,并配有用于高级信号处理的开源软件。
Wave
Wave是一款语音转文字工具,提供本地和云端两种处理选项,让用户自由选择隐私与性能的平衡。