当前位置: 首页 > news >正文

Linux Ubuntu搭建我的世界Minecraft服务器实现好友远程联机MC游戏

文章目录

  • 前言
    • 1. 安装JAVA
    • 2. MCSManager安装
    • 3.局域网访问MCSM
    • 4.创建我的世界服务器
    • 5.局域网联机测试
    • 6.安装cpolar内网穿透
    • 7. 配置公网访问地址
    • 8.远程联机测试
    • 9. 配置固定远程联机端口地址
      • 9.1 保留一个固定tcp地址
      • 9.2 配置固定公网TCP地址
      • 9.3 使用固定公网地址远程联机

前言

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

下面介绍MCSManager搭建Minecraft私服+cpolar内网转发工具,实现在外远程联机,无需公网IP,无需公网服务器,使用本地Linux服务器即可。

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

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

image-20240104154648321

3.局域网访问MCSM

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

ip address

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

image-20240104154754271

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

image-20240104155015061

4.创建我的世界服务器

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

image-20240104155212105

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

image-20240104155240389

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

image-20240104155307581

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

image-20240104155357327

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

image-20240104155430302

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

20230605093638

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

image-20240104162520523

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

image-20240104162448009

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

image-20230410142324796

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

image-20230410142549715

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

image-20230410132623312

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

image-20230410142836097

5.局域网联机测试

启动器和最新版JAVA地址:https://pan.baidu.com/s/1VuiGrX_hH_gzYzcKAjwEVA?pwd=6666

提取码:6666

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

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

image-20240104165631723

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

image-20230410140232735

然后点击多人游戏

image-20230410140650280

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

image-20240104160421714

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

image-20240104160530801

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

点击创建

image-20240104161043749

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

image-20240104161145595

8.远程联机测试

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

image-20240104161510050

成功远程多人联机

1704445758082

小结

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

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

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

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

9.1 保留一个固定tcp地址

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

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

点击保留

image-20240104161736572

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

image-20240104161804494

9.2 配置固定公网TCP地址

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

image-20240104161840582

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

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

点击更新

image-20240104161948361

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

image-20240104162014263

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

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

image-20240104162339155

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

image-20240104162324307

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

相关文章:

Linux Ubuntu搭建我的世界Minecraft服务器实现好友远程联机MC游戏

文章目录 前言1. 安装JAVA2. MCSManager安装3.局域网访问MCSM4.创建我的世界服务器5.局域网联机测试6.安装cpolar内网穿透7. 配置公网访问地址8.远程联机测试9. 配置固定远程联机端口地址9.1 保留一个固定tcp地址9.2 配置固定公网TCP地址9.3 使用固定公网地址远程联机 前言 Li…...

Springboot对接ceph集群以及java利用s3对象网关接口与ceph集群交互

springboot中引入相关依赖 <dependency><groupId>software.amazon.awssdk</groupId><artifactId>regions</artifactId><version>2.22.13</version></dependency><dependency><groupId>software.amazon.awssdk<…...

nrm使用

为了更方便的切换下包的镜像源&#xff0c;我们可以安装 nrm 这个小工具&#xff0c;利用 nrm 提供的终端命令&#xff0c;可以快速查看和切换下 包的镜像源。 //通过 npm 包管理器&#xff0c;将 nrm 安装为全局可用的工具 npm i nrm -g//查看所有可用的镜像源 nrm ls//将下载…...

06-微服务OpenFeigh和Sentinel持久化

一、OpenFeign基础应用 1.1 概念 OpenFeign是一种声明式、模板化的HTTP客户端。在Spring Cloud中使用OpenFeign&#xff0c;可以做到使用HTTP请求访问远程服务&#xff0c;就像调用本地方法一样的&#xff0c;开发者完全感知不到这是在调用远程方法&#xff0c;更感知不到在访…...

docker 安装redis (亲测有效)

目录 1 安装 1 安装 1 将redis 的 tar 包 上传到服务器 上传之后tar 包&#xff0c;将他变成镜像 输入docker images,发现目前是没有镜像的&#xff0c;现在将tar 包变成镜像 docker load -i redis.tar以上就将tar 包变成镜像了 现在在宿主机找一个地方&#xff0c;存放数据…...

利用GitHub开源项目ChatGPTNextWeb构建属于自己的ChatGPT - Docker

Docker部署ChatGPTNextWeb ChatGPTNextWeb项目github开源地址&#xff1a;https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web 根据文档部署ChatGPTNextWeb 文档地址&#xff1a;https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/blob/main/README_CN.md 步骤一&#…...

Vue3使用ElementPlus中的el-upload手动上传并调用上传接口

前端代码 <div class"upload-div"><el-uploadv-model:file-list"form.fileImageList"ref"uploadRef"capture"false"action"#"accept"image/*"list-type"picture-card":on-change"handleC…...

【Github3k+⭐️】《CogAgent: A Visual Language Model for GUI Agents》译读笔记

