公司动态

零公网IP搭建《我的世界》基岩版服务器:FRP内网穿透实战指南

📅 2026/8/25 16:18:11
零公网IP搭建《我的世界》基岩版服务器:FRP内网穿透实战指南
这次我们来看一个非常实用的技术方案如何在没有公网IP的情况下搭建一个《我的世界》基岩版服务器并实现远程联机。对于很多想在本地电脑上开服和朋友一起玩的玩家来说最大的障碍就是运营商不提供公网IP导致朋友无法从外部网络连接到你的服务器。本文将提供一个完整的“内网穿透”解决方案让你绕过这个限制实现零成本、稳定可用的联机体验。这个方案的核心是利用 FRPFast Reverse Proxy这类内网穿透工具将你本地运行的基岩版服务器端口映射到一台拥有公网IP的服务器上从而实现外部访问。整个过程不涉及复杂的网络配置也不需要你拥有专业的网络知识只需要按照步骤操作即可。本文将详细拆解从服务器端配置、客户端配置到最终联机测试的全流程并重点说明其中的关键参数和常见坑点。无论你是想搭建一个私人小服与三五好友娱乐还是想学习内网穿透的原理与实践这篇文章都能提供清晰的指引。我们会重点关注方案的可行性、稳定性、资源占用以及具体的操作步骤确保你读完就能动手实践。1. 核心能力速览在深入细节之前我们先通过一个表格快速了解这个方案的核心要点和门槛。能力项说明核心目标在无公网IP的本地网络环境中搭建《我的世界》基岩版服务器并实现远程联机。核心技术基于 FRP内网穿透技术通过公网服务器进行流量转发。硬件门槛服务端需要一台拥有公网IP和开放端口的云服务器如阿里云、腾讯云ECS。客户端本地运行基岩版服务端的电脑配置需满足游戏运行要求。网络要求服务端需要开放指定的UDP端口默认为19132客户端上行带宽影响联机体验。启动方式服务端与客户端均通过命令行或配置文件启动可配置为后台服务或开机自启。资源占用FRP服务端/客户端程序本身资源占用极低CPU、内存可忽略。主要资源消耗在于基岩版服务端和游戏本身。适合场景私人好友联机、小型社区服、开发测试环境。不适合大型高并发商业服务器。成本主要成本为公网云服务器的租赁费用。FRP本身为开源免费软件。2. 适用场景与使用边界这个方案最适合谁个人玩家或小团体希望用自家电脑开服与不在同一局域网的朋友联机。学生或技术爱好者想在宿舍或家庭网络环境下搭建游戏服务器学习网络和服务器管理知识。MOD或地图开发者需要创建一个临时的测试服务器供远程队友共同调试。它能解决什么问题公网IP缺失彻底解决因运营商不分配公网IPv4地址而无法从外网访问本地服务的问题。端口封锁绕过家庭路由器或校园网对入站连接的封锁。动态IP即使本地网络IP地址经常变化只要FRP客户端保持连接服务就始终可通过固定的公网服务器地址访问。不适合什么场景大型高在线人数服务器FRP转发会引入额外的网络延迟且公网服务器的带宽和性能可能成为瓶颈。大型服建议直接租赁高性能游戏服务器。对延迟极度敏感的场景穿透转发必然增加网络跳数物理距离导致的延迟无法避免。完全不懂命令行的用户虽然教程详细但过程中仍需操作命令行、编辑配置文件需要一定的动手能力和耐心。安全与合规边界提醒服务器安全你租用的公网服务器FRP服务端需要做好安全加固仅开放必要的端口如FRP服务端口和游戏UDP端口并设置强密码。服务合规确保你的游戏服务器内容符合相关法律法规不传播违法违规信息。版权意识搭建服务器用于私人娱乐通常符合游戏最终用户许可协议EULA但若涉及商业盈利或大规模公开运营请务必查阅并遵守Mojang官方关于服务器运营的相关规定。3. 环境准备与前置条件开始之前请确保你已准备好以下环境我们将分服务端公网服务器和客户端本地开服电脑两部分说明。3.1 服务端公网服务器准备一台云服务器购买一台拥有公网IP的云服务器如阿里云、腾讯云、华为云的ECS。配置无需太高1核1G或1核2G即可主要用作流量转发。操作系统推荐Ubuntu 20.04/22.04 LTS或CentOS 7/8。开放安全组/防火墙在云服务器的控制台安全组规则中放行以下端口TCP: 7000(FRP服务端默认监听端口用于与客户端建立连接)UDP: 19132(Minecraft基岩版默认游戏端口用于转发游戏数据)你也可以自定义这些端口但需要在后续配置中保持一致。服务器权限拥有该服务器的SSH root权限或sudo权限。3.2 客户端本地开服电脑准备本地游戏服务器已在本地电脑上成功部署并能在局域网内访问的《我的世界》基岩版服务器。例如官方Bedrock Dedicated Server (BDS)。网络环境本地电脑可以正常访问互联网。系统支持Windows 10/11, Linux 或 macOS。本文将以Windows为例Linux/macOS命令类似。FRP客户端程序从FRP项目GitHub Release页面下载对应操作系统如windows_amd64的客户端程序。3.3 软件准备FRP项目地址github.com/fatedier/frp版本选择下载最新稳定版。本文以frp_0.52.3版本为例。文件说明frps/frps.exe: 服务端程序frpc/frpc.exe: 客户端程序frps.toml/frpc.toml: 服务端/客户端配置文件新版使用TOML格式旧版为INIfrps_full.toml/frpc_full.toml: 完整配置示例你需要将frps和frps.toml上传到公网服务器将frpc和frpc.toml放在本地电脑。4. 安装部署与启动方式4.1 服务端公网服务器部署通过SSH连接到你的云服务器。下载并解压FRP# 以Linux amd64为例 wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp_0.52.3_linux_amd64.tar.gz tar -zxvf frp_0.52.3_linux_amd64.tar.gz cd frp_0.52.3_linux_amd64配置服务端 (frps.toml) 使用vim或nano编辑frps.toml文件。bindPort 7000 # 服务端监听端口需与安全组开放端口一致 auth.method “token” auth.token “your_strong_password_here” # 设置一个强密码用于客户端连接认证增强安全性 # 可以设置Web管理界面可选 webServer.addr “0.0.0.0” webServer.port 7500 webServer.user “admin” webServer.password “admin_password”保存并退出编辑器。启动FRP服务端./frps -c ./frps.toml如果看到“frps started successfully”或类似日志说明服务端启动成功。 为了长期运行建议使用systemd或screen将其设为后台服务。以下是简单的systemd服务文件示例/etc/systemd/system/frps.service[Unit] DescriptionFrp Server Service Afternetwork.target [Service] Typesimple Usernobody Restarton-failure RestartSec5s ExecStart/path/to/your/frps -c /path/to/your/frps.toml WorkingDirectory/path/to/your/ [Install] WantedBymulti-user.target然后执行sudo systemctl daemon-reload sudo systemctl start frps sudo systemctl enable frps # 设置开机自启4.2 客户端本地电脑部署在本地电脑上操作。准备FRP客户端文件将下载的Windows版FRP压缩包解压到一个目录例如D:\frp。配置客户端 (frpc.toml) 用记事本或VS Code编辑frpc.toml文件。serverAddr “your_server_public_ip” serverPort 7000 # 替换为你的云服务器公网IP和frps端口 auth.method “token” auth.token “your_strong_password_here” # 必须与服务端frps.toml中设置的token完全一致 [[proxies]] name “minecraft-bedrock” type “udp” localIP “127.0.0.1” localPort 19132 remotePort 19132 # 这是一个UDP类型的代理 # localIP: 本地基岩版服务器监听的IP通常是127.0.0.1或本机局域网IP # localPort: 本地基岩版服务器端口默认19132 # remotePort: 在服务端公网服务器上开放的端口供朋友连接用保存配置文件。启动FRP客户端 打开命令提示符CMD或 PowerShell进入FRP目录。cd D:\frp .\frpc.exe -c .\frpc.toml如果连接成功你会看到类似“login to server success”和“proxy [minecraft-bedrock] start success”的日志。 同样可以将其配置为Windows服务或使用nssm工具实现开机自启确保本地服务器重启后穿透依然有效。5. 功能测试与效果验证完成两端部署后需要进行连通性测试。5.1 测试一FRP通道连接测试观察客户端日志在本地电脑运行frpc的命令行窗口确认没有报错并显示“start proxy success”。观察服务端日志在云服务器上查看frps日志journalctl -u frps -f确认有客户端成功连接的记录。使用Web仪表板如果配置了在浏览器访问http://your_server_public_ip:7500使用配置的用户名密码登录可以看到客户端在线状态和代理列表。5.2 测试二基岩版服务器穿透测试这是最关键的测试验证朋友是否能通过公网IP连接到你的本地服务器。确保本地基岩版服务器已运行在本地电脑启动BDS服务器确认在局域网内如用手机连接同一WiFi可以通过本地IP如192.168.1.100:19132成功加入游戏。获取连接地址告诉你的朋友在《我的世界》基岩版游戏中添加服务器。服务器地址填写你的云服务器公网IP。端口填写你在frpc.toml中配置的remotePort本例为19132。例如123.123.123.123:19132远程连接让你的朋友尝试连接。如果一切正常他应该能看到服务器列表并成功进入你在本地搭建的游戏世界。延迟测试进入游戏后观察游戏内延迟通常显示为ping值。由于数据需要经过云服务器中转延迟会比直连公网服务器稍高具体取决于云服务器与你们双方的网络线路质量。通常国内服务器间中转延迟增加在10-50ms内属于可接受范围。5.3 测试三多用户并发测试邀请多位朋友同时连接观察FRP客户端/服务端日志是否有连接错误或异常断开。本地服务器资源CPU和内存占用是否正常。网络状况是否有人出现严重卡顿或掉线。这有助于评估当前云服务器带宽和本地电脑性能是否满足多人游戏需求。6. 接口API与批量任务进阶管理对于更高级的应用场景FRP本身提供了管理API而基岩版服务器也有相应的控制台或RCON远程控制协议可以结合起来实现自动化管理。6.1 FRP管理API如果你在frps.toml中启用了webServer除了仪表板还提供了HTTP API用于查询和管理代理。例如获取代理状态curl -u admin:admin_password http://your_server_ip:7500/api/proxies这可以用于监控穿透服务是否健康或集成到自己的运维脚本中。6.2 基岩版服务器RCON基岩版服务器支持RCON协议允许通过TCP远程执行控制台命令。你可以通过FRP再暴露一个TCP端口来转发RCON服务实现远程管理服务器如执行/say、/kick等命令。 在frpc.toml中新增一个TCP代理[[proxies]] name “bedrock-rcon” type “tcp” localIP “127.0.0.1” localPort 19133 # 假设本地RCON端口为19133 remotePort 19133 # 在公网服务器上暴露的RCON端口安全警告RCON密码请务必设置强密码并谨慎暴露此端口因为它拥有服务器完全控制权。6.3 “批量任务”思维管理多个游戏或服务如果你需要穿透多个不同的本地服务例如同时开《我的世界》Java版和基岩版服务器或一个Web管理页面只需在frpc.toml中配置多个[[proxies]]段落即可每个段落指定不同的name、localPort和remotePort。FRP客户端会统一建立连接并管理所有这些通道。7. 资源占用与性能观察这个方案的性能开销主要集中在网络转发和游戏服务器本身。FRP程序资源占用frps和frpc进程本身非常轻量在空闲状态下内存占用通常在10MB以下CPU几乎为0。在进行游戏数据转发时CPU和内存占用会有轻微上升但与游戏进程相比可忽略不计。网络带宽占用这是关键指标。基岩版服务器对每个在线玩家的上行带宽需求大约在50-100 Kbps。你需要确保本地客户端上行带宽满足玩家数 * 100Kbps的需求。例如10人同时在线本地宽带上行至少应有1Mbps的稳定带宽。公网服务器带宽云服务器的公网带宽通常按流量计费或固定峰值需要能同时承载来自所有玩家的下行流量和上行流量。1Mbps约128KB/s的带宽可能只够2-3人较流畅游戏建议选择按量计费或更高带宽的套餐。延迟Ping延迟由以下几部分构成朋友到云服务器的延迟云服务器到你本地客户端的延迟本地网络处理延迟 使用国内同区域的云服务器可以显著降低第一部分和第三部分的延迟。可以使用ping和traceroute命令测试各段网络状况。观察工具任务管理器/资源监视器观察本地bedrock_server.exe和frpc.exe的CPU、内存、网络占用。云服务器监控通过云服务商的控制台观察服务器的CPU、内存、网络流入流出流量和带宽使用率。FRP仪表板直接查看每个代理的连接数和实时流量。8. 常见问题与排查方法在部署和运行过程中你可能会遇到以下问题。这里提供系统的排查思路。问题现象可能原因排查方式解决方案FRP客户端连接失败1. 服务端地址/端口错误2. 服务器防火墙/安全组未放行端口3. 认证token不匹配1. 检查frpc.toml中的serverAddr和serverPort。2. 在服务器用netstat -tunlp | grep 7000查看端口监听状态。3. 对比服务端与客户端的auth.token是否完全一致。1. 修正配置。2. 检查并放行安全组规则。3. 确保token字符串一致。客户端显示连接成功但无法访问游戏1. 本地基岩版服务器未运行或端口不对2.frpc.toml中localIP或localPort配置错误3. 代理类型错误应为udp1. 在本地电脑尝试连接127.0.0.1:19132。2. 检查BDS服务器配置文件中监听的IP和端口。3. 确认type “udp”。1. 确保BDS服务已启动。2. 将localIP改为BDS实际监听的IP0.0.0.0或127.0.0.1。3. 确保代理类型正确。朋友连接游戏超时1. 云服务器安全组未放行UDP 19132端口2. FRP服务端或客户端进程崩溃3. 本地网络上行带宽不足或NAT类型限制1. 在服务器用tcpdump -i any udp port 19132抓包看是否有数据。2. 检查frps和frpc进程是否存活。3. 测试本地网络上行速度。1. 检查并放行UDP 19132端口。2. 重启FRP服务查看日志错误。3. 尝试重启路由器或联系运营商。游戏内延迟很高或卡顿1. 云服务器地理位置过远2. 云服务器或本地带宽跑满3. 本地电脑性能不足1. 让朋友和本地分别ping云服务器。2. 通过云监控和任务管理器查看带宽和CPU使用率。3. 观察本地BDS服务器CPU占用。1. 更换为离你和朋友都更近的区域的云服务器。2. 升级云服务器带宽或优化本地网络。3. 升级本地硬件或限制游戏内实体数量。FRP客户端频繁断开重连1. 本地或服务器网络不稳定2. 服务器资源不足被系统杀死进程1. 查看客户端和服务端日志中的断开原因。2. 检查服务器内存和CPU使用历史。1. 尝试在frpc.toml中配置transport.heartbeatInterval和transport.heartbeatTimeout。2. 为FRP进程配置更宽松的系统资源限制。如何修改游戏端口想使用非默认的19132端口需要同时修改三处BDS服务器配置、FRP客户端localPort、FRP客户端remotePort以及云服务器安全组。1. 修改BDS的server.properties。2. 修改frpc.toml中对应的端口号。3. 在云服务器安全组放行新的UDP端口。9. 最佳实践与使用建议为了获得更稳定、安全的联机体验遵循以下建议安全性第一使用强TokenFRP的认证token不要使用默认值或简单密码建议使用密码生成器创建。限制访问端口在云服务器安全组中严格只开放7000FRP管理和19132游戏等必需端口并可以考虑将FRP服务端端口7000的源IP限制为你自己的家庭IP如果固定的话。定期更新关注FRP项目的Release及时更新到新版本以修复潜在安全漏洞。稳定性优化配置为系统服务务必在服务端和客户端都将FRP配置为系统服务如Linux的systemdWindows的nssm实现开机自启和崩溃重启。日志与监控配置FRP将日志输出到文件并定期查看。利用云服务商的监控告警功能关注服务器CPU、带宽和磁盘IO。备用方案如果云服务器出现故障可以快速将FRP客户端配置指向另一台备用服务器只需修改serverAddr并重启frpc。性能与成本平衡按量计费服务器对于不常开服的场景可以选择按量计费的云服务器用的时候开机不用时关机节省费用。带宽选择根据在线人数预估带宽。初期可选择按量计费或小带宽根据监控数据再升级。本地服务器优化优化《我的世界》服务器配置如视距、实体生成规则等以降低本地资源消耗和上行带宽压力。文档与备份记录配置将最终可用的frps.toml和frpc.toml配置文件备份到网盘或版本控制工具如Git。记录关键信息云服务器IP、FRP token、游戏服务器RCON密码等关键信息妥善保存。10. 总结与下一步通过本文的步骤你应该已经成功实现了在无公网IP的环境下搭建《我的世界》基岩版服务器并完成远程联机。这个方案的核心价值在于其普适性和低成本利用常见的云服务器和开源工具解决了个人玩家最大的网络障碍。最值得尝试的点零公网IP需求彻底摆脱了对运营商公网IP的依赖。配置清晰整个过程标准化配置文件参数明确易于理解和修改。一机多服通过配置多个[[proxies]]可以轻松将本地多个不同的服务如多个游戏服务器、Web应用穿透出去。最先应该验证的功能 成功部署后第一个要测试的就是让一位朋友从外网连接进来。这是整个方案是否成功的唯一金标准。如果连接失败按照第8章的排查流程图从FRP连接、端口开放、本地服务三个层面依次检查。最容易踩的坑端口未开放超过一半的问题源于云服务器安全组或系统防火墙未正确放行UDP端口19132。Token不一致服务端和客户端的认证token必须一字不差。代理类型错误Minecraft基岩版使用UDP协议type必须设为“udp”错用“tcp”会导致无法连接。后续扩展方向域名访问为你的云服务器IP绑定一个域名让朋友更方便记忆。负载均衡如果玩家众多可以考虑使用更专业的负载均衡器替代FRP或者将FRP部署在负载均衡后端。自动化脚本编写脚本实现FRP客户端的自动更新、配置检查和故障报警。探索其他穿透工具除了FRP还可以了解下nps、ngrok、zerotier等工具它们各有特点适合不同的场景。现在你可以开始享受和朋友们在你自己搭建的世界里畅玩的乐趣了。如果在实践中遇到新的问题不妨回头仔细查看日志文件那里面通常包含了解决问题的关键线索。建议收藏本文以备后续查阅。