Win10搭建我的世界Minecraft服务器「内网穿透远程联机」

Posted 蛋超饭不要加蛋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Win10搭建我的世界Minecraft服务器「内网穿透远程联机」相关的知识,希望对你有一定的参考价值。

文章目录

转载自远控源码文章:【Minecraft开服】Windows搭建我的世界MC服务器「公网远程联机」

简单几步在windwos搭建我的世界服务器,并通过cpolar工具将本地服务暴露到公网连接

1. Java环境搭建

以windows10系统为例,配置java环境,搭建我的世界服务器,下载最新版java版本

https://www.oracle.com/java/technologies/downloads/#jdk17-windows

选择exe文件,下载完成后双击安装包一路默认安装即可。

java安装完成后,打开文件夹,找到java,将jdk安装路径复制下来,本例中为C:\\Program Files\\Java\\jdk-17.0.5

在开始菜单栏搜索高级系统设置并打开系统属性,点击环境变量

点击新建一个系统环境变量

  • 变量名:JAVA_HOME
  • 变量值:JDK的安装路径,本例中为C:\\Program Files\\Java\\jdk-17.0.5

在系统变量列表中,双击Path变量

点击右侧的新建,在变量名值前面加%JAVA_HOME%\\bin,点击确认

校验是否成功:开始菜单栏搜索cmd,打开命令提示符,输入java -version,出现版本信息说明配置成功。

2.安装我的世界Minecraft服务

下载MC服务端,最新版的服务器端可以官网下载

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

3. 启动我的世界服务

进入到我的世界服务jar包下载目录,点击左上角文件

打开powershell,用管理员身份打开

执行java运行命令运行jar包服务

java -jar server.jar --nogui

运行后提示一个错误,错误的意思是受EULA。首次运行服务器时,会自动生成一个eula.txt。使用文本编辑器(如记事本)打开eula.txt,将文件中的eula=false改为eula=true。这表示你已阅读并理解了EULA的内容,并会在使用服务端时遵守它。如果不这样做,服务器会在你尝试启动时立即关闭。

我们在jar包的目录下面可以看到这个eula.txt文件

打开文件,把里面eula的值改为true即可,然后记得保存文件

然后我们再次使用上面命令启动运行jar包服务,并且可以看到端口为25565

4.局域网测试连接我的世界服务器

打开我的世界启动器,点击进入游戏,选择多人游戏

点击添加服务器

  • 服务器名称
  • 服务器地址:填写本地ip地址+mc端口号(默认为25565),如127.0.0.1:25565

点击完成

选择刚刚创建的服务器后,点击加入服务器

然后会出现连接不上,因为正版验证需验证正版账号,我们需要将其关闭验证

查看powershell也看到了相关错误,接下来需修改相关配置文件,首先关闭powershell

找到安装目录下的server.properties文件,编辑

然后做如下改动:online-mode=false(关闭正版验证),改动完保存

然后再次启动server.jar服务,可以看到下面提示,表示修改成功

然后我们再次连接,成功进入游戏

5. 安装cpolar内网穿透

cpolar官网:https://www.cpolar.com/

windows系统可以直接在官网下载适用于Windows平台的zip压缩包,解压后得到cpolar安装包,然后双击安装包一路默认安装即可。

6. 创建隧道映射内网端口

cpolar内网穿透安装成功后,在浏览器上访问cpolar web UI管理界面(默认为本地9200端口),以【 http://本地ip地址:9200 】形式访问,如http://127.0.0.1:9200/,并使用cpolar账号登录

登录成功后,点击左侧的隧道管理——创建隧道:

  • 隧道名称:可自定义命名,注意不要与已有隧道名称重复
  • 协议:选择tcp协议
  • 本地地址:25565(我的世界默认端口号)
  • 端口类型:随机临时TCP端口
  • 地区:China vip

点击创建

隧道创建成功后,页面自动跳转至隧道列表页面,可以看到状态正常显示为active,为正常在线状态

