前言

最近想和好友一起联机玩 MC,但是使用网易版 MC 太多限制了,所以我决定搭建一个 MC 服务器,但是搭建完成之后,由于服务器配置不高,所以服务器经常启动之后卡死,刚好家里的电脑配置更好,可以同时运行 MC 服务端和客户端,所以我决定使用 ftp 内网穿透技术来搭建 MC 服务器。

准备清单

  • 1台拥有公网IP的服务器;

  • 1台能运行 MC 服务端的家用设备;

  • FRP 安装包:服务端 frps、客户端 frpc,版本必须完全一致

FRP 下载地址https://github.com/fatedier/frp

步骤一:在云服务器部署 frps

将 frps 上传到 VPS,解压,修改配置文件 frps.toml

bindPort = 7000               # frpc连接服务端的通信端口
auth.token = "xxxxxxxxxxx"    # 连接frps的密码
transport.tls.force = true    # 开启tls加密,强烈建议启用

云服务器安全组 / 防火墙放行端口:

  • 7000(FRP 隧道通信端口)

  • 25565(MC 对外访问端口)

启动命令

./frps -c frps.toml

想要后台常驻运行可以通过 screen 或者配置 systemd 自启动。

步骤二:在家用设备配置 frpc

在家中运行 MC 服务端的设备上解压对应服务端版本 frpc,修改配置文件 frpc.toml

serverAddr = "服务器地址"
serverPort = 7000
auth.token = "和frps内保持一致的密码"
transport.tls.enable = true  # 开启加密传输

# Minecraft Java版 TCP隧道
[[proxies]]
name = "minecraft-server"
type = "tcp"
localIP = "127.0.0.1"
localPort = 25565
remotePort = 25565
  • localIP:如果和 MC 服务端在同一台设备上,填写127.0.0.1

  • localPort:和 MC 服务端 server.properties 中的 server-port 保持一致;

  • remotePort:外网玩家需要连接的端口,可以自定义。

为了方便起见可以创建一个启动脚本 start.bat

@echo off
frpc.exe -c frpc.toml
pause

双击 bat 文件运行,出现 [minecraft-server] start proxy success 即代表隧道建立成功。

步骤三:启动 MC 服务器

  1. 打开 MC 服务端文件夹,运行 server.jar,首次运行会生成 eula.txt;将eula=false修改为eula=true

  2. 打开server.properties检查关键配置:

server-port=25565        # 服务端端口
online-mode=true         # 正版玩家保持true;离线游玩改为false
  1. 重新启动 MC 服务端,等待日志输出Done!代表服务器就绪。

步骤四:测试连接

打开 Minecraft Java 版 → 多人游戏 → 添加服务器

服务器地址填写:服务器地址:25565

保存后即可加入世界。

可能遇到的问题

  1. 本地能进,外网无法连接

    • 检查服务器安全组是否放行 remotePort;

    • frps 与 frpc 的 token、端口是否完全匹配;

    • 确认 frpc 日志显示代理启动成功。

  2. 频繁掉线、延迟高

    • 家庭上传带宽不足;

    • 云服务器带宽过小;

    • 家庭 WiFi 不稳定,主机尽量使用网线。

  3. 基岩版联机失败

    基岩版依赖 UDP,需要额外增加一条 UDP 代理配置。