如何使用MCSM搭建我的世界Java版服务器并实现远程联机游戏

简介: 如何使用MCSM搭建我的世界Java版服务器并实现远程联机游戏

本教程主要介绍如何在Linux Ubuntu系统中使用MCSManager面板搭建Minecraft服务器,并结合cpolar内网穿透工具,实现在外远程联机我的世界游戏,无需公网IP,无需公网服务器,使用本地部署的服务器即可。

Linux使用MCSM面板搭建我的世界私服相对比windwos简单,也是目前比较流行的设置方式,在Linux中安装MCSManger也是非常容易,一键指令脚本即可安装,本篇教程演示在Ubuntu。

如何使用MCSM搭建我的世界Java版服务器并实现MC远程联机游戏

1. 安装JAVA

运行Minecraft需要java17的版本,检查Linux java版本

java -version

如果没有安装java,可以一键安装

sudo apt install openjdk-17-jre-headless

2. MCSManager安装

使用官网的下载命令脚本,直接下载安装,安装脚本只支持 Ubuntu/Centos/Debian/Arch 等主流 x86_64 位操作系统。

wget -qO- https://gitee.com/mcsmanager/script/raw/master/setup.sh | sudo bash

安装完成后,我们可以看到访问的地址,和相关的端口号,下面命令是操作命令.

3.局域网访问MCSM

通过上面的ip地址我们可以看到端口号是23333,我们可以通过在外部电脑使用局域网ip地址在浏览器访问23333端口,查看Linux 局域网ip地址:

ip address

输入命令后我们可以看到相关的局域网ip地址

然后使用外部浏览器,通过局域网ip地址加23333端口访问,即可看到MCSM的web界面,首次登陆,需要创建一个账号

4.创建我的世界服务器

在面板中,我们点击快速开始,创建一个Minecraft服务器

选择一键开服,简单,迅速

这里选择1.19.2 版本,点击安装

给服务器取个名字,然后点击OK,等待安装即可

安装成功后,我们点击按钮前往实例控制台

然后出现联机方式,我们点击下面跳过设置联机方式的选择

然后点击一下开启实例,开启实例后会生成一个server.properties文件,不开启实例不会生成

然后停止实例,修改配置文件,取消正版服务器的验证,点击文件管理

找到server.properties文件,点击编辑,第一页找不到,点击底部第二页

online-mode的值改为false,然后保存,关闭

然后开启实例,这里的实例表示服务的意思

启动成功,我们可以看到端口信息,端口号为:25565

5.局域网联机测试

启动器和最新版JAVA地址:

https://pan.baidu.com/s/1VuiGrX_hH_gzYzcKAjwEVA?pd=6666

提取码:6666

本教程使用的是windows启动器和JAVA

安装好最新版JAVA后在启动器中创建一个账号,正版或是离线账号都可以

打开我的世界启动器,选择和服务器一样的版本1.19.2,启动

然后点击多人游戏

点击添加服务器,然后输入局域网ip地址加25565端口192.168.50.105:25565,点击加入服务器

现在我们成功搭建了我的世界私服,并且可以看到成功进入了游戏。

6.安装cpolar内网穿透

我们搭建好服务器后,如果想实现和好友远程联机游戏就需要用到cpolar内网穿透工具了,通过它生成一个公网地址发给好友,大家就能一起进入到你创建的MC服务器当中了。

下面我们安装cpolar内网穿透工具,并使用其创建一个tcp隧道,映射25565端口,它会生成相应的公网地址。

而通过cpolar的tcp公网地址,我们可以很容易远程进行联机,而无需自己注册域名购买云服务器.下面是linux服务安装cpolar步骤

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

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可

7. 配置公网访问地址

成功启动cpolar服务后,我们在浏览器上访问Linux局域网ip地址+9200端口,登录cpolar web UI管理界面。

登录成功后,点击左侧仪表盘的隧道管理——创建隧道,创建一个tcp协议的隧道指向上面的25565端口:

  • 隧道名称:可自定义,注意不要与已有的隧道名称重复
  • 协议:tcp
  • 本地地址:25565
  • 域名类型:选择随机域名
  • 地区:选择China Top

点击创建

然后打开在线隧道列表,查看并且复制公网地址,注意tcp://无需复制

8.远程联机测试

打开我的世界,选择多人游戏,点击刚才创建的服务器选择编辑,使用cpolar中生成的公网地址进行连接,点击完成

成功远程多人联机

小结

如果我们需要经常和小伙伴们联机游戏或者长时间游戏,由于刚才创建的是随机的地址,24小时会发生变化。如果不想每次联机游戏都重新创建一个公网TCP隧道,可以选择创建一个固定的tcp地址来解决这个问题。

9. 配置固定远程联机端口地址

我们接下来为其配置固定的TCP端口地址,该地址不会变化,方便小伙伴远程联机,而无需每天重复修改服务器地址。

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

9.1 保留一个固定tcp地址

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

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

点击保留

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来,注意无需复制tcp://

9.2 配置固定公网TCP地址

在cpolar web ui管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到前面创建的我的世界隧道,点击右侧的编辑

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

  • 端口类型:修改为固定tcp端口
  • 预留的tcp地址:填写保留成功的地址

点击更新

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

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

