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

我的世界Java版服务器如何搭建并实现与好友远程联机Minecarft教程

文章目录

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

本教程主要介绍如何在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

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

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内网穿透工具就可以实现在公网上和朋友进行远程联机游戏了!

相关文章:

我的世界Java版服务器如何搭建并实现与好友远程联机Minecarft教程

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

如何进行游戏服务器的负载均衡和扩展性设计?

​在进行游戏服务器的负载均衡和扩展性设计时,需要考虑多个方面,以确保服务器的稳定性和可扩展性。以下是一些关键的步骤和考虑因素: 负载均衡的需求分析 在进行负载均衡设计之前,需要深入了解游戏服务器的负载特性和需求。这包括…...

机器学习数学基础

机器学习基础 1、标量、向量、矩阵、张量2、概率函数、概率分布、概率密度、分布函数3、向量的线性相关性4、最大似然估计5、正态分布(高斯分布)6、向量的外积(叉积)7、向量的内积(点积)8、超平面(Hyperplane)9、广义线性模型(GLM)10、伯努利分布与二项分布11、凸函数…...

SpringBoot注解--04--01--注解@Mapper在IDEA中自动注入警告的解决方案

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 问题原因 解决方案方法1:为 Autowired 注解设置required false方法2:用 Resource 替换 Autowired方法3:在Mapper接口上加上Repo…...

【Java八股面试系列】JVM-垃圾回收

目录 垃圾回收 堆空间的基本结构 内存分配和回收原则 分代收集机制 Minor GC 流程 空间分配担保 老年代 大对象直接进入老年代 长期存活的对象将进入老年代 GC的区域 对象存活判定算法 引用计数法 可达性分析算法 finalize() 字符串常量判活 类判活 垃圾回收算…...

Elasticsearch:集群故障排除和优化综合指南

Elasticsearch 是一个强大的搜索和分析引擎,是许多数据驱动应用程序和服务的核心。 它实时处理、分析和存储大量数据的能力使其成为当今快节奏的数字世界中不可或缺的工具。 然而,与任何复杂的系统一样,Elasticsearch 可能会遇到影响其性能和…...

初识C语言·编译与链接

1 翻译环境和运行环境 C语言标准ANSI C 实现C语言代码的时候 一般需要经过两种环境,一是翻译环境,二是运行环境,计算机能识别的是二进制的指令,人写完代码后通过翻译环境,使代码变成计算机能读懂的可执行的机器指令&a…...

堆与滑动窗口的结合(算法村第十六关黄金挑战)

滑动窗口最大值 239. 滑动窗口最大值 - 力扣(LeetCode) 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大…...

ES6-let

一、基本语法 ES6 中的 let 关键字用于声明变量,并且具有块级作用域。 - 语法:let 标识符;let 标识符初始值; - 规则:1.不能重复声明let不允许在相同作用域内重复声明同一个变量2.不存在变量提升在同一作用域内,必须先声明才能试…...

如何发布自己的npm包:

