我有点不明白为什么我无法通过本地网络地址访问 Windows 共享文件夹,即使是从公开共享的计算机上访问。
当我尝试通过\\localhost
一切正常查看共享文件夹时,我可以看到文件。
但是,当我尝试通过本地网络地址(192.168.1.2)从同一台计算机连接时,它会显示文件夹列表,但无法打开它。
192.168.1.2
我可以毫无问题地ping 我的地址 ( )。防火墙已关闭。没有防病毒软件。我已打开“文件和打印机共享”和“网络发现”。
Microsoft Windows [Version 10.0.15063]
这是我的 ipconfig 的样子,没有什么可疑的。
C:\Users\nrj>ipconfig /all
Windows IP Configuration
Host Name . . . . . . . . . . . . : EUGENE-PC
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Hybrid
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No
Ethernet adapter local:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Realtek PCIe GBE Family Controller
Physical Address. . . . . . . . . : <hidden>
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
Link-local IPv6 Address . . . . . : fe80::c0cf:f044:74d2:c5ec%11(Preferred)
IPv4 Address. . . . . . . . . . . : 192.168.1.2(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Lease Obtained. . . . . . . . . . : Saturday, August 12, 2017 14:57:30
Lease Expires . . . . . . . . . . : Sunday, August 13, 2017 14:57:30
Default Gateway . . . . . . . . . : 192.168.1.1
DHCP Server . . . . . . . . . . . : 192.168.1.1
DHCPv6 IAID . . . . . . . . . . . : 190858699
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-1E-9B-1E-0E-00-1F-C6-78-EC-28
DNS Servers . . . . . . . . . . . : 192.168.1.1
NetBIOS over Tcpip. . . . . . . . : Disabled
445端口的Netstat:
C:\Users\nrj>netstat -a | findstr /R /C:.*445.*
TCP 0.0.0.0:445 EUGENE-PC:0 LISTENING
TCP [::]:445 EUGENE-PC:0 LISTENING
我还可以检查什么来弄清楚这一点?
更新型多巴胺网络适配器属性显示“文件和打印机共享”已启用。
再次澄清一下,192.168.1.2
这是我的计算机的地址,我尝试从该地址访问我自己的文件共享,但无法访问。这是路由表。
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.2 35
127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
192.168.1.0 255.255.255.0 On-link 192.168.1.2 291
192.168.1.2 255.255.255.255 On-link 192.168.1.2 291 <- see here
192.168.1.255 255.255.255.255 On-link 192.168.1.2 291
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 192.168.1.2 291
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 192.168.1.2 291
更新 2.netcfg
输出这里:https://pastebin.com/zRa7wi1t。
答案1
当您 6 个月前发布此问题时,为了重现您的问题,我先在网络适配器的高级 TCP/IP 设置中禁用了 TCP/IP 上的 NetBIOS,然后重新启用。几周后,我发现我遇到了与 OP 中描述的相同的问题(只是,这是我自己造成的)。经过数小时的研究,我最终解决了这个问题,最终费尽心思比较了一台正常工作的计算机和我那台不正常工作的机器的注册表。
这是我发现的解决方案。(您可能想先喝杯啤酒……)
步骤 A:获取网络适配器的 GUID
您将需要网络适配器的 GUID。它看起来像这样:
{DED7C856-1234-5678-BA7E-FF9BF300F579}
获取方法如下:
通过 PowerShell:
运行这个:
Get-NetAdapter | fl Name,Status,InterfaceDescription,Status,MacAddress,LinkSpeed,InterfaceGuid
记下适配器的接口指南价值。
通过命令提示符(来源):
如果有必要,使用服务 MMC 管理单元(运行
services.msc
)启动有线自动配置服务(用于有线网络接口)或无线网络自动配置服务(用于无线接口)。运行与您的接口类型相对应的命令:
有线:
netsh lan show interfaces
无线:netsh wlan show interfaces
记下全局唯一标识符值(显示时不会显示周围的括号,您需要添加括号)。
步骤 B:编辑注册表
运行
regedit
打开注册表编辑器。导航至以下键:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Linkage
对于下表中的三个值(绑定、导出和路由)中的每一个,双击该值以打开值数据编辑器。
检查数值数据中显示的字符串数据下表中的列。当表格显示时,
{GUID}
将其替换为网络适配器的实际 GUID,包括周围的括号。例如,如果您的适配器的 GUID 根据{DED7C856-1234-5678-BA7E-FF9BF300F579}
下表绑定注册表中的值应该具有以下两个条目:\Device\Tcpip_{DED7C856-1234-5678-BA7E-FF9BF300F579} \Device\Tcpip6_{DED7C856-1234-5678-BA7E-FF9BF300F579}
将缺失的数据值作为新行添加到文本框末尾。对表格中显示的每个值都执行此操作。
项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Linkage +--------+-----------------------------+ | 价值 | 数据 | +--------+-----------------------------+ | 绑定 | \Device\Tcpip_{GUID} | | | \设备\Tcpip6_{GUID} | +--------+-----------------------------+ | 导出 | \Device\NetBt_Tcpip_{GUID} | | | \设备\NetBt_Tcpip6_ {GUID} | +--------+-----------------------------+ | 路线 | “Tcpip” “{GUID}” | | | “Tcpip6” “{GUID}”| +--------+-----------------------------+
- 对下面的每个表重复步骤 2 到 5(对于下面的这个表,您将使用所示的两个键的数据表):
项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Linkage 项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Linkage +-------+-----------------------------+ | 价值 | 数据 | +-------+-----------------------------+ | 绑定 | \Device\Tcpip_{GUID} | | | \设备\Tcpip6_{GUID} | | | \设备\NetBT_Tcpip_{GUID} | | | \设备\NetBT_Tcpip6_{GUID} | +-------+-----------------------------+ | 路线 | “Tcpip” “{GUID}” | | | “Tcpip6” “{GUID}”| | | “NetBT” “Tcpip” “{GUID}”| | | “NetBT” “Tcpip6” “{GUID}”| +-------+-----------------------------+
项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Linkage +--------+---------------------------------------------------------+ | 价值 | 数据 | +--------+---------------------------------------------------------+ | 导出 | \Device\LanmanServer_Tcpip_{GUID} | | | \设备\LanmanServer_Tcpip6_ {GUID} | | | \设备\LanmanServer_NetBT_Tcpip_{GUID} | | | \设备\LanmanServer_NetBT_Tcpip6_{GUID} | +--------+---------------------------------------------------------+
项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Linkage +--------+----------------------------------------------+ | 价值 | 数据 | +--------+----------------------------------------------+ | 导出 | \Device\LanmanWorkstation_Tcpip_{GUID} | | | \设备\LanmanWorkstation_Tcpip6_ {GUID} | | | \设备\LanmanWorkstation_NetBT_Tcpip_{GUID} | | | \设备\LanmanWorkstation_NetBT_Tcpip6_{GUID} | +--------+----------------------------------------------+
步骤 C:重新启动
重新启动计算机以使更改生效。
答案2
答案3
答案4
从您分享的内容来看,我的电脑与您的电脑相比,唯一的不同就是 NETBIOS over Tcpip。我的电脑显示已启用,而您的电脑显示已禁用,因此这应该是一个足够简单的设置,看看它是否能解决您的问题。
在以太网适配器属性窗口中,双击 Internet 协议版本 4 (TCP/IPv4) 以调出 IPv4 属性窗口。
然后选择 WINS 选项卡,并启用 NetBIOS 设置。我的是默认设置,因此如果设置为默认设置,请选择启用它。
重新启动计算机并查看是否有效。
更新:
netstat -an -p tcp
这将返回已连接的 IP 地址(如果已连接)以及链接是否已建立或正在监听。我已从结果中省略文本,以仅显示相关内容。
Active Connections
Proto Local Address Foreign Address State
TCP 192.168.1.15:139 0.0.0.0:0 LISTENING
TCP 192.168.1.15:445 192.168.1.31:53594 ESTABLISHED
TCP 192.168.1.15:445 192.168.1.33:33598 ESTABLISHED
我有来自两个不同 IP 地址到我的共享的连接,只是想作为一个例子展示。
端口 139 用于我们的 NetBIOS 会话服务
端口 445 用于我们的 SMB 文件共享
问候,
克里斯