点击左侧仪表盘的状态——在线隧道列表,可以看到刚刚创建成功的隧道已经有生成了相应的公网地址,我们将其复制下来,注意tcp://无需复制,本例中为3.tcp.vip.cpolar.cn:10786

7. 测试公网远程联机

启动我的世界,可以直接添加一个新的服务器,或者编辑刚刚添加的本地服务器

在服务器地址栏,输入cpolar所生成的公网地址3.tcp.vip.cpolar.cn:10786,点击完成

加入服务器,公网远程联机成功

8. 配置固定TCP端口地址

需要注意的是,以上步骤使用的是随机临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。为了方便小伙伴远程联机,我们接下来为其配置固定的TCP端口地址,该地址不会变化,方便小伙伴远程联机,而无需每天重复修改服务器地址。

配置固定tcp端口地址需要将cpolar升级到专业版套餐或以上。

8.1 保留一个固定tcp地址

登录cpolar官网,点击左侧的预留,找到保留的tcp地址,我们来为我的世界保留一个固定tcp地址:

  • 地区:选择China vip
  • 描述:即备注,可自定义

点击保留

地址保留成功后,系统会生成相应的固定公网地址,本例为5.tcp.vip.cpolar.cn:12637,将其复制下来

8.2 配置固定tcp地址

在浏览器上访问9200端口,http://127.0.0.1:9200/,登录cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到我的世界隧道,点击右侧的编辑

修改隧道信息,将保留成功的固定tcp地址配置到隧道中

  • 端口类型:修改为固定tcp端口
  • 预留的tcp地址:填写保留成功的地址,本例为5.tcp.vip.cpolar.cn:12637

点击更新

隧道更新成功后,点击左侧仪表盘的状态——在线隧道列表,找到我的世界隧道,可以看到公网地址已经更新成为了固定tcp地址。

9. 使用固定公网地址远程联机

接下来我们测试使用固定公网TCP端口地址远程联机

公网远程联机成功!

现在,该公网地址不会再随机变化了。

威联通NAS配置1.18.1Minecraft服务器

参考:
威联通NAS使用Container搭建我的世界服务器,带网页管理面板
Ubuntu下怎么退出vim编辑器
我的世界MCSM面板搭建

关于威联通nas开mc服务器的网上教程甚少,写篇博客预防日后忘记

我的nas是TS-453Dmini,4核8G内存

前置准备:

  1. 有公网IP(没有公网IP需要内网穿透,会增加延迟)
  2. 光猫改桥接模式,路由器可以实现端口映射

正文

Minecraft服务器的本质就是用一台电脑持续运行服务端,所以我们的处理思路就是在nas中开一个虚拟机一直运行服务端。刚好可以用威联通的Container Station这个APP提供的容器,直接在商城搜索即可

因为Linux内核的操作系统比windows性能更好,所以这里用Ubuntu 18.04。打开Container Station,点击右侧的创建,直接搜索ubuntu找到对应版本的映像安装即可


安装之前可以先自己建两个文件夹用于挂载数据,这里backup文件夹是我自己备份用的,不需要建,只需要建root和opt即可:

更改一下ubuntu的安装选项:

网络里:

我个人喜欢更改网络为桥接模式(bridge),如果选择NAT模式需要自己映射一下端口,相关端口有:

23333:web页面的端口
25565:服务器进入的端口


共享文件夹:

更改一下挂载的路径

其他设置根据自己的需求更改即可,我都选择默认了

来到虚拟机页面,点击终端机,输入 su 进入管理员模式


因为默认的国外下载源很慢,这里先更换一下中科大的下载源:

# 换源(中科大)
sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
apt-get update


然后就是Container Station开ubuntu的通病了,vi用不了,所以把原来的vi卸掉重装一遍

#卸载并重新安装vi(解决方向键乱码问题)
apt-get remove vim-common
apt-get install vim

中途让输入y/n,输一下y再回车就行了

然后安装java环境,这里以1.18.1为例,需要用到jdk17,我选择从官网下载:

