利用闲置Android手机搭建Minecraft服务器

2022-06-20   


最近拉了一个妹子入了Minecraft的坑,出于联机的需要,就开了个服务器。

这里用过几个办法:

本来是托管在腾讯云的轻量应用服务器上的。奈何单核2G的配置,在开始的时候还可以,但是随着后面玩的越来越多,加之最多时有五个人一起在线,5兆的带宽也捉襟见肘。

也尝试用谷歌云当主机,但是妹子那边联通的网络死活连不上。于是,拿国内的腾讯云主机当跳板,然后Nginx做负载均衡,倒也一定程度上缓解了卡顿。但是,晚高峰它丢包啊…

这时,突然想起自己宿舍的宽带有公网IP,然后看看自己的那台闲置的Nokia,于是…

一、所需材料

1、Minecraft服务端

官方端,paper,水龙头,等等等等

2、一台闲置的Android手机,最好内存大一点,主频高一点。

3、termux终端模拟器

4、公网IP(非必须,你可以使用其它内网穿透软件替代),支持dmz端口映射的路由器。

二、开搞

1、下载安装termux,并简单配置

下载

termux官网:这里是官网

我推荐你直接从GitHub的页面下载:
GitHub主页

虽然Google play 也可以直接下载,但是貌似那个已经不再更新了。

配置:

安装完成后首先换源:

在termux中输入

termux-change-repo

然后
Screenshot_20220620-201000_Termux

方向键选择,空格键选中,回车键确认。

Screenshot_20220620-201029_Termux

我推荐你使用bfsu

流程走完后:

apt upgrade

更新一下软件包。

由于Minecraft是用Java写的,你要跑起来就需要Java,所以要安装JDK。

apt install openjdk-17

2、下载Minecraft服务端

来这里的官网:

https://www.minecraft.net/zh-hans/download/server

下载jar后把它移到一个你希望用来存放游戏的目录

比如,我的是在:/sdcard/mc

然后在手机的设置里给termux存储权限。

接着在termux里输入:

cd /sdcard/mc

跳转到你存放jar的目录

最后:

java -Xmx1024M -Xms1024M -jar server.jar nogui

第一遍会启动失败,这时候去目录里找eula.txt
里面的false改成true,然后保存退出,再重新启动就可以了。

注意:一定要把termux加入后台白名单,并且锁定任务,避免进程被干掉。

3、把服务器放到公网上

因为有公网ip,我的做法是使用路由器自带的花生壳的DDNS服务,然后再通过自己的域名解析到花生壳给的那个域名上。最后通过dmz服务把手机的端口映射出去。

于是,完工。

Q.E.D.