298 字
1 分钟
PortCheck 绿联 NAS 端口检测应用

AI 智能摘要

AI 正在生成文章简介,请稍候...

最近申请了绿联NAS的开发者服务,我们在部署Docker的时候会出现端口冲突,但又没什么好的方法快速定位所以就写了这个app。

界面#

界面

功能特性#

  • 端口扫描:扫描 TCP / UDP(含 IPv4 与 IPv6)监听端口。
  • 进程识别:显示每个端口的端口号、协议、监听地址。
  • 进程信息:显示占用端口的进程名与 PID。
  • 容器识别:若进程运行在 Docker 容器内,显示 Docker 容器名(通过 cgroup 识别,并解析 docker ps 容器名)。
  • 筛选与刷新:支持按协议筛选、仅显示 Docker 进程,并定时自动刷新。

技术栈#

分类技术
后端Go 1.22
前端Vue 3 + TypeScript
构建Vite 6 + @ugreen-nas/builder-open
路由Vue Router 4
打包ugcli v1.1.0.12

工作原理#

后端读取 Linux /proc 文件系统完成检测:

  1. 解析 /proc/net/tcp/proc/net/udp/proc/net/tcp6/proc/net/udp6,提取监听端口与对应 socket inode。
  2. 遍历 /proc/<pid>/fd,通过符号链接 socket:[inode] 匹配占用端口的进程 PID。
  3. 读取 /proc/<pid>/comm 获取进程名。
  4. 读取 /proc/<pid>/cgroup,若存在 docker/<id>docker-<id>.scope 则判定为容器进程,并通过 docker ps 将容器 ID 解析为容器名。

开源地址#

16c.top
/
PortCheck
Waiting for api.cnb.cool...
00K
0K
0K
Waiting...
PortCheck 绿联 NAS 端口检测应用
https://16c.top/2026/portcheck/
作者
Young
发布于
2026-08-07
许可协议
CC BY-NC-SA 4.0