CogAgent: A Visual Language Model for GUI Agents 摘要 人们通过图形用户界面&#xff08;Graphical User Interfaces, GUIs&#xff09;在数字设备上花费大量时间&#xff0c;例如&#xff0c;计算机或智能手机屏幕。ChatGPT 等大型语言模型&#xff08;Large Language Mo…...

FF的异步清零端口需要时钟吗?--不需要

...

【conda】pip安装报错,网络延时问题解决记录(亲测有效)

【conda】pip安装报错&#xff0c;网络延时问题解决记录 1. pip install 报错如下所示2. 解决方案&#xff1a; 1. pip install 报错如下所示 pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(hostfiles.pythonhosted.org, port443): Read timed out.…...

Spring Boot整理-Spring Boot的优势

Spring Boot 提供了多个显著的优势,特别是对于快速开发和简化 Spring 应用的配置和部署。这些优势包括: 简化配置:Spring Boot 的“约定优于配置”的原则意味着许多 Spring 应用的常见配置项被自动设置,这减少了开发人员需要编写和维护的配置代码量。快速启动和部署:Sprin…...

C++标准学习--decltype

decltype / auto 是具有类型推导功能的 类型 描述/占位 符 decltype: 获取对象或表达式的类型auto: 类型自动推导 decltype 可以获取变量类型&#xff0c; &#xff08;并不同于python的type&#xff0c;但python能打印出type获取的名称&#xff0c; C通过typeid实现&#xff…...

Linux之静态库和动态库

目录 一、前言 二、对于库的理解 三、静态库 四、动态库 五、动静态库的加载 一、前言 在之前&#xff0c;我们讲了静态库和动态库&#xff0c;详情请跳转&#xff1a;静态库和动态库 下面我们将从工程师的角度&#xff0c;去了解静态库和动态库的形成过程&#xff0c;以…...

erlang/OTP 平台(学习笔记)(三)

分布式 Erlang 借助于语言属性和基于复制的进程通信&#xff0c;Erlang程序天然就可以分布到多台计算机上。要问为什么&#xff0c;且让我们来看两个用Java或C这类语言写成的进程&#xff0c;它们运作良好并以共享内存为通信手段。假设你已经搞定了锁的问题&#xff0c;一切精…...

Spring整理-Spring框架中用了哪些设计模式

Spring框架广泛应用了多种设计模式,这些模式提高了框架的灵活性、可扩展性和可维护性。下面是在Spring框架中常见的一些设计模式: 单例模式(Singleton):用于在应用的整个生命周期内保持一个类的单个实例。在Spring中,Bean默认是单例模式。 工厂模式(Factory Pattern):…...

Poi实现根据word模板导出-图表篇

往期系列传送门&#xff1a; Poi实现根据word模板导出-文本段落篇 &#xff08;需要完整代码的直接看最后位置&#xff01;&#xff01;&#xff01;&#xff09; 前言&#xff1a; 补充Word中图表的知识&#xff1a; 每个图表在word中都有一个内置的Excel&#xff0c;用于…...

windows或mac端口转发

摘要 在内网开发中&#xff0c;由于出于公司安全考虑&#xff0c;部分IP192.168.0.100访问只能针对固定IP192.168.0.200开放&#xff0c;此时我需要通过我的电脑192.168.0.300去访问&#xff0c;由于未对我电脑IP192.168.0.300授权&#xff0c;导致我访问不到&#xff0c;此时…...

Linux工具-搭建文件服务器

当我们使用linux系统作为开发环境时&#xff0c;经常需要在Linux系统之间、Linux和Windows之间传输文件。 对少量文件进行传输时&#xff0c;可以使用scp工具在两台主机之间实现文件传输&#xff1a; rootubuntu:~$ ssh --help unknown option -- - usage: ssh [-46AaCfGgKkMN…...

深入理解@DubboReference与@DubboService【三】

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 探索Dubbo的核心&#xff1a;深入理解DubboReference与DubboService【三】 前言DubboService注解基本概念使用示例高级特性 DubboReference注解基本概念使用示例服务调用流程 最佳实践注解的最佳使用方…...

linux主机的免密登录

实现linux主机之间的相互免密登录 在进行远程登录的时&#xff0c;服务器和主机间进行认证阶段分为&#xff1a; 基于口令认证&#xff08;不安全&#xff0c;易被抓包拦截获取&#xff09; 客户机连接服务器时&#xff0c;服务器将自己的公钥返回给客户机 客户机会将服务器的…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

OpenLayers 可视化之热力图

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 热力图&#xff08;Heatmap&#xff09;又叫热点图&#xff0c;是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

shell脚本--常见案例

1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件&#xff1a; 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

MMaDA: Multimodal Large Diffusion Language Models

CODE &#xff1a; https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA&#xff0c;它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构&#xf…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件&#xff08;System Property Definition File&#xff09;&#xff0c;用于声明和管理 Bluetooth 模块相…...

Module Federation 和 Native Federation 的比较

前言 Module Federation 是 Webpack 5 引入的微前端架构方案&#xff0c;允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树&#xff1f; 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持&#xff1a; 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...