通过内网穿透,在Windows 10系统下搭建个人《我的世界》服务器公网联机
文章目录
- 1. Java环境搭建
- 2.安装我的世界Minecraft服务
- 3. 启动我的世界服务
- 4.局域网测试连接我的世界服务器
- 5. 安装cpolar内网穿透
- 6. 创建隧道映射内网端口
- 7. 测试公网远程联机
- 8. 配置固定TCP端口地址
- 8.1 保留一个固定tcp地址
- 8.2 配置固定tcp地址
- 9. 使用固定公网地址远程联机
今天和大家分享一下只需简单几步即可在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端口地址远程联机

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

转载自cpolar极点云文章:搭建我的世界Java版服务器,公网远程联机【内网穿透】
相关文章:
通过内网穿透,在Windows 10系统下搭建个人《我的世界》服务器公网联机
文章目录 1. Java环境搭建2.安装我的世界Minecraft服务3. 启动我的世界服务4.局域网测试连接我的世界服务器5. 安装cpolar内网穿透6. 创建隧道映射内网端口7. 测试公网远程联机8. 配置固定TCP端口地址8.1 保留一个固定tcp地址8.2 配置固定tcp地址 9. 使用固定公网地址远程联机 …...
C++11异步任务轮子实现(header-only)
为什么写这个 C17异步任务需要future和promise配合使用,不是很喜欢那种语法。实现一个操作简洁的异步任务。 满足功能 异步任务超时控制get接口同步任务计时lambda回调任务重启 使用 #include "async_callback.h" #include <unistd.h> #includ…...
2023华为杯研究生数学建模竞赛选题建议+初步分析
如下为C君的2023华为杯研究生数学建模竞赛(研赛)选题建议初步分析 2023华为杯研究生数学建模竞赛(研赛)选题建议 提示:DS C君认为的难度:CE<D<F,开放度:CDE<F。 华为专项…...
多线程并发或线程安全问题如何解决
1、通过volatile关键字修饰变量,可以实现线程之间的可见性,避免变量脏读的出现,底层是通过限制jvm指令的重新排序实现的,适用于一个线程修改,多个线程读的场景。 2、通过synchronized锁(任意对象࿰…...
深度学习——线性神经网络一
深度学习——线性神经网络一 文章目录 前言一、线性回归1.1. 线性回归的基本元素1.1.1. 线性模型1.1.2. 损失函数1.1.3. 解析解1.1.4. 随机梯度下降1.1.5. 用模型进行预测 1.2. 向量化加速1.3. 正态分布与平方损失1.4. 从线性回归到深度网络 二、线性回归的从零开始实现2.1. 生…...
利用大模型知识图谱技术,告别繁重文案,实现非结构化数据高效管理
我,作为一名产品经理,对文案工作可以说是又爱又恨,爱的是文档作为嘴替,可以事事展开揉碎讲清道明;恨的是只有一个脑子一双手,想一边澄清需求一边推广宣传一边发布版本一边申报认证实在是分身乏术࿰…...
Java抽象类和普通类区别、 数组跟List的区别
抽象类 Java中的抽象类是一种特殊的类,它不能被实例化,只能被继承。抽象类通常用于定义一些通用的属性和方法,但是这些方法的具体实现需要在子类中完成。抽象类中可以包含抽象方法和非抽象方法。 抽象方法是一种没有实现的方法,…...
Leetcode.2522 将字符串分割成值不超过 K 的子字符串
题目链接 Leetcode.2522 将字符串分割成值不超过 K 的子字符串 rating : 1605 题目描述 给你一个字符串 s s s ,它每一位都是 1 1 1 到 9 9 9 之间的数字组成,同时给你一个整数 k k k 。 如果一个字符串 s s s 的分割满足以下条件,我们…...
成绩分析(蓝桥杯)
成绩分析 题目描述 小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。 请计算这次考试的最高分、最低分和平均分。 输入描述 输入的第一行包含一个整数 n (1≤n≤104 ),表示考试人数。 接下来 n 行…...
【多思路附源码持续更新】2023年华为杯(中国研究生数学建模)竞赛C题
赛题 若官网拥挤,数据集和赛题下载地址如下: https://download.csdn.net/download/weixin_47723732/88364777 历届优秀论文下载地址,可以做参考文章 https://download.csdn.net/download/weixin_47723732/88365222 论文万能模板下载地址 htt…...
基于STM32设计的校园一卡通(设计配套的手机APP)
一、功能介绍 【1】项目介绍 随着信息技术的不断发展,校园一卡通作为一种高效便捷的管理方式,已经得到了广泛的应用。而其核心部件——智能卡也被越来越多的使用者所熟知。 本文介绍的项目是基于STM32设计的校园一卡通消费系统,通过RC522模块实现对IC卡的读写操作,利用2…...
有了Spring为什么还需要SpringBoot呢
目录 一、Spring缺点分析 二、什么是Spring Boot 三、Spring Boot的核心功能 3.1 起步依赖 3.2 自动装配 一、Spring缺点分析 1. 配置文件和依赖太多了!!! spring是一个非常优秀的轻量级框架,以IOC(控制反转&…...
【记录】Python 之于 C/C++ 区别
记录本人在 Python 上经常写错的一些地方(C/C 写多了,再写 Python 有点切换不过来) 逻辑判断符号用 and、or、!可以直接 10 < num < 30 比较大小分支语句:if、elif、else使用 、-,Python 中不支持 、- - 这两个…...
【Vue-Element-Admin】dialog关闭回调事件
背景 点击导入按钮,调出导入弹窗,解析excel数据后,不点击【确认并导入】按钮,直接关闭弹窗,数据违背清理 实现 使用dialog的close回调函数,在el-dialog添加close,在methods中定义closeDialog…...
Ansible自动化:简化你的运维任务
🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…...
webpack配置alias后eslint和ts无法识别
背景 我们在 webpack 配置 alias 后,发现项目中引入的时候,还是会报错,如下: 可以看到,有一个是 ts报错,还有一个是 eslint 报错。 解决 ts 报错 tsconfig.json {"compilerOptions": {...&q…...
小程序从无到有教学教程-- 01.重置华为云服务器Huawei Cloud EulerOS 2.0版本并且设置安全组
概述 专门拿了专栏来讲解,所以目录结构就比较简单了 文章目录 概述修改华为云操作系统选择Huawei Cloud EulerOS 2.0 镜像顺便配置华为安全组 修改华为云操作系统 这里选择华为最新的系统,不过也就2.0~ 选择Huawei Cloud EulerOS 2.0 镜像 这里记住密…...
js实现短信验证码一键登录
前言 短信验证码一键登录是一种方便快捷的登录方式,用户只需输入手机号码,然后接收到手机短信验证码并自动填入验证码框,即可完成登录操作。本文将介绍短信验证码一键登录的原理,并给出一个简单的示例说明。 短信验证码一键登录…...
vue2的基础知识巩固
一、定义:是一个渐进式的JavaScript框架 二、特点: 减少了大量的DOM操作编写 ,可以更专注于逻辑操作分离数据和界面的呈现,降低了代码耦合度(前端端分离)支持组件化开发,更利于中大型项目的代码组织 vue2核心功能&a…...
echart离线地图下载地址
链接: 离线地图地址 https://datav.aliyun.com/portal/school/atlas/area_selector...
利用最小二乘法找圆心和半径
#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...
shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...
基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
C# 表达式和运算符(求值顺序)
求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如,已知表达式3*52,依照子表达式的求值顺序,有两种可能的结果,如图9-3所示。 如果乘法先执行,结果是17。如果5…...
4. TypeScript 类型推断与类型组合
一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式,自动确定它们的类型。 这一特性减少了显式类型注解的需要,在保持类型安全的同时简化了代码。通过分析上下文和初始值,TypeSc…...
HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散
前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说,在叠衣服的过程中,我会带着团队对比各种模型、方法、策略,毕竟针对各个场景始终寻找更优的解决方案,是我个人和我司「七月在线」的职责之一 且个人认为,…...
消防一体化安全管控平台:构建消防“一张图”和APP统一管理
在城市的某个角落,一场突如其来的火灾打破了平静。熊熊烈火迅速蔓延,滚滚浓烟弥漫开来,周围群众的生命财产安全受到严重威胁。就在这千钧一发之际,消防救援队伍迅速行动,而豪越科技消防一体化安全管控平台构建的消防“…...
