我在网络上有三台 Windows 10 机器,在同一个默认网络上:WORKGROUP
。
其中一个可以看到所有三个,称为Media-PC
。另外两个只能互相看到但看不到Media-PC
,称为desktop-1
& desktop-2
。
我已开启以下服务DNS Client
,、、& 。Function Discovery
SSDP Discovery
UPnP Service
三台机器上都运行着网络发现。我可以从这三台计算机之间互相 ping 通。
我不明白为什么desktop-1
并且2
看不到Media-PC
。
Media-PC
可以看到他们,但他们只能看到彼此。
希望有人能帮助我。
答案1
网络发现一直以来都是所有 Windows 版本中的一个难题,尤其是现在应用了许多安全修复程序之后。
我收集了以下我所知道的所有修复方法。你可以逐一尝试,撤销那些没有帮助的方法。
同质账户类型
所有计算机必须使用相同类型的帐户登录。这意味着所有计算机都必须拥有 Microsoft 帐户或本地帐户,因为混合使用帐户类型是行不通的。
如果您更改已创建某些网络共享的帐户类型,则应删除并重新创建这些共享。
网络重置
在 PC 设置、网络和 Internet 设置中,单击网络重置,然后在下一个屏幕中单击立即重置。
这将重置所有网络设置,因此您可能必须重新创建任何定义的 VPN 并重新启用网络发现等设置。
计算机浏览器服务损坏
正如微软文章中所述 Windows 10 Fall Creators Update 2017 和 Windows Server 半年度频道中未默认安装 SMBv1 说:
计算机浏览器服务依赖 SMBv1 协议来填充 Windows 资源管理器网络节点(也称为“网络邻居”)。此旧协议早已弃用,不提供路由,并且安全性有限。由于该服务在没有 SMBv1 的情况下无法运行,因此它同时被删除。
但是,如果您仍然需要在家庭和小型企业工作组环境中使用 Explorer 网络来定位基于 Windows 的计算机,则可以在不再使用 SMBv1 的基于 Windows 的计算机上执行以下步骤:
- 启动“功能发现提供程序主机”和“功能发现资源发布”服务,然后将其设置为自动(延迟启动)。
- 打开资源管理器网络时,请根据提示启用网络发现。
该子网内具有这些设置的所有 Windows 设备现在都将出现在“网络”中以供浏览。这使用 WS-DISCOVERY 协议。如果 Windows 设备出现后,其他供应商和制造商的设备仍未出现在此浏览列表中,请联系他们的设备。他们可能已禁用此协议,或者仅支持 SMBv1。
如果这没有帮助,您可以在“程序和功能”->“打开或关闭 Windows 功能”中启用 SMB 1.0/CIFS 文件。同时启用 SMB 1.0/CIFS 客户端和服务器。缺点是您将容易受到利用 SMB v1.0 漏洞(如 Wanna Cry)的病毒的攻击,尽管您的其中一台计算机必须先被感染,病毒才能利用此漏洞传播到其他计算机。
重新检查网络发现
在提升的命令提示符下运行
netsh advfirewall firewall set rule group="Network Discovery" new enable=Yes
所需的 Windows 服务
在服务控制台中,确保以下服务的启动类型为“自动”且状态为“正在运行”。
- 功能发现提供程序主机-自动(延迟启动)
- 功能发现资源发布-自动(延迟启动)
- DNS 客户端 - 自动
- SSDP 发现 - 自动
- UPnP 设备主机 - 自动(如果您使用 UPnP)
缺少主浏览器计算机
在您希望始终成为主浏览器的计算机上使用 regedit,然后导航到注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Browser\Parameters
将值MaintainServerList
从“自动”更改为“是”。
如果缺失,则添加一个新的字符串值IsDomainMaster
并将其设置为 True。
您可能需要重新启动才能激活此功能。
有关详细信息,请参阅 指定浏览器计算机。
添加其他计算机的凭据
如果您看不到其他计算机创建的共享,则可能需要向两台计算机添加相互的凭据。
转到控制面板、用户帐户、管理您的凭据,然后单击 Windows 凭据。现在单击添加 Windows 凭据。
按如下方式添加所有用户:
- Internet 或网络地址:另一台计算机的名称
- 用户名:其他计算机名称或 Microsoft 帐户电子邮件地址
- 密码:其他电脑的登录密码
按“确定”保存。可能需要重置网络。
检查网络配置文件的共享选项
在控制面板->网络和共享中心->更改高级共享设置中,确保针对您的配置文件类型(通常为私人)选中所有“打开......”和“允许......”选项。
重新绑定所有网络适配器
对于棘手的问题,卸载设备管理器中的所有网络适配器并重新启动可能会有所帮助。 重新启动后,Windows 10 会自动重新安装网络适配器。
答案2
答案3
我最近在安装了一些可能有问题的网络驱动程序后遇到了同样的问题。如果 harrymc 和 Nurudin 的解决方案不起作用,请尝试运行命令net view
等nbtstat -a DEVICE
详细说明。
如果nbtstat -a DEVICE
返回类似错误NetBT is not bound to any devices
,您可以尝试通过直接编辑注册表来手动绑定它(Regedit 存在风险,请自行承担风险),RGeorge68 的说明:
“我发现一个注册表项 (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Linkage),其值包含接口列表。局域网卡的 guid(取自 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards)不在任何这些列表中,因此我将其添加到列表中并重新启动。现在,netbios 已在 LAN 上启用,但无法访问共享。我找到了 smb 的更多注册表项(HKLM\SYSTEM\CurrentControlSet\Services\Lanmanager 和 lanmanagerworkstation),并在那里修改了列表。重新启动后,共享开始在一定程度上工作。”
一旦nbtstat -a DEVICE
工作正常,尝试查看所有计算机现在是否可以相互发现。这为我解决了这个问题。