Minecraft 服务器端口转发:完整设置指南

Minecraft服务器设置与路由器网络连接示意图

Minecraft 服务器端口转发是一个过程,它告诉你的路由器将传入的 Minecraft 连接请求直接发送到运行服务器的计算机。没有它,路由器会阻止外部流量,你家庭网络外的任何人都无法加入你的游戏。Minecraft Java 版本使用的默认端口是 25565 (TCP),在几乎所有情况下,这都是你需要转发的端口。

Minecraft 端口转发如何工作

你的路由器位于互联网和你家庭网络中每台设备之间。它使用 网络地址转换 (NAT) 在所有设备之间共享一个公网 IP 地址。当朋友尝试连接到你的 Minecraft 服务器时,他们的游戏会向你的公网 IP 的 25565 端口发送数据包。如果没有转发规则,路由器不知道网络上哪台设备应该接收该数据包,所以它会丢弃它。

端口转发规则告诉路由器:"任何到达 25565 端口的流量都转发到我的服务器电脑的本地 IP 地址。"一旦该规则存在,路由器就会通过该连接,你的朋友就能进入你的世界。

开始之前

在接触路由器设置之前,先收集好这四条信息。准备好这些信息,整个过程只需要不到五分钟。

  • 你的服务器电脑的本地 IP 地址 (例如 192.168.1.105)。在 Windows 上,在命令提示符中运行 ipconfig 并查找"IPv4 地址"。在 Linux/macOS 上,运行 ip a ifconfig
  • 你的路由器管理面板地址。 通常是 192.168.1.1 192.168.0.1 。它印在路由器的标签上,或在 ipconfig 的"默认网关"一行中可见。
  • 你的路由器管理员用户名和密码。 默认值通常是"admin/admin"或"admin/password",除非你更改过。
  • 你想转发的端口。 Java 版本:25565 TCP。Bedrock 版本:19132 UDP。
重要提示: 在创建转发规则之前,你的服务器电脑必须有一个静态本地 IP 地址。如果它的 IP 发生变化(DHCP 可能导致这种情况),规则将停止工作。请参阅下面的 静态 IP 部分 了解如何解决。

分步设置指南

第 1 步:登录你的路由器

  1. 在连接到你家庭网络的任何设备上打开浏览器。
  2. 在地址栏中输入你的路由器网关地址(例如 192.168.1.1 )。
  3. 出现提示时输入你的管理员凭据。

第 2 步:找到端口转发部分

每个路由器品牌的标签都不同。查找以下菜单名称之一:

  • 华硕 (Asus): WAN > 虚拟服务器 / 端口转发
  • 网件 (Netgear): 动态 DNS / 端口转发 / 端口触发(在高级选项下)
  • TP-Link: 高级 > NAT 转发 > 虚拟服务器
  • Linksys: 安全 > 应用和游戏 > 单端口转发
  • Xfinity/Comcast 网关: 高级 > 端口转发
  • Spectrum/网件 C7000: 高级设置 > 端口转发 / 端口触发

如果找不到,在 portforward.com 上搜索" 你的路由器型号 + 端口转发",该网站为数百种路由器型号提供了逐步截图指南。

第 3 步:创建转发规则

按如下方式填写字段。确切的标签因路由器而异,但值保持不变。

字段 Java 版本的值 Bedrock 版本的值
服务名称 / 描述 Minecraft Minecraft Bedrock
协议 TCP UDP
外部端口(开始) 25565 19132
外部端口(结束) 25565 19132
内部 IP / 本地 IP 你的服务器电脑的本地 IP 你的服务器电脑的本地 IP
内部端口 25565 19132
  1. 保存或应用该规则。
  2. 如果界面提示,重启路由器(不总是需要)。

第 4 步:允许端口通过 Windows 防火墙(如适用)

你的路由器现在正在转发流量,但 Windows 防火墙可能仍会在本地阻止它。要在 Windows 上打开端口:

  1. 打开 Windows Defender 防火墙和高级安全 (在开始菜单中搜索)。
  2. 点击 入站规则 ,然后点击 新建规则
  3. 选择 端口 ,点击下一步。
  4. 选择 TCP,输入 25565 ,点击下一步。
  5. 选择 允许连接 ,点击下一步,完成剩余屏幕。
  6. 将规则命名为"Minecraft 服务器"并完成。