打开我的世界,点击多人游戏,选择刚才的服务器进行编辑,输入上面固定的公网TCP地址端口远程联机

公网远程联机成功!现在,该公网地址不会再随机变化了。

这样我们使用cpolar内网穿透工具就可以实现在公网上和朋友进行远程联机游戏了!

目录
相关文章
|
4天前
|
Java
Java Socket编程与多线程:提升客户端-服务器通信的并发性能
【6月更文挑战第21天】Java网络编程中,Socket结合多线程提升并发性能,服务器对每个客户端连接启动新线程处理,如示例所示,实现每个客户端的独立操作。多线程利用多核处理器能力,避免串行等待,提升响应速度。防止死锁需减少共享资源,统一锁定顺序,使用超时和重试策略。使用synchronized、ReentrantLock等维持数据一致性。多线程带来性能提升的同时,也伴随复杂性和挑战。
|
4天前
|
安全 Java 网络安全
Java Socket编程教程:构建安全可靠的客户端-服务器通信
【6月更文挑战第21天】构建安全的Java Socket通信涉及SSL/TLS加密、异常处理和重连策略。示例中,`SecureServer`使用SSLServerSocketFactory创建加密连接,而`ReliableClient`展示异常捕获与自动重连。理解安全意识,如防数据截获和中间人攻击,是首要步骤。通过良好的编程实践,确保网络应用在复杂环境中稳定且安全。
|
2天前
|
缓存 小程序 前端开发
Java服务器端技术探秘:Servlet与JSP的核心原理
【6月更文挑战第23天】Java Web开发中的Servlet和JSP详解:Servlet是服务器端的Java小程序,处理HTTP请求并响应。生命周期含初始化、服务和销毁。创建Servlet示例代码展示了`doGet()`方法的覆盖。JSP则侧重视图,动态HTML生成,通过JSP脚本元素、声明和表达式嵌入Java代码。Servlet常作为控制器,JSP处理视图,遵循MVC模式。优化策略涉及缓存、分页和安全措施。这些技术是Java服务器端开发的基础。
|
2天前
|
缓存 安全 Java
Java服务器端技术:Servlet与JSP的集成与扩展
【6月更文挑战第23天】Java Web开发中,Servlet和JSP是构建动态Web应用的基础。Servlet处理逻辑,JSP专注展示。示例展示了Servlet如何通过`request.setAttribute`传递数据给JSP渲染。JSP自定义标签提升页面功能,如创建`WelcomeTag`显示欢迎消息。Servlet过滤器,如`CacheControlFilter`,用于预处理数据或调整响应头。这些集成和扩展技术增强了应用效率、安全性和可维护性,是Java服务器端开发的关键。
|
2天前
|
前端开发 安全 Java
Java服务器端开发实战:利用Servlet和JSP构建动态网站
【6月更文挑战第23天】**Servlet和JSP在Java Web开发中扮演关键角色。Servlet处理业务逻辑,管理会话,JSP则结合HTML生成动态页面。两者协同工作,形成动态网站的核心。通过Servlet的doGet()方法响应请求,JSP利用嵌入式Java代码创建动态内容。实战中,Servlet处理数据后转发给JSP展示,共同构建高效、稳定的网站。虽然新技术涌现,Servlet与JSP仍为Java Web开发的基石,提供灵活且成熟的解决方案。**
|
2天前
|
存储 缓存 安全
Servlet与JSP在Java服务器端开发中的实践与优化
【6月更文挑战第23天】本文探讨了Java中Servlet与JSP在在线书店系统开发中的应用,强调了它们在动态网站构建和Web效率中的作用。通过实例,展示了Servlet如何作为控制器处理用户登录,JSP则利用EL表达式呈现数据。此外,文章提及了性能优化如分页和缓存,以及安全措施如防止SQL注入和XSS攻击,强调了全面掌握和应用这些技术的重要性,以创建高效、安全的Web应用。
|
2天前
|
前端开发 小程序 Java
深入解析Java Servlet与JSP:构建高效服务器端应用
【6月更文挑战第23天】Java Servlet和JSP是Web开发的关键技术,用于构建高效服务器端应用。Servlet处理HTTP请求,执行业务逻辑,而JSP专注于动态HTML生成。两者结合,借助MVC架构,实现逻辑与视图分离,提高代码可读性和性能。尽管有新框架出现,Servlet和JSP仍是许多项目的基础。
|
2天前
|
Java Android开发
Java Socket编程示例:服务器开启在8080端口监听,接收客户端连接并打印消息。
【6月更文挑战第23天】 Java Socket编程示例:服务器开启在8080端口监听,接收客户端连接并打印消息。客户端连接服务器,发送"Hello, Server!"后关闭。注意Android中需避免主线程进行网络操作。
13 4
|
1天前
|
Java
使用java编写猜数字游戏
使用java编写猜数字游戏
4 0
|
4天前
|
网络协议 Java Linux
探索Java Socket编程:实现跨平台客户端-服务器通信的奥秘
【6月更文挑战第21天】Java Socket编程示例展示了如何构建跨平台聊天应用。服务器端使用`ServerSocket`监听客户端连接,每个连接启动新线程处理。客户端连接服务器,发送并接收消息。Java的跨平台能力确保代码在不同操作系统上无需修改即可运行,简化开发与维护。