告别繁琐的 Linux 转发命令与复杂的网络配置!本文为你深度解析基于 Go 语言开发的高效局域网代理转发工具
my-proxy。它集成了 TCP/UDP/HTTP/SOCKS5 全协议支持,提供高颜值的 Web 界面与极其丝滑的 CLI 交互,无任何外部依赖,是提升团队研发与运维效率的"网络瑞士军刀"。

在日常的后端开发、系统集成以及复杂网络环境的测试工作中,网络链路的打通与调试往往占据了研发人员大量的精力。
你是否也经常遇到以下这些棘手且耗时的场景?
- 局域网隔离 :内网环境中的核心数据库或 SSH 服务只允许特定中转机访问,其他开发人员想要临时连接,需要去研究
iptables或firewalld晦涩难记的转发命令。 - 轻量代理需求:为了给测试平板、物联网设备或者刚装好的虚拟机提供临时的 HTTP/SOCKS5 代理用于抓包或联网,不得不去部署庞大的传统代理软件,甚至还要手写一堆复杂的 Nginx 配置文件。
- 多协议并存:某些物联网设备采用 UDP 协议进行数据上报,而市面上许多轻量级转发工具仅支持 TCP,导致协议兼容问题层出不穷。
面对这些高频且琐碎的网络痛点,今天我们要深度推荐一款在 GitHub 上非常扎实、高效率的开源网络利器------up-zero/my-proxy。它是一款专为局域网场景打造的万能代理转发工具,凭借其精简的设计与强大的功能,堪称工程师工具箱里的"网络瑞士军刀"。
核心特点
my-proxy 的设计理念非常明确:把复杂的底层网络转发逻辑封装起来,把极简、直观的操作留给使用者。 纵观同类工具,它具备以下四个非常核心的竞争优势:
1. 全协议制霸,覆盖绝大多数工业场景
它不仅支持基础的 TCP 转发 ,还原生支持 UDP 转发 、HTTP 代理 以及 SOCKS5 代理。无论是网页服务、关系型数据库、SSH 远程连接,还是物联网的非连接态数据流,它都能稳定拿捏,一套工具即可解决 95% 以上的内网中转需求。
2. 独创"双模配置":兼顾效率与直观
这是 my-proxy 最具亮点的功能设计,它同时提供了两种完全不同的配置交互模式:
- WebUI 可视化面板:采用现代化、极简主义的现代 Web 界面。团队成员可以通过浏览器动动鼠标,直观地创建、暂停或删除转发规则,各项链路状态一目了然。
- CLI 交互式命令行:专为终端重度依赖者设计。它不是干巴巴的参数传参,而是采用了高级的终端引导式交互,不用死记硬背命令行参数,跟着提示按回车即可完成配置。
3. 纯 Go 打造,零依赖单文件运行
得益于 Go 语言优秀的跨编译特性与并发性能,my-proxy 编译后是一个完全独立的二进制程序。它不需要安装任何运行时环境(如 Python、Node.js 等),也不依赖动态链接库,扔进任何纯净的 Linux、Windows 或 macOS 系统中即可直接运行。绿色无污染,完美契合生产环境对于"精简与安全"的要求。
部署教程
my-proxy 的部署过程精简到了极致,没有任何繁琐的配置步骤。以下以主流的 Linux 环境为例进行演示:
安装
官方提供了一键安装脚本,Linux 环境下直接执行即可
bash
curl -fsSL https://raw.githubusercontent.com/up-zero/my-proxy/master/scripts/install.sh | bash
如果服务器网络不方便,也可以直接前往 GitHub 的 Releases 页面下载对应架构的最新二进制发行版。赋予执行权限后,推荐使用 nohup、screen 或者 systemd 让其在后台稳定长驻运行,为方便使用 CLI,可将其拷贝到 /usr/local/bin 中:
bash
# 赋予二进制文件可执行权限
chmod +x my-proxy
# 启动服务并让其在后台运行
nohup my-proxy serve > my-proxy.log 2>&1 &
获取服务信息
如果你在后续维护中忘记了面板地址或密码,无需查看庞大的日志文件。随时在终端执行以下命令,即可秒级获取当前的认证信息:
bash
my-proxy info
输出案例:
bash
my-proxy 1.1.0
+----------+-----------------------------+
| Address | http://192.168.10.182:12312 |
| Username | admin |
| Password | VIT9CJLj |
+----------+-----------------------------+
双模配置
CLI 交互模式
my-proxy 的命令行工具设计得极为人性化。以创建一条新的转发规则为例,我们只需在终端输入:
bash
my-proxy create
此时终端会立刻激活交互式菜单,你可以通过键盘的 ← → 方向键切换协议,使用 ↑ ↓ 或 Tab 键在各个输入框之间切换,完全不需要去背记诸如 -p、-t 等繁琐的指令参数:
txt
Proxy Config
Type: [TCP] UDP HTTP SOCKS5
Name: proxy name
Listen Address: eg: 192.168.1.2
Listen Port: eg: 8080
Target Address: eg: 192.168.1.8
Target Port: eg: 8093
Use 'tab'/'shift+tab' or '↑'/'↓' to switch fields, '←'/'→' to select types, 'enter' to submit, 'q' or 'ctrl+c' to exit.
配置完成后敲击 Enter 提交,规则便会实时写入并生效,响应速度极快。
- 想看当前运行了哪些转发?输入:
./my-proxy status - 想编辑现有的某条规则?输入:
./my-proxy edit <规则名称>
WebUI 可视化模式
如果你更倾向于图形化管理,或者需要将管理权限共享给团队中的非技术人员,WebUI 则是最佳选择。
在浏览器中输入启动时提示的地址(例如 http://192.168.10.181:12312),输入账号 admin 和动态生成的密码即可登录。在面板中,所有的 TCP/UDP 链路状态、流量吞吐情况均以直观的卡片形式平铺展现。点击"添加"即可通过可视化表单秒级完成规则的增删改查。

典型应用场景示例
为了让大家更清晰地了解 my-proxy 在实际生产与开发中能带来多大的效率提升,我们梳理了三个最经典的落地场景:
1:内网核心数据库/SSH 端口的跨网段安全中转(TCP 转发)
-
应用背景 :开发内网中有一台核心 MySQL 数据库,IP 为
192.168.31.128,运行在标准的3306端口。因为安全合规防火墙的限制,只有研发组长的一台固定中转机192.168.31.181有权限访问它。现在团队其他开发同学也急需连入该数据库进行联调。 -
配置方案 :在中转机上通过
my-proxy建立一个 TCP 转发规则:- 协议:TCP
- 规则名称:mysql-bridge
- 本地监听端口 :
13306 - 目标地址 :
192.168.31.128 - 目标端口 :
3306
-
效果 :其他开发人员只需在本地数据库软件中连接
192.168.31.181:13306,数据便会被安全、无损地中转至核心数据库,无需频繁修改防火墙策略。
2:一键搭建局域网共享上网通道(SOCKS5 代理)
- 应用背景:在进行移动端 App 测试、物联网设备配网、或者刚安装好的纯净版 Linux 虚拟机环境调测时,这些设备往往处于断网隔离状态,但又急需连网下载依赖包或进行接口联调。
- 配置方案 :在任意一台具备外网访问权限的机器上,运行
my-proxy并开启一个 SOCKS5 代理服务,监听端口设为8118。 - 效果 :测试设备或虚拟机只需在其网络代理设置中,将代理服务器 IP 指向该机器的内网 IP,端口填写
8118,即可瞬间共享网络,极大简化了网络拓扑的配置成本。
结语
在现代软件工程中,优秀的工具往往具备"把复杂留给底层,把简单留给用户"的共性。up-zero/my-proxy 正是这样一款纯粹、聚焦、且工业感十足的内网效率利器。它摒弃了冗余的花哨功能,专注于将"代理"与"转发"两件事在体验上做到极致。
如果你也经常需要处理各种烦琐的网络中转、端口映射和临时代理问题,强烈建议将这款单文件工具收入你的常备极客工具箱中。
- 开源地址 :
https://github.com/up-zero/my-proxy - 友情提示 :开源不易,如果你觉得这款工具确实切中了你的痛点,不妨前往 GitHub 给作者点一个 Star 予以支持!