在 Linux 上,如果你正在运行 ufw

sudo ufw allow 25565/tcp
sudo ufw reload

Java 与 Bedrock 的端口区别

这两个版本使用完全不同的端口和协议。混淆它们是端口转发似乎"不工作"的最常见原因之一。

  • Java 版本: 端口 25565,TCP 协议。这是 Java 版本上的 PC 玩家使用的。
  • Bedrock 版本: 端口 19132,UDP 协议。这涵盖了 Windows 10/11、Xbox、PlayStation、Switch、iOS 和 Android 玩家连接到 Bedrock 专用服务器 (BDS) 的情况。
  • 同时运行两个版本: 你需要两个单独的转发规则,每个端口/协议组合各一个。

你可以通过编辑 server.properties 文件并更改 server-port 值来更改 Minecraft Java 使用的端口。如果你这样做,转发你设置的任何端口而不是 25565,并告诉朋友使用 yourip:customport 连接。

如何验证你的端口确实是开放的

设置转发规则后,你需要确认该端口可从外部互联网到达,而不仅仅是从你自己的网络到达。从你自己的网络内进行测试总是会成功的,因为流量永远不会离开你的路由器。

使用外部端口检查工具从互联网的角度进行测试。输入你的公网 IP 地址(通过在 Google 中搜索"我的 IP 是什么"来找到)和端口 25565,然后运行检查。 开放 的结果意味着你的转发规则正在工作,朋友可以连接。 关闭 超时 的结果意味着仍有东西在阻止连接。

提示: 测试端口时,确保你的 Minecraft 服务器软件正在积极运行。关闭的服务器进程会导致端口显示为关闭,即使你的转发规则正确,因为没有任何东西在该端口上监听以接受连接。

常见问题排查

转发后端口仍显示为关闭

  • 服务器未运行。 Minecraft 服务器进程必须处于活动状态,端口才能显示为开放。先启动它,然后测试。
  • 规则中的本地 IP 错误。 使用 ipconfig 检查你的服务器电脑的当前 IP,并将其与你在路由器规则中输入的内容进行比较。
  • ISP 级别的阻止。 某些 ISP,特别是使用运营商级 NAT (CGNAT) 的 ISP,会完全阻止传入连接。如果你的公网 IP 以 100.64 到 100.127 开头,你可能在 CGNAT 后面。联系你的 ISP 或考虑使用 Cloudflare Tunnel 等 VPN 隧道解决方案作为替代方案。
  • 双重 NAT。 如果你有一个调制解调器/路由器组合加上一个单独的路由器,你可能有两层 NAT。你需要将第一台设备设置为桥接模式,或在两台设备上转发端口。
  • 服务器电脑上的防火墙。 Windows 防火墙或第三方防病毒软件可能在本地阻止该端口。再次检查你创建的入站规则。

朋友可以连接但不断超时

  • 你的互联网上传速度可能太低。Minecraft Java 服务器每个活跃玩家大约需要 0.5 Mbps 的上传速度。
  • 服务器电脑可能内存不足。默认的 Minecraft 服务器 JAR 分配 1 GB。使用更多内存启动它: java -Xmx4G -Xms1G -jar server.jar nogui

你无法使用自己的公网 IP 连接

这是正常的。许多路由器不支持"NAT 环回"(也称为发卡 NAT),这意味着你自己网络上的设备无法使用公网 IP 到达你的服务器。从同一网络玩耍时,使用你的服务器电脑的本地 IP(例如 192.168.1.105 )连接。你网络外的朋友使用公网 IP。

为什么你需要静态本地 IP