1.创建一个打包组件或者库: 安装weback: 打开项目: 创建webpack.config.js,创建src目录 打包好了后发现两个js文件都被压缩了,我们想开发使用未压缩,生产使用压缩文件。 erserPlugin:(推荐使用…...

JavaSE——流程控制-跳转关键字(break、continue),小案例(随机数、猜数字)

目录 跳转关键字 小案例(随机数) Random 猜数字 跳转关键字 break:跳出并结束当前所在循环的执行。continue:用于跳出当前循环的当次执行,直接进入循环的下一次执行。 注意事项: break:只能…...

Java HashSet 重写 equals() 和 hashCode() 对象去重

Ailt Insert 选择 equals() 和 hashCode() package com.zhong.collection.set;import java.util.HashSet; import java.util.Objects;public class HashSetDeduplication {public static void main(String[] args) {// HashSet 对象去重HashSet<Student> students new …...

Mac电脑到手后的配置

一、Homebrew 1、Homebrew安装 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 桌面的Old_Homebrew文件夹&#xff0c;没有你需要的可以删除。 2、Homebrew卸载 /bin/zsh -c "$(curl -fsSL https://gitee.com/c…...

Python中的while循环,知其然知其所以然

文章目录 while循环结构1.用循环打印1 ~ 100步骤解析2. 1 ~ 100的累加和3.死循环1. 用死循环的方法实现 1 ~ 100累加和 4. 单向循环(1)打印 一行十个小星星*(2)通过打印一个变量的形式,展现一行十个小星星(3)一行十个换色的星星 ★☆★☆★☆★☆★☆(4)用一个循环,打印十行十列…...

云瞻无代码开发:连接并集成电商平台、营销系统和CRM

无缝集成优势 云瞻信息已在电商领域取得杰出成就&#xff0c;其亮点在于其高效的社群运营和传统导购业务。云瞻的SAAS开放平台&#xff0c;一个连接和集成各种应用的工具&#xff0c;简化了传统的API开发流程。这赋能商家&#xff0c;即使没有专业的技术知识&#xff0c;也能够…...

LeetCode-第2469题=温度转换

1.题目描述 给你一个四舍五入到两位小数的非负浮点数 celsius 来表示温度&#xff0c;以 摄氏度&#xff08;Celsius&#xff09;为单位。 你需要将摄氏度转换为 开氏度&#xff08;Kelvin&#xff09;和 华氏度&#xff08;Fahrenheit&#xff09;&#xff0c;并以数组 ans …...

docer compose部署simple-docker

简介 一个看似简陋但是功能足够用的docker管理工具 安装 创建目录 mkdir -p /opt/simple-docker cd /opt/simple-docker 创建并启动容器 编写docker-compose.yml文件,内容如下 version: 3 services: redis: image: redis:latest restart: always web: image: registry.cn-…...

Android Studio中打开文件管理器

文章目录 一、前言二、操作步骤 一、前言 在Android Studio中有时候需要查看手机的文件目录或者复制文件&#xff0c;但是有时候文件管理器找不到在哪&#xff0c;这里记录该操作流程 二、操作步骤 第一步: 第二步: 第三步:...

算法42:天际线问题(力扣218题)---线段树

218. 天际线问题 城市的 天际线 是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。给你所有建筑物的位置和高度&#xff0c;请返回 由这些建筑物形成的 天际线 。 每个建筑物的几何信息由数组 buildings 表示&#xff0c;其中三元组 buildings[i] [lefti, righti, heig…...

SpringBoot中使用Spring自带线程池ThreadPoolTaskExecutor与Java8CompletableFuture实现异步任务示例

场景 关于线程池的使用&#xff1a; Java中ExecutorService线程池的使用(Runnable和Callable多线程实现)&#xff1a; Java中ExecutorService线程池的使用(Runnable和Callable多线程实现)_executorservice executorservice executors.newfix-CSDN博客 Java中创建线程的方式…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

python打卡day49

知识点回顾&#xff1a; 通道注意力模块复习空间注意力模块CBAM的定义 作业&#xff1a;尝试对今天的模型检查参数数目&#xff0c;并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)

目录 1.TCP的连接管理机制&#xff08;1&#xff09;三次握手①握手过程②对握手过程的理解 &#xff08;2&#xff09;四次挥手&#xff08;3&#xff09;握手和挥手的触发&#xff08;4&#xff09;状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

LeetCode - 394. 字符串解码

题目 394. 字符串解码 - 力扣&#xff08;LeetCode&#xff09; 思路 使用两个栈&#xff1a;一个存储重复次数&#xff0c;一个存储字符串 遍历输入字符串&#xff1a; 数字处理&#xff1a;遇到数字时&#xff0c;累积计算重复次数左括号处理&#xff1a;保存当前状态&a…...

渲染学进阶内容——模型

最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾&#xff1a; 在上一篇中&#xff0c;我们成功地为应用集成了数据库&#xff0c;并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了&#xff01;但是&#xff0c;如果你仔细审视那些 API&#xff0c;会发现它们还很“粗糙”&#xff1a;有…...

Angular微前端架构:Module Federation + ngx-build-plus (Webpack)

以下是一个完整的 Angular 微前端示例&#xff0c;其中使用的是 Module Federation 和 npx-build-plus 实现了主应用&#xff08;Shell&#xff09;与子应用&#xff08;Remote&#xff09;的集成。 &#x1f6e0;️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用

文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么&#xff1f;1.1.2 感知机的工作原理 1.2 感知机的简单应用&#xff1a;基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...