当前位置: 首页 > news >正文

网络连接实时可视化利器TapMap

简介

什么是 TapMap ?

TapMap是一个开源的实时网络连接可视化工具,它通过读取本机网络套接字数据,结合IP地理定位,在交互式世界地图上动态展示你的计算机正在与全球哪些地方建立连接。它帮助你发现那些平时完全看不见的网络活动——哪些服务在联网、连到了哪里、哪些是新出现的。

主要特点

  • 实时世界地图可视化:基于DashPlotly构建的交互式地图,连接点动态展示在全球地图上,支持悬停查看和点击获取详细信息
  • 30 天活动洞察:自动构建滚动30天历史记录,识别新出现的应用、ASN提供商、国家和端口,区分常规连接和异常活动
  • 每日活动报告:生成应用连接模式分析(一次性、偶尔、重复、稳定)、提供商集中度、国家活动时间线等综合报告
  • 多维度展示:不仅显示互联网连接,还展示内网(LAN/LOCAL)服务和本地开放端口(TCP LISTEN/UDP bound
  • 键盘快捷操作:支持D(每日报告)、I(洞察面板)、U(未映射服务)、L(内网服务)、O(开放端口)等快捷键
  • 隐私安全:所有数据本地处理,不发送任何连接数据到外部服务,无需注册或账户
  • 开源免费:基于MIT协议开源,可免费使用和修改

应用场景

  • 个人网络透明度:了解自己电脑上哪些应用在联网、连到了哪里,发现意想不到的后台连接
  • 安全异常检测:当有新应用、新国家或新端口出现时及时察觉,可能意味着配置错误、后台服务或潜在的恶意软件
  • 网络行为分析:通过30天历史数据洞察网络活动模式,区分日常连接和异常行为
  • 开发测试环境:开发人员可以快速了解应用的网络行为,验证网络请求的目标地址是否符合预期

TapMap是一个帮助你看清电脑网络连接全貌的轻量级工具,让不可见的网络活动变得一目了然。

安装

在群晖上以 Docker 方式安装。

TapMap本身支持主流操作系统平台,

Docker版需要读取宿主机网络栈和进程信息,必须以host网络模式和pid模式运行。

准备工作

使用TapMap需要准备MaxMind GeoLite2地理定位数据库文件:

  1. 访问 MaxMind 官网 免费注册账号

  1. 下载GeoLite2-City.mmdbGeoLite2-ASN.mmdb两个文件
  2. 将这两个文件放到数据卷映射目录中

如果这一步没做,打开首界面会提示Missing GeoIP databases

docker cli 安装

如果你熟悉命令行,可能用docker cli更快捷

# 新建文件夹 tapmap 和 子目录mkdir-p/volume1/docker/tapmap/data# 进入 tapmap 目录cd/volume1/docker/tapmap# 运行容器dockerrun-d\--networkhost\--pidhost\--nametapmap\-v$(pwd)/data:/data\-eTAPMAP_IN_DOCKER=1\-eTAPMAP_PORT="8060"\olalie/tapmap:latest

文件夹装载路径说明
docker/tapmap/data/data存放GeoIP数据库和活动数据

端口

TapMap使用host网络模式,直接绑定到宿主机网络,端口映射独立设置。

参数
默认端口8050
可通过环境变量修改TAPMAP_PORT

环境

可变
TAPMAP_IN_DOCKER1
TAPMAP_DATA_DIR/data
TAPMAP_PORT8050

环境变量说明

  • TAPMAP_IN_DOCKER启用Docker运行模式
  • TAPMAP_DATA_DIR指定数据目录路径,默认为/data
  • TAPMAP_PORT指定服务端口,默认为8050

docker-compose 安装

也可以用docker-compose安装,将下面的内容保存为docker-compose.yml文件

version:'3.8'services:tapmap:image:olalie/tapmap:latestcontainer_name:tapmaprestart:unless-stoppednetwork_mode:host# 必须:使用宿主机网络栈pid:host# 必须:读取宿主机进程信息volumes:-./data:/data# 存放 GeoIP 数据库和活动数据environment:-TAPMAP_IN_DOCKER=1# 启用 Docker 模式-TAPMAP_DATA_DIR=/data# 数据目录-TAPMAP_PORT=8060# 可选:修改默认端口# - TAPMAP_HOST=0.0.0.0 # 可选:绑定地址

注意network_mode: host是必须的,因为TapMap需要读取宿主机真实的网络套接字数据。这也意味着端口映射直接在宿主机上生效,无需ports配置。

然后通过SSH登录到您的群晖,执行下面的命令:

# 新建文件夹 tapmap 和 子目录mkdir-p/volume1/docker/tapmap/data# 进入 tapmap 目录cd/volume1/docker/tapmap# 将 docker-compose.yml 放入当前目录# 一键启动docker-composeup-d

要启用进程名可见性(Linux上),可以添加以下配置:

cap_add:-SYS_PTRACEsecurity_opt:-apparmor=unconfined

运行

在浏览器中访问http://<群晖IP>:8060即可进入TapMap交互式世界地图界面。

首次使用需要:

  1. 启动后TapMap会自动打开数据目录设置向导
  2. 将下载好的GeoLite2-City.mmdbGeoLite2-ASN.mmdb两个文件复制到数据目录
  3. 点击Recheck GeoIP databases按钮确认数据库加载成功

启用后,地图上会实时显示你的电脑当前建立的网络连接位置

快捷键操作:

  • D— 打开每日活动报告
  • I— 切换洞察面板
  • U— 查看未映射的公共服务
  • L— 查看内网/本地服务
  • O— 查看开放端口
  • R— 重新检查GeoIP数据库
  • ESC— 关闭当前窗口

注意事项

  1. 仅支持 Linux 宿主机TapMapDocker模式需要--network host--pid host,不支持Docker Desktop for Windows/macOS。群晖DSM基于Linux,可以正常使用
  2. GeoIP 数据库必需:没有GeoLite2数据库文件,地图上将不显示任何连接位置信息,需要免费注册MaxMind账号下载
  3. 进程可见性Docker模式下进程名可能不可见,取决于宿主机安全策略。可通过SYS_PTRACE权限和apparmor=unconfined改善
  4. 定期更新数据库:建议每月更新一次GeoLite2数据库文件,以获得准确的地理定位信息
  5. 数据持久化:所有历史活动数据存储在数据卷中,建议定期备份

参考文档

olalie/tapmap: Watch your computer connect across the internet in real time. Discover the world behind your apps.
地址:https://github.com/olalie/tapmap

olalie/tapmap - Docker Hub
地址:https://hub.docker.com/r/olalie/tapmap

TapMap 官方文档
地址:https://olalie.github.io/tapmap/

MaxMind GeoLite2 Free Geolocation Data
地址:https://dev.maxmind.com/geoip/geolite2-free-geolocation-data

http://www.rkmt.cn/news/1431179.html

相关文章:

  • 华硕发布创梦Pro 27 OLED SDI专业显示器:集成nbsp;12G-SDInbsp;与内置色度计
  • 2026古玩古董字画服务机构评测:收藏品交易/收藏品元青花/收藏品古币/收藏品字画/收藏品文玩/收藏品瓷器/收藏品鉴定/选择指南 - 优质品牌商家
  • 终极解决方案:在Linux系统上离线构建drawio-desktop流程图工具
  • 3D高斯泼溅渲染技术优化与实时化实践
  • AI工具如何接管ETL流水线?揭秘2024企业数据中台升级的3个生死转折点
  • 【图像融合】多重逻辑混沌映射加密和解密异或和傅里叶变换图像融合【含Matlab源码 15578期】
  • 2026年好用的AI编程软件有哪些:权威推荐榜单
  • 2026年第二季度大排水生产厂商选哪家?这份深度解析与厂商推荐请收好 - 2026年企业资讯
  • 别再死记硬背KV Cache了!用Python手写一个GPT-2推理过程,带你直观理解Prefill和Decode两阶段
  • 5分钟搞定OFD转PDF:免费开源工具Ofd2Pdf完整使用教程
  • 如何快速将Illustrator矢量设计转换为可编辑的Photoshop图层:Ai2Psd完整指南
  • 噪声注入技术:HPC性能瓶颈分析新方法
  • 用Python给人民币“验明正身”:一个基于颜色矩的SVM纸币面额识别Demo(附完整代码)
  • 2026年生产线推荐供应商品牌排名,瑞德佑业在列 - mypinpai
  • C++中的指针常量、常量指针与常量指针常量详解
  • STL转STEP格式转换器:5分钟掌握CAD工程文件无缝转换技术
  • 如何通过脑的识别加强AI与用户的黏度?
  • 2026年杭州屋面翻新管理团队实力TOP10排行:杭州外立面翻新改造/杭州屋面渗漏治理/杭州屋面漏水维修/杭州屋面维修/选择指南 - 优质品牌商家
  • 2026年金华旧设备回收服务商评测:义乌,东阳,兰溪,金华收破烂上门回收电话/合规与效率双维度 - 优质品牌商家
  • 重庆茅台酒上门回收靠谱判定标准与实操推荐 - 优质品牌商家
  • C++中指针变量的使用指南
  • Windows凭据窃取技术:从SAM数据库提取密码哈希
  • 2026服表培训高评价机构判定:导演培训、戏剧表演培训、配音培训、中日双语播音培训、创尚双语播音怎么样、创尚怎么样选择指南 - 优质品牌商家
  • 别再只用XGBoost了!LightGBM实战调参保姆级指南(附Python代码)
  • 重庆洋酒回收机构排行:重庆红酒回收/重庆老酒回收/重庆茅台酒上门回收/重庆茅台酒回收/2026年靠谱选择推荐 - 优质品牌商家
  • 给洪水预报‘纠偏’:手把手教你用Python实现数值降雨预报的线性缩放(LS)与分位数映射(QM)校正
  • 从‘搞死主机’到‘一次成功’:我的Linux硬盘挂载血泪史与终极UUID配置指南
  • Acer老本装Ubuntu 20.04,WiFi驱动死活不认?我靠这几步终于搞定(附NetworkManager急救法)
  • 6款精品降AI率平台 改写实力出众
  • 别再死记硬背了!用OpenCV+Python搞定相机标定,从棋盘格到内参矩阵的保姆级实战