
3 条命令还原号码信息指纹PhoneInfoga 多源扫描工具完整指南【免费下载链接】phoneinfogaInformation gathering framework for phone numbers项目地址: https://gitcode.com/GitHub_Trending/ph/phoneinfoga拿到一个陌生号码想核实它的运营商、线路类型、是不是 VoIP 号段通常要在搜索引擎、社交平台、运营商查询站之间逐个翻查。PhoneInfoga 是一个 Go 语言编写的电话号码信息采集框架一条命令并行跑 5 个内置扫描器把国家、运营商、线路类型、VoIP 归属和网络足迹链接一次性汇总输出。快速上手从安装到第一次扫描结果只需 3 条命令项目提供 Homebrew、Docker、直接下载二进制三种安装方式macOS 用 Homebrew 最省事。最短路径brew install phoneinfoga # macOS 一行安装 phoneinfoga scan -n 1 555-444-3333 # 扫描一个号码国家码必填 phoneinfoga serve # 启动 Web 界面默认端口 5000 # Docker 等价命令docker run --rm -p 5000:5000 sundowndev/phoneinfoga servescan的输出按扫描器分节local 一节给出解析出的国家和多种格式googlesearch 一节是一批可在浏览器打开的搜索链接ovh 一节告诉你号码是否属于 OVH 电信的号段。 ( ) -等特殊字符可以直接输入工具会自动处理输入必须带国家码前缀如33、41本次想跳过某个扫描器用-D 扫描器名只想暴露 REST API 不给 Web 界面给 serve 加--no-client工作原理5 个内置扫描器如何分工全部扫描器实现位于 lib/remote/每个扫描器只负责一个数据源没配置凭据的会被自动跳过内置扫描器数据来源输出内容配置要求local内置号码解析库号码 4 种格式、国家、运营商无numverify国际号码验证 APIAPIlayer号码有效性、线路类型、运营商NUMVERIFY_API_KEYgooglesearchGoogle 搜索引擎社交、一次性号码、声誉等 5 类足迹链接无googlecseGoogle 自定义搜索 API自动解析的网络搜索结果GOOGLECSE_CXGOOGLE_API_KEYovhOVH 电信 REST API是否属于 OVH VoIP 号段、号段、城市无“扫描器”是这里的一个可插拔组件统一接口、独立运行“足迹”指号码留在网络上的痕迹比如社媒主页、诈骗举报帖。一个关键细节没配任何密钥时local、googlesearch、ovh 这 3 个扫描器也能跑第一次扫描就能拿到国家、运营商和一批搜索链接。输入号码先经过 lib/number/number.go 解析成本地、E.164、国际等 4 种格式并识别国家和运营商。E.164 是一种国际标准写法统一成“加号 国家码 号码”的形式。标准化之后所有扫描器共享同一份结果保证后续查询格式一致。关键实现并行调度如何隔离故障并发核心是 lib/remote/remote.go 里的Scan方法每个扫描器各占一个 goroutine总耗时取决于最慢的那个源而不是所有源耗时之和for _, s : range r.scanners { wg.Add(1) go func(s Scanner) { defer wg.Done() if data, err : s.Run(*n, opts); err nil data ! nil { r.addResult(s.Name(), data) } else if err ! nil { r.addError(s.Name(), err) } }(s) } wg.Wait()上面是精简版实际代码还有两处防护Run之前先做一次DryRun预检把没密钥或不支持该国家码的扫描器直接跳过每个 goroutine 都包了 panic 恢复插件失控也只会被降级成一条错误记录。结果和错误分别存进两个 map以扫描器名为键。某个数据源失败只记录错误条目其余 4 路照常输出并发写结果用 RWMutex 保护避免 map 并发写冲突整个过程无状态号码只在内存中存在输出后即可丢弃进阶用法密钥配置与插件扩展API 密钥怎么配所有扫描器都从环境变量读配置最简单的做法是写进当前目录的.env文件工具会自动解析NUMVERIFY_API_KEYvalue GOOGLECSE_CXvalue GOOGLE_API_KEYvalue换文件名用--env-file如phoneinfoga scan -n 4176418xxxx --env-file.env.localgooglecse 免费额度约每天 100 次查询约 50 次扫描GOOGLECSE_MAX_RESULTS默认每次取 10 条走 REST API 调用时密钥可以在每个请求里单独传优先级高于环境变量numverify 的密钥在 APIlayer 平台申请免费档位有每月配额各扫描器的输出示例和参数表可查 docs/getting-started/scanners.md。插件扩展入口内置数据源不够用时用 Go 写一个自定义扫描器编译成共享对象后用--plugin加载。扫描器只需实现Name、Description、DryRun、Run4 个方法并在init()里注册。examples/plugin/ 有完整模板响应结构体加上字段标签就能控制哪些字段显示在控制台。DryRun是运行前预检ovh 扫描器就靠它只处理 33、32、44、34、41 这 5 个欧洲国家码其他号码在这一步被直接过滤不发起任何请求。REST API 与程序化调用Web 界面用 Vue.js 编写后端是无状态的 Go REST API不需要数据库三种嵌入方式Go module 方式在自己的脚本里直接调用解析函数和单个扫描器HTTP 调 REST API 按请求传密钥适合已有调查系统的团队Docker 部署整套 Web 界面无状态设计意味着多实例扩容不需要共享存储落地场景4 类人会用到它核实疑似诈骗来电适合安全、风控人员。numverify 先看运营商和线路类型googlesearch 再查诈骗举报和“这是谁”类站点单个号码的核查一条命令完成VoIP 号码识别适合反诈与客服团队。ovh 扫描器能判断欧洲号码是否属于 OVH 电信的 VoIP 号段并给出城市信息自动化调查管线适合开发者。REST API 和 Go module 能并入既有调查工具googlecse 自动解析结果省去人工开浏览器合规边界把握适合对合规敏感的团队。项目明确不提供号码或机主的实时定位不做“追踪”和“破解”类能力只做公开信息的聚合与整理项目采用 GNU General Public License v3.0 协议贡献流程见 docs 目录下的贡献指南Docker 编排配置见 support/docker/ 目录。 Web 服务无状态、无需持久化存储生产环境用反代挂一个实例即可密钥过期时改一下.env再重启就能恢复全量扫描。【免费下载链接】phoneinfogaInformation gathering framework for phone numbers项目地址: https://gitcode.com/GitHub_Trending/ph/phoneinfoga创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考