WaveDigger:挖掘无线信号,发现其物理位置

Hacker News Top 工具

摘要

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

安装

  1. 安装依赖项:
    npm install
    
  2. (可选)添加 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 进行测试

测试应用:

  1. 从您的路由器或接入点获取真实的 Wi-Fi BSSID(MAC地址)
  2. 以任意支持的格式输入
  3. 应用将查询 Apple 数据库,若找到则显示位置
    注意:并非所有 BSSID 都在 Apple 的数据库中。新部署或私有的接入点可能没有位置数据。

功能路线图

  • 导出结果:将搜索结果下载为 JSON/CSV
  • TAC 集群视图:浏览特定 TAC 中的所有基站,无需具体的 Cell ID 或 NCI

许可证

WaveDigger 基于 GNU Affero 通用公共许可证 v3.0 授权。
如果您将此软件的修改版本作为网络服务运行,AGPL 要求您向该服务的用户提供修改后的源代码。

相似文章

Wi-Fi数据包捕获与mac OS(2025)

Lobsters Hottest

本文介绍如何在macOS上使用内置工具和AirTool 2应用捕获Wi-Fi数据包,面向网络工程师提供实用的数据包捕获技巧。

Wave

Product Hunt

Wave是一款语音转文字工具,提供本地和云端两种处理选项,让用户自由选择隐私与性能的平衡。