答案是:设备不可见主因是网络类型设为“公用”、网络发现与共享未启用、关键服务未运行、工作组不一致及防火墙拦截SMB端口。需依次切换为专用网络、启用网络发现和文件共享、启动fdrespub等5项服务、统一工作组为WORKGROUP、放行防火墙中“文件和打印机共享”规则。

局域网内两台电脑连着同一个路由器,互相能ping通、也能用IP地址(如\192.168.1.100)直接访问对方共享文件夹,但打开“网络”却一个设备都看不到——这不是网络不通,而是Windows没把对方当“自己人”来广播和发现。
先确认并切换为专用网络
Windows默认只在“专用”网络类型下启用网络发现和SMB共享。如果当前网络被识别为“公用”,系统会主动屏蔽所有广播行为,导致设备列表永远为空。
点击任务栏右下角网络图标 → 选择“网络和 Internet 设置” → 点击当前连接(Wi-Fi 或 以太网)→ 进入“属性” → 将“网络配置文件类型”从“公用”改为【专用】。
这一步改完立刻生效,无需重启。改完后马上刷新“网络”窗口,多数情况下设备就出现了。
启用网络发现与文件共享
网络发现是双向机制:你得让自己的电脑“喊出来”,也得允许它“听别人喊”。只开一个,列表照样空。
控制面板 → 网络和 Internet → 网络和共享中心 → 更改高级共享设置 → 展开“专用”配置 → 必须同时勾选:【启用网络发现】 和 【启用文件和打印机共享】。
向下滚动到“所有网络”区域 → 将“密码保护的共享”设为“关闭密码保护的共享” → 每改一项都点“保存更改”。
注意:如果本机用户没设密码,又没关密码保护共享,其他电脑连弹窗都不会弹,直接静默拒绝。
启动关键系统服务
界面开关开了,不代表后台真在干活。以下五项服务缺一不可,任意一个停止,网络发现就形同虚设。
方法一:图形界面手动启动
Win+R → 输入 services.msc → 找到并依次检查以下服务状态是否为“正在运行”,启动类型是否为“自动(延迟启动)”:
• Function Discovery Resource Publication
• SSDP Discovery
• UPnP Device Host
• Server
• Workstation
方法二:PowerShell一键拉起(推荐)
以管理员身份运行 PowerShell,逐行执行:
Start-Service fdrespub
Start-Service ssdpsrv
Start-Service upnphost
Start-Service LanmanServer
Start-Service LanmanWorkstation
执行完无报错即生效,不用重启。
检查并统一工作组名称
工作组不一致不会导致完全无法访问,但会干扰主浏览器选举和设备枚举顺序,尤其在多台设备混合环境中容易出现“时有时无”的可见性问题。
第一步:右键“此电脑” → “属性” → “高级系统设置” → “计算机名”选项卡 → 查看“工作组”字段。
第二步:对局域网中每一台需要互通的电脑重复第一步操作,确保全部显示为【WORKGROUP】(大小写不敏感,但拼写必须完全一致)。
第三步:任意一台修改后,必须重启该电脑,新工作组名才会参与广播选举。
放行防火墙中的文件共享规则
Windows Defender 防火墙默认拦截入站的SMB通信(TCP 445、UDP 137–138),即使所有设置全对,请求也会被静默丢弃,你根本收不到任何错误提示。
控制面板 → Windows Defender 防火墙 → 允许应用或功能通过 Windows Defender 防火墙 → 点“更改设置” → 找到“文件和打印机共享” → 勾选【专用】列(如果你用的是Wi-Fi且系统识别为“公用”,则“公用”列也必须勾选)。

