# 安装wget
apt-get install wget
# 安装java环境:
cd ~
# 下载JDK安装包
wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz
# 创建安装目录
mkdir /usr/local/java/
# 解压当前目录下的JDK压缩文件
tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local/java/

然后需要手动配置一下环境变量

# 设置环境变量
vi /etc/profile

在末尾添加对应变量:
滚动光标到末尾 按下 键盘上的 i 键,切换至插入模式
输入下面这几串内容后 按ESC退出插入模式
然后按下 Shift + ; 接着输入 wq 并回车保存

export JAVA_HOME=/usr/local/java/jdk-17.0.3.1
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
# 应用修改后的环境变量
source /etc/profile
# 软链接程序到环境变量中
ln -s /usr/local/java/jdk-17.0.3.1/bin/java /usr/bin/java

以上jdk就安装完毕了,检查一下是否正常,如果和下图一样可以正常显示就是安装成功了

# 测试是否安装正常,显示 java version "17.0.2" 则为正常
java -version


然后安装Minecraft服务端管理面板,这里选择mcsm

#安装mcsm(管理面板)
apt install screen
apt install git
# 切换到安装目录
cd /opt/
# 下载运行环境
wget https://npm.taobao.org/mirrors/node/v12.16.1/node-v12.16.1-linux-x64.tar.gz
# 解压文件
tar -zxvf node-v12.16.1-linux-x64.tar.gz
# 链接程序到环境变量中
ln -s /opt/node-v12.16.1-linux-x64/bin/node /usr/bin/node
ln -s /opt/node-v12.16.1-linux-x64/bin/npm /usr/bin/npm
# 克隆仓库
git clone https://gitee.com/Suwingser/MCSManager.git

因为我们需要让服务端持续运行,但终端在我们关闭后就会自动关闭,所以我们可以利用screen完成我们的需求,下面让服务端在screen中运行即可:

# 进入目录
cd MCSManager/
# 创建一个名为 mcsm 的窗口
# 在此新终端窗口内启动面板
screen -S mcsm
# 安装依赖库
npm install
# 启动面板
npm start 
# 关闭面板使用 Ctrl+C 快捷键即可

出现这个画面就是开启成功了

web端的 IP 就是我刚才设置的 192.168.2.6,端口号是 23333,直接浏览器里输入http://192.168.2.6:23333 就可以看到登录界面了,账号和密码分别是 #master 和 123456

如果上面Container Station里网络设置的是 NAT ,那么 IP 是你 nas 的 IP,端口就是你映射的端口了

登录后的页面

然后就可以愉快的开服了,这里以最简单的原版纯净服为例,点击服务端管理

在点击创建新实例应用


选择引导创建

把官方的服务端,也就是.jar文件上传就可以了,其他配置都默认


创建成功后依次点击终端开启,就开好服啦



一些默认配置可以到 server.properties 中更改,这里不多赘述了,开启服务器后服务端的终端大概显示这样:

此时服务器的 IP 和上文提到的一样,端口改为了 25565 ,只不过在mc客户端中只需要输入 IP 他默认访问的就是 25565 这个端口

然后在路由器上将端口映射一下,就可以直接通过你家的公网 IP 进入游戏啦


写在后面

在自己摸索的过程中,看到有很多人的过程中都需要处理ssh连接或FTP连接,但实际操作过程中,感觉这个过程可有可无,所以干脆阉割掉了。不知道是稳定性还是一些其他方面会受到影响,有大牛可以指点一下,或者日后再踩坑了会回来补充。

以上是关于Win10搭建我的世界Minecraft服务器「内网穿透远程联机」的主要内容,如果未能解决你的问题,请参考以下文章

Minecraft开服Windows搭建我的世界MC服务器「公网远程联机」

minecraft怎么搭建bukkit服务器

买过正版的minecraft JAVA版 兑换码已激活 登录到win10应用商店 安装不了

使用云服务器搭建我的世界(Minecraft)服务端

威联通NAS配置1.18.1Minecraft服务器

威联通NAS配置1.18.1Minecraft服务器