该项目完全是由ChatGPT-5.3-Codex生成的
用途非常狭窄
在尝试使用该项目提供的内容时,请首先确认
1.你知道SRV解析记录是什么
2.完全了解Transfer的局限性
一种可能的使用场景是:
玩家反应SRV解析问题,时常出现“未知的主机名”
且在相同IP上存在不同验证方式的服务器
且你打算隐藏端口
以下是GPT生成的原始README
一个按 玩家访问域名 路由的 MC 前置服务:
- 状态查询(MOTD/在线人数/图标) 按域名转发到对应后端,并把后端返回内容原样回传给客户端。
- 登录后不进前置服世界,直接通过 Minecraft 新版
Transfer功能把客户端转移到对应后端服务器。
适配思路:面向 1.20.5+(含配置阶段 Transfer) 的现代客户端流程。
- 安装 Python 3.10+
- 安装依赖:
pip install -r requirements.txt- 编辑
config.toml中的域名与后端地址 - 启动:
python server.pyproxy.listen_host / listen_port:前置服务监听地址routes.<domain>.status:该域名状态查询要去哪个后端(用于 MOTD/在线数/图标)routes.<domain>.transfer:该域名登录后要 transfer 到哪个目标地址- 未匹配到任何
routes.<domain>时:前置会直接静默断开,不返回任何内容
- 读取握手中的
Server Address作为玩家访问域名。 - Status 阶段:向目标后端发起一次状态查询,并将 JSON 回传。
- Login 阶段:
- 接收
Login Start - 回
Login Success - 等待
Login Acknowledged - 下发配置阶段
Transfer包(Host + Port)
- 接收
- 这是一个“转移网关”,不是传统全双工代理,不会持续转发游戏流量。
- 要确保客户端版本支持
Transfer。 - 若你网络上有 Bungee/Velocity 等,还要避免它们拦截或改写该流程。
- 若需要 TLS/防护/CDN,请在前面再加 L4/L7 组件。