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。
分步设置指南
第 1 步:登录你的路由器
- 在连接到你家庭网络的任何设备上打开浏览器。
-
在地址栏中输入你的路由器网关地址(例如
192.168.1.1)。 - 出现提示时输入你的管理员凭据。
第 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 |
- 保存或应用该规则。
- 如果界面提示,重启路由器(不总是需要)。
第 4 步:允许端口通过 Windows 防火墙(如适用)
你的路由器现在正在转发流量,但 Windows 防火墙可能仍会在本地阻止它。要在 Windows 上打开端口:
- 打开 Windows Defender 防火墙和高级安全 (在开始菜单中搜索)。
- 点击 入站规则 ,然后点击 新建规则 。
- 选择 端口 ,点击下一步。
-
选择 TCP,输入
25565,点击下一步。 - 选择 允许连接 ,点击下一步,完成剩余屏幕。
- 将规则命名为"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 服务器进程必须处于活动状态,端口才能显示为开放。先启动它,然后测试。
-
规则中的本地 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 可能在重启后更改,无声地破坏你的转发规则。你有两种方法来解决这个问题:
- DHCP 预留(推荐): 在你的路由器的 DHCP 设置中,通过其 MAC 地址找到你的服务器电脑,并为其分配一个永久 IP。路由器将始终为该设备提供相同的地址。这不需要对电脑本身进行任何更改。
- 电脑上的手动静态 IP: 在你的网络适配器设置中手动设置 IP 地址、子网掩码、默认网关和 DNS。使用你的路由器的 DHCP 范围之外的地址,以避免冲突(例如,如果 DHCP 分配 .100 到 .200,使用 .50)。
安全考虑事项
向互联网开放一个端口是真实的暴露。几个实际步骤可以降低风险:
-
使用白名单。
在
server.properties中,设置white-list=true并仅添加受信任的玩家。这可以防止随机互联网用户加入,即使他们找到你的 IP。 - 保持服务器 JAR 更新。 Mojang 定期发布安全补丁。运行过时版本会使你暴露于已知的漏洞。
- 不要以管理员/root 身份运行服务器。 为服务器进程创建一个专用的低权限用户帐户。
- 考虑使用非标准端口。 从 25565 更改为 34217 之类的端口不会阻止坚定的攻击者,但它确实会减少自动扫描噪声。
- 不使用时关闭端口。 如果你只在周末玩,在一周中禁用转发规则。
确认你的 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 权限运行服务器进程,并考虑在不使用时关闭端口转发规则。