Windows防火墙默认禁用SMB、SSDP、UPnP等关键协议,导致局域网游戏联机握手包被静默丢弃;需依次启用“文件和打印机共享”“网络发现”规则组、手动放行TCP/UDP端口、用PowerShell批量启用内置规则组,并检查SSDP/UPnP等具体协议规则是否被禁用。

如果您在 Windows 11 中运行局域网联机游戏或本地多人服务(如 Minecraft 服务器、CS2 本地对战、Valheim 主机、Terraria 多人会话等),但其他设备始终无法建立连接,且确认网络物理连通、IP 地址配置正确、游戏本身未报错,则极可能是 Windows 防火墙默认禁用了关键通信协议(如 SMB、SSDP、UPnP、NetBIOS 或自定义 UDP/TCP 协议),导致联机握手包被静默丢弃。以下是解决此问题的多种具体操作方法:
一、允许“文件和打印机共享”及关联协议通过防火墙
该规则组显式放行 SMB(TCP 445)、NetBIOS(UDP 137–139)与回环通信所需基础协议,是多数局域网联机功能(含游戏发现、主机广播、资源同步)的底层依赖。若未启用,即使端口开放,设备间也无法完成初始服务注册与名称解析。
1、在任务栏搜索框中输入允许应用通过防火墙并打开该设置项。
2、点击右上角的更改设置按钮,需提供管理员权限确认。
3、在应用和服务列表中查找文件和打印机共享,确保其在专用网络列已被勾选;若环境为家用路由器统一 Wi-Fi,也建议同步勾选公用网络列。
4、若列表中未显示该项,点击允许其他应用,手动添加路径:C:\Windows\System32\svchost.exe,并为其授予入站与出站权限。
二、启用“网络发现”预设规则组
网络发现依赖 SSDP(UDP 1900)、DNS-SD 及 UPnP 设备发现广播机制,这些协议独立于文件共享规则组,专用于设备自动探测与服务通告。游戏主机若使用 UPnP 自动端口映射或局域网广播寻找玩家,必须启用此规则组,否则客户端将完全收不到主机存在信号。
1、在任务栏搜索框中输入允许应用通过防火墙并打开。
2、点击更改设置获取管理员权限。
3、向下滚动查找网络发现,确认其在专用网络列已被勾选;若使用同一局域网子网,也应勾选公用网络列。
4、若未列出该条目,说明系统未自动注册该规则组,需转至方法五执行命令修复。
三、手动放行游戏核心通信端口(TCP 与 UDP 分开配置)
当游戏明确使用固定端口监听(如 Minecraft Java 版 TCP 25565、Valheim UDP 2456–2458、Rust UDP 28015–28016),仅靠规则组放行可能不足,因部分游戏服务直接绑定原始套接字而非 svchost 托管服务。此时必须在高级防火墙中分别创建 TCP 与 UDP 入站规则,精确匹配协议类型与端口范围,避免因协议误判导致连接失败。
1、按 Win + R 输入 wf.msc 并回车,打开高级安全 Windows Defender 防火墙。
2、在左侧面板点击入站规则,再点击右侧新建规则。
3、选择端口 → 下一步 → 选择 TCP → 在特定本地端口栏输入游戏所需端口号(例如 25565)→ 下一步。
4、选择允许连接 → 下一步 → 勾选专用 → 下一步 → 输入名称如 Minecraft_TCP25565_Allow → 完成。
5、重复步骤 2–4,但本次选择 UDP 协议,端口填入对应 UDP 端口(例如 2456-2458),名称设为 Valheim_UDP2456-2458_Allow。
四、通过 PowerShell 批量启用全部网络发现与联机相关内置规则
Windows 内置多组命名规则(如 CoreNetworkDiscovery、FileAndPrinterSharing、UPnPHost),但部分可能因系统更新或策略重置处于禁用状态。使用 netsh 命令可一次性启用所有与网络发现、SMB、UPnP 相关的预设规则组,无需逐条检查,适用于规则组缺失或批量修复场景。
1、右键开始菜单,选择 Windows Terminal(管理员)或 PowerShell(管理员)。
2、依次执行以下三条命令(每条执行后观察是否返回“确定”):
3、netsh advfirewall firewall set rule group="网络发现" new enable=Yes
4、netsh advfirewall firewall set rule group="文件和打印机共享" new enable=Yes
5、netsh advfirewall firewall set rule group="UPnP 框架" new enable=Yes
五、检查并启用被禁用的现有协议相关规则
某些情况下,系统曾自动创建过协议规则(如 “SSDP Discovery Service (UDP-In)” 或 “Function Discovery Resource Publication (TCP-In)”),但被用户或第三方工具误禁用,或被更高优先级的“阻止”规则覆盖。此类隐性禁用不会在常规设置界面提示,必须进入高级防火墙手动核查状态与冲突项。
1、打开 wf.msc 管理界面。
2、分别展开左侧面板中的入站规则与出站规则。
3、在右侧规则列表顶部的搜索框中,依次输入关键词:SSDP、UPnP、Function Discovery、CoreNetwork。
4、对每个查找到的规则,右键查看属性,在“常规”选项卡中确认“已启用”复选框被勾选;若为灰色或未勾选,右键选择“启用规则”。
5、在“操作”选项卡中,确认操作为“允许连接”;若显示“阻止连接”,则该规则与当前需求冲突,应右键删除或禁用。











