网络流量可视化分析面板Neko Master
简介
什么是 Neko Master ?
Neko Master是一个开源的网络流量可视化分析面板,专为现代网关环境设计。它可以帮助用户清晰地查看和分析网络流量,支持Clash/Mihomo和Surge等多种网关类型。
Neko(ねこ)在日语中意为”猫”,发音为 /ˈneɪkoʊ/。就像猫一样,Neko Master 安静而精确地观察着网络流量。它是一个轻量级的分析仪表板,专为现代网关环境而设计。
主要特点
- 实时监控:通过
WebSocket实时采集流量数据,毫秒级延迟 - 趋势分析:多维度流量趋势展示,支持
30分钟/1小时/24小时时间窗口 - 域名分析:查看每个域名的流量、关联
IP和连接数 - IP 分析:显示
ASN信息、地理位置和关联域名 - 代理节点统计:展示每个代理节点的流量分布和连接数
- 多网关支持:同时监控多个
OpenClash后端实例 - PWA 支持:可安装为桌面应用,获得原生体验
- 深色模式:支持浅色/深色/系统主题切换
- 国际化:支持中英文无缝切换
- Agent 部署:支持在远程设备(
OpenWrt、Linux、macOS)上部署采集代理 - ClickHouse 可选:支持大规模数据集的快速聚合查询
- 开源免费:基于
MIT协议开源,可免费使用和修改
应用场景
- 家庭网络监控:实时监控家庭网关流量,了解各设备网络使用情况
- 代理节点管理:查看各代理节点的流量分布,优化节点选择
- 域名流量分析:分析哪些域名占用最多带宽,识别异常流量
- 开发者调试:开发人员可以快速查看和调试网络请求
- 多网关统一管理:同时监控多个网关实例,集中管理

Neko Master 是一个轻量级、现代化的网络流量分析工具,让网络流量可视化变得简单优雅。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 neko-master,选择第二个 foru17/neko-master,版本选择 latest。
本文写作时,
latest版本对应为最新1.3.6版本

卷
在 docker 文件夹中,创建一个新文件夹 neko-master,并在其中建一个子文件夹 data
| 文件夹 | 装载路径 | 说明 |
|---|---|---|
docker/neko-master/data |
/app/data |
存放 SQLite 数据库和配置文件 |
docker/neko-master/geoip |
/app/data/geoip |
本地 MMDB 地理 IP 数据库(可选) |

提示:
GeoIP数据库文件需要从外部下载,推荐来源:https://github.com/P3TERX/GeoLite.mmdb
需要的文件:GeoLite2-City.mmdb(必需)、GeoLite2-ASN.mmdb(必需)、GeoLite2-Country.mmdb(可选)
端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
| 本地端口 | 容器端口 |
|---|---|
3500 |
3000 |
3501 |
3001 |
3502 |
3002 |
端口说明:
3500:Web UI访问端口(必须)3501:API端口(可选,前端默认走同源/api,一般无需对外开放)3502:WebSocket实时推送端口(可选,反向代理转发实时数据时需要)

环境
| 可变 | 值 |
|---|---|
NODE_ENV |
production(固定值) |
COOKIE_SECRET |
至少 32 位的随机字符串(推荐),可用 openssl rand -hex 32 生成 |
DB_PATH |
/app/data/stats.db(默认值) |
GEOIP_LOOKUP_PROVIDER |
online 或 local(可选) |
环境变量说明:
COOKIE_SECRET用于会话Cookie签名,建议使用openssl rand -hex 32生成固定值,否则重启后可能导致会话失效GEOIP_LOOKUP_PROVIDER用于设置IP地理位置查询来源,online为在线接口(默认),local为本地MMDB文件

更多的环境变量请参考官方说明: https://github.com/foru17/neko-master?tab=readme-ov-file#environment-variables-deployment
docker cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
1 | # 新建文件夹 neko-master 和 子目录 |
如果需要 WebSocket 实时推送(推荐配合反向代理使用):
1 | # 实时 WebSocket(推荐使用反向代理) |
docker-compose 安装
将下面的内容保存为 docker-compose.yml 文件:
1 | version: '3.8' |
然后通过 SSH 登录到您的群晖,执行下面的命令:
1 | # 新建文件夹 neko-master 和 子目录 |

提示:如果只需要基本功能,仅暴露
3500端口即可。如果WebSocket未路由,应用会自动降级为HTTP轮询(约5秒刷新)。为了获得完整的实时体验,建议通过反向代理将/_cm_ws路径路由到3502端口。
运行
在浏览器中访问 http://<群晖IP>:3500
- 首次访问会弹出网关配置对话框
- 填写网关连接信息:
- Name:自定义名称(如”mihomo”)
- Type:选择网关类型(
Clash/Mihomo或Surge) - Host:网关后端地址(如
192.168.0.199) - Port:网关后端端口(如
9090) - Token:如果网关设置了
Secret则填写,否则留空
- 点击”添加后端”保存配置
按照 群晖上用Docker部署Mihomo实录 中 config.yaml 中的设置
1 | external-controller: 0.0.0.0:9090 |

如果设置无误,会看到连接成功的提示,并进入主界面

稍等一些就会有数据了

💡 获取网关地址:进入网关控制面板(如
Clash Verge)→ 启用”外部控制”→ 复制监听地址和API秘钥

注意事项
- 数据持久化:务必挂载
./data目录到宿主机,否则容器重启后数据会丢失 - Cookie 密钥:生产环境必须设置固定的
COOKIE_SECRET,否则重启后会话可能失效 - 端口冲突:如果默认端口被占用,可通过
.env文件修改WEB_EXTERNAL_PORT、API_EXTERNAL_PORT、WS_EXTERNAL_PORT - GeoIP 数据库:MMDB 文件较大,未包含在镜像中,需自行下载并挂载到
./geoip目录 - 实时推送:仅暴露 3000 端口时,应用会降级为 HTTP 轮询(约 5 秒),如需实时体验需配置 WebSocket 路由
- 安全建议:不要在公网暴露
FORCE_ACCESS_CONTROL_OFF=true,仅在忘记Token时临时使用 - 架构支持:Docker 镜像支持
linux/amd64和linux/arm64,群晖 ARM 架构机型也可使用 - Agent 部署:支持在远程设备上部署采集代理,实现集中式管理,详见官方
Agent文档
参考文档
Neko Master: A modern and elegant dashboard for network traffic visualization and analysis
地址:https://github.com/foru17/neko-masterforu17/neko-master - Docker 镜像 | Docker Hub
地址:https://hub.docker.com/r/foru17/neko-masterNeko Master: 从 0 到 1K+ Star 的 Vibe Coding 实践 | 罗磊的独立博客
地址:https://luolei.org/neko-master-vibe-coding系统架构文档
地址:https://github.com/foru17/neko-master/blob/main/docs/architecture.en.md