Skip to content

网络调试助手网页版,适合工控机无界面时调试使用

License

Notifications You must be signed in to change notification settings

600888/net-tools

Repository files navigation

网络调试助手

一个功能强大的网络调试工具,支持TCP/UDP和串口通信,具有现代化的Web界面。

新版本特性:使用PyInstaller打包成独立的二进制可执行文件,无需Python环境

界面展示

  • 网络调试

  • 串口调试

功能特性

🌐 网络通信

  • TCP客户端/服务器模式:支持TCP连接的建立、数据收发
  • UDP通信:支持UDP数据包的发送和接收
  • 实时监控:WebSocket实时显示通信数据
  • 多格式支持:文本和十六进制格式数据传输

🔌 串口通信

  • 串口扫描:自动检测可用串口设备
  • 参数配置:波特率、数据位、停止位、校验位等
  • 实时数据:实时显示串口收发数据
  • 统计信息:发送/接收字节数、错误计数等

🖥️ Web界面

  • 现代化UI:基于Vue3 + Element Plus
  • 响应式设计:支持桌面和移动设备
  • 实时更新:WebSocket实时数据更新
  • 配置管理:在线配置服务端口等参数

⚙️ 系统管理

  • 服务管理:systemd服务集成
  • 配置持久化:配置自动保存和恢复
  • 系统监控:CPU、内存、磁盘使用情况
  • 日志管理:结构化日志输出
  • 二进制打包:使用PyInstaller打包,无需Python环境

快速开始

方式一:一键构建和安装(推荐)

  1. 一键构建全部

    ./build-all.sh
  2. 安装deb包

    sudo ./install.sh
  3. 启动服务

    net-tools start

方式二:分步构建

  1. 构建二进制文件

    ./build-binary.sh
  2. 构建deb包

    ./build-deb.sh
  3. 安装

    sudo dpkg -i build/net-tools.deb

方式三:直接运行二进制文件

  1. 构建二进制文件

    ./build-binary.sh
  2. 直接运行

    ./dist/net-tools
  3. 访问Web界面

    打开浏览器访问:http://localhost:20001

使用说明

命令行工具

安装deb包后,可使用 net-tools 命令:

net-tools start      # 启动服务
net-tools stop       # 停止服务
net-tools restart    # 重启服务
net-tools status     # 查看状态
net-tools logs       # 查看日志
net-tools config     # 查看配置
net-tools --help     # 帮助信息

Web界面功能

  1. 网络调试

    • 选择客户端或服务器模式
    • 配置IP地址和端口
    • 发送和接收数据
    • 查看连接统计
  2. 串口调试

    • 选择串口设备
    • 配置通信参数
    • 实时数据监控
    • 数据格式转换
  3. 系统设置

    • 修改服务端口
    • 查看系统信息
    • 服务重启

API接口

服务提供RESTful API接口:

  • 网络接口/api/net/*
  • 串口接口/api/serial/*
  • 系统接口/api/system/*
  • WebSocket/ws/net/*, /ws/serial/*

详细API文档:http://localhost:20001/docs

配置说明

服务配置

配置文件位置:/etc/net-tools/config.json

{
  "port": 20001,
  "host": "0.0.0.0"
}

systemd服务

服务文件:/etc/systemd/system/net-tools.service

sudo systemctl enable net-tools    # 开机自启
sudo systemctl start net-tools     # 启动服务
sudo systemctl status net-tools    # 查看状态

项目结构

net-tools/
├── backend/                    # 后端源码
│   ├── main.py                # 主入口
│   ├── config.py              # 配置管理
│   ├── models.py              # 数据模型
│   ├── routes/                # 路由模块
│   ├── services/              # 业务服务
│   ├── utils/                 # 工具函数
│   └── static/                # 前端构建文件
├── front/                     # 前端源码
│   ├── src/                   # Vue源码
│   ├── package.json           # npm配置
│   └── vite.config.js         # 构建配置
├── packaging/                 # deb包配置
│   ├── DEBIAN/                # 包控制文件
│   ├── etc/                   # 系统配置
│   ├── opt/                   # 应用文件
│   └── usr/                   # 可执行文件
└── build-deb.sh              # 构建脚本

技术栈

后端

  • FastAPI:现代Python Web框架
  • uvicorn:ASGI服务器
  • WebSocket:实时通信
  • pyserial:串口通信
  • psutil:系统监控

前端

  • Vue 3:渐进式JavaScript框架
  • Element Plus:Vue 3组件库
  • Vite:现代构建工具
  • Vue Router:路由管理

系统集成

  • systemd:服务管理
  • dpkg:包管理
  • DEBIAN:包格式

开发说明

开发环境搭建(需要Python环境)

  1. 后端开发

    cd backend
    pip3 install -r requirements.txt
    python3 main.py
  2. 前端开发

    cd front
    npm install
    npm run dev
  3. 快速开发启动

    ./dev-start.sh  # 自动安装依赖并启动

构建部署

  1. 一键构建全部

    ./build-all.sh
  2. 分步构建

    # 构建前端
    cd front
    npm run build
    
    # 构建二进制文件
    ./build-binary.sh
    
    # 构建deb包
    ./build-deb.sh
  3. 测试二进制文件

    ./dist/net-tools

故障排除

常见问题

  1. 端口被占用

    sudo netstat -tlnp | grep :20001
  2. 权限问题

    sudo chown -R nettools:nettools /opt/net-tools
  3. 依赖缺失

    pip3 install -r /opt/net-tools/requirements.txt
  4. 服务状态

    sudo systemctl status net-tools
    sudo journalctl -u net-tools -f

日志查看

# 服务日志
sudo journalctl -u net-tools -f

# 系统日志
tail -f /var/log/syslog | grep net-tools

许可证

Apache License 2.0

贡献

欢迎提交Issue和Pull Request!

联系方式

  • 项目主页:[GitHub Repository]
  • 问题反馈:[Issues]
  • 邮箱:1755696012@qq.com

About

网络调试助手网页版,适合工控机无界面时调试使用

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published