ZBProxy-一个简单、快速、高性能的多用途 TCP 中继,主要为搭建 Hypixel 加速 IP 而开发。
项目地址:zbproxy
前言
在全球范围内畅玩《我的世界》(Minecraft)的过程中,玩家往往会遇到由于地理位置差异导致的高延迟问题,影响游戏体验。ZBProxy是一款专为优化《我的世界》服务器连接而设计的高性能代理工具,旨在消除地域间的网络延迟,带给玩家更为流畅的游戏体验。本教程将详细介绍如何从源代码开始,逐步搭建并运行ZBProxy,从而为您的《我的世界》服务器提供稳定、快速的地区性加速服务。
一、准备工作
在开始搭建之前,请确保您的服务器满足以下基本条件:
拥有一台Linux服务器,推荐使用Ubuntu等主流发行版。
已经安装了必要的开发工具链,包括Git用于源码下载,Go语言环境用于编译ZProxy项目。
二、安装宝塔面板
访问宝塔面板官网(https://bt.cn),获取最新安装脚本,并在服务器终端执行安装命令。
根据提示完成宝塔面板的安装及初始化设置,包括创建管理员账号和密码。
三、源码下载
#### 方法一:
- 进入到github下载release或源码-[](https://github.com/layou233/ZBProxy/releases)
2.进入宝塔面板,上传文件到你想要的目录并解压
#### 方法二:
1.安装Git(如果尚未安装)
sudo apt-get install git -y
(对于Debian/Ubuntu)
或
sudo yum install git -y
(对于CentOS/RHEL)
2.克隆ZProxy项目的GitHub仓库
git clone https://github.com/layou233/ZBProxy.git
四、环境搭建并构建项目
1.连接ssh(可用宝塔ssh),安装go环境
2.从官网下载go包go1.22.5.linux-amd64.tar.gz
3.上传到宝塔/www/wwwroot/下,然后在当前路径下打开终端(cd /www/wwwroot),执行解压命令
tar -C /usr/local -xzf go1.22.2.linux-amd64.tar.gz
4.添加go到环境变量
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
5.立即生效
source ~/.bashrc
6.检测go版本
go version
7.设置Golang的GOROOT和GOPATH
8.1 GOROOT:Golang的安装目录,即/usr/local/go
echo 'export GOROOT=/usr/local/go' >> ~/.bashrc
8.2 GOPATH:Golang项目的路径,可自定义,例如/golang/blogs-golang
echo 'export GOPATH=/golang/blogs-golango' >> ~/.bashrc
8.3 立即生效
source ~/.bashrc
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn
9.在golang根目录下添加依赖
go mod tidy
10.下载所有依赖包
go mod download
11.测试go项目是否可以正常启动
检测项目正常启动(此处可提前修改配置文件即ZBProxy.json)
go run main.go
12.正常启动打包
go build main.go
五、运行ZProxy
利用宝塔面板的Go项目管理功能启动ZProxy服务:
在宝塔面板中找到Go环境管理界面,新增一个Go项目。
设置项目路径指向zbproxy可执行文件所在位置。
配置启动参数和其他环境变量(如有需要)。(项目名称不能带特殊符号,需要删除-)
启动服务。
六、配置与测试
根据ZProxy官方文档或项目README文件中的指南,配置相关的选项
配置文件文档:https://launium.com/doc/ZBProxy/config.html
标准配置文件:
{
"Services": [
{
"Name": "HypixelDefault",
"TargetAddress": "mc.hypixel.net",
"TargetPort": 25567,
"Listen": 25567,
"Flow": "auto",
"IPAccess": {
"Mode": ""
},
"Minecraft": {
"EnableHostnameRewrite": true,
"EnableHostnameAccess": false,
"OnlineCount": {
"Max": 114514,
"Online": -1,
"EnableMaxLimit": false
},
"NameAccess": {
"Mode": ""
},
"AnyDestSettings": {},
"PingMode": "",
"MotdFavicon": "{DEFAULT_MOTD}",
"MotdDescription": "§d{NAME}§e service is working on §a§o{INFO}§r\n§c§lProxy for §6§n{HOST}:{PORT}§r"
},
"TLSSniffing": {
"RejectNonTLS": false
},
"Outbound": {
"Type": ""
}
}
],
"Lists": {}
}
你可以按照官方文档中的教程对照修改。
如果你只需要将原服务器转发,不修改其图标和motd信息,那么你可以修改为以下代码:
"AnyDestSettings": {},
"PingMode": "",
"MotdFavicon": "",
"MotdDescription": ""
},
以上代码起始于23行
使用本地客户端连接部署好的ZProxy服务器进行测试,验证代理效果及加速表现。
至此,您已成功完成了ZProxy从源码下载到利用宝塔面板部署运行的全过程。
请注意,上述步骤可能需要根据实际项目情况进行微调,建议在操作前查阅最新的ZProxy官方文档和宝塔面板的帮助手册。此外,搭建代理服务器时务必遵守法律法规,合法合规使用。
访客
太棒了
访客
显示Build Information: go1.22.4, linux/amd64, CGO enabled
2024/06/19 19:49:45 Successfully loaded config from file.
2024/06/19 19:49:45 Service Hypixel: Can't start listening on port 25565: listen tcp :25565: bind: address already in use
panic: Service Hypixel: Can't start listening on port 25565: listen tcp :25565: bind: address already in use
怎么办
博主
端口被占用了了,检查一下端口的使用情况