默认情况下,你的路由器通过 DHCP 动态分配本地 IP 地址。这意味着你的服务器电脑的本地 IP 可能在重启后更改,无声地破坏你的转发规则。你有两种方法来解决这个问题:

  1. DHCP 预留(推荐): 在你的路由器的 DHCP 设置中,通过其 MAC 地址找到你的服务器电脑,并为其分配一个永久 IP。路由器将始终为该设备提供相同的地址。这不需要对电脑本身进行任何更改。
  2. 电脑上的手动静态 IP: 在你的网络适配器设置中手动设置 IP 地址、子网掩码、默认网关和 DNS。使用你的路由器的 DHCP 范围之外的地址,以避免冲突(例如,如果 DHCP 分配 .100 到 .200,使用 .50)。

安全考虑事项

向互联网开放一个端口是真实的暴露。几个实际步骤可以降低风险:

  • 使用白名单。 server.properties 中,设置 white-list=true 并仅添加受信任的玩家。这可以防止随机互联网用户加入,即使他们找到你的 IP。
  • 保持服务器 JAR 更新。 Mojang 定期发布安全补丁。运行过时版本会使你暴露于已知的漏洞。
  • 不要以管理员/root 身份运行服务器。 为服务器进程创建一个专用的低权限用户帐户。
  • 考虑使用非标准端口。 从 25565 更改为 34217 之类的端口不会阻止坚定的攻击者,但它确实会减少自动扫描噪声。
  • 不使用时关闭端口。 如果你只在周末玩,在一周中禁用转发规则。
在线端口检查工具验证 Minecraft 服务器端口 25565 是否开放

确认你的 Minecraft 服务器端口确实是开放的

设置 Minecraft 服务器端口转发后,使用我们免费的开放端口检查器立即验证端口 25565(或你的自定义端口)可从公网互联网到达。输入你的公网 IP 和端口号,在几秒内获得真实结果。

立即检查你的端口 →

Minecraft Java 版本默认使用端口 25565 (TCP)。Minecraft Bedrock 版本使用端口 19132 (UDP)。你可以通过编辑 server-port 中的 server.properties 值来更改 Java 版本端口,但 25565 是每个客户端期望的,除非你另外告诉他们。如果你更改它,玩家必须在连接时将自定义端口附加到你的 IP,例如 yourip:34217

最简单的方法是在 Google 中搜索"我的 IP 是什么"。页面顶部的结果显示你当前的公网 IP。你也可以访问 ipinfo.io 之类的网站。请记住,大多数家庭互联网连接都有动态公网 IP,这意味着当你的路由器重启或经过一段时间后它可能会更改。如果这种情况经常发生,请查看 DuckDNS 之类的免费动态 DNS 服务,以获得一个始终指向你当前 IP 的稳定主机名。

这几乎总是意味着端口转发规则缺失或指向错误的本地 IP。当你从同一网络连接时,流量永远不会离开路由器,所以转发规则无关。你的朋友从外部连接,所以规则必须正确且活跃。再次检查规则中的本地 IP 与你的服务器电脑的当前 IP 匹配,并在服务器运行时使用外部端口检查器验证端口是否开放。

不需要。付费 Minecraft 托管服务(如 Apex Hosting、Bisect Hosting 或类似服务)在他们自己的硬件上运行服务器,具有公网 IP 和已配置的开放端口。你只需从他们那里获得服务器地址和端口,并与朋友分享。端口转发仅在你自主在你家中的机器上托管服务器、位于你自己的路由器后面时才需要。

运营商级 NAT (CGNAT) 意味着你的 ISP 将多个客户放在单个公网 IP 地址后面,所以你实际上没有唯一的公网 IP。在这种情况下端口转发不起作用,因为传入连接无法到达你。要检查你是否在 CGNAT 后面,请查看你的路由器的 WAN IP 是否以 100.64 到 100.127 开头。解决方案包括向你的 ISP 要求专用公网 IP(有时免费,有时收费),或使用 Cloudflare Tunnel 或 Playit.gg 之类的隧道服务完全绕过 NAT。

它携带一些风险,但是是可管理的。打开端口 25565 意味着任何找到你的 IP 的人都可以尝试连接。启用服务器白名单是最有效的单一保护,因为它完全阻止未知玩家。同时保持你的服务器软件更新,因为 Mojang 在较新版本中修补安全漏洞。避免以管理员或 root 权限运行服务器进程,并考虑在不使用时关闭端口转发规则。