“找不到网络路径”的解决方法及排错步骤

症状:

通过\\ip\\<计算机名>访问任何计算机时都会出现“找不到网络路径”的错误提示,无法正常访问网络资源,但可以访问外部网页。

最终解决方法:

运行netsh interface ip reset c:\log.txt命令重置tcp/ip各组件到初始状态,重启电脑后解决问题。

问题解决步骤:

1、检查物理连接:因症状描述访问外部网页时没问题,所以此步可略过。

2、Ping 127.0.0.1回环地址正常,说明tcp/ip协议的安装(基本状态)没问题。

3、 ping 对方计算机名和ip地址都正常(其中有用大数据包来ping),没有丢包,说明计算机的基本连接(包括网卡本身和计算机之间的连接)和网络名称解析没问题。物理层到网络层都是没问题的,应用层协议出现了问题。

4、 检查网络设置:检查在TCP/IP协议上是否捆绑了NETBIOS(在TCP/IP协议属性高级—WINS—选择启用TCP/IP上的NETBIOS);检查是否已经安装“Microsoft的文件和打印服务组件,其它计算机也都必须启用文件和打印共享,并检查是否安装了Microsoft网络客户端。此项检查正常。

5、检查是否启动了“computer browser”的计算机浏览器服务,WIN2K/XP要确保计算机浏览服务正常启动,保证其能参与网络浏览选举和主机宣告。打开计算机管理->服务和应用程序->服务,查看“Computer Browser”没有被停止或禁用。此项检查正常。

6、使用没有带域的网络,windows xp的计算机必须启用guest来宾账号,因为未加入域的windows xp默认将来访计算机的账号等同于来宾账号,经过检查,其它被访问计算机的guest账号虽然是禁用的,但启用后故障依旧。

相关的策略设置说明:

1)  依次选择计算机配置→Windows设置安全设置本地策略安全选项 →网络访问:本地账号的共享和安全模式策略,将默认设置仅来宾本地用户以来宾身份验证更改为经典:本地用户以自己的身份验证。此项策略可以让访问计算机的用户通过网络访问使用Windows XP的计算机时,可以用自己的身份进行登录。Windows xp的默认设置为仅来宾,而windows 2003和加入域的windows xp默认设置为经典。

2) 在启用经典:本地用户以自己的身份验证方式后,可以对同时访问共享文件的用户数量进行限制,并能针对不同用户设置不同的访问权限。但是用户的口令为空时,访问还是会被拒绝。这时需检查安全选项”→“账户:使用空白密码的本地账户只允许进行控制台登录策略是否被启用,默认是启用的,根据拒绝优先的原则,密码为空的用户通过网络访问使用Windows XP的计算机时便会被禁止。

7、检查计算机是否允许来宾账号访问:逐一查看所有计算机的本地安全策略设置是否允许Guest(来宾)帐号从网络*问本地计算机。在本地安全策略管理器gpedit.msc,依次选择“计算机配置“Windows设置”“本地策略”“用户权利指派”拒绝从网络访问这台计算机,查看策略里是否有包含有GUEST帐号,如果有则删除。

8、 确保被访问机器的内置防火墙没有打开:打开本地连接属性->高级,关掉Internet连接防火墙。如果使用了第三方的防火墙,参考其相关的使用手册,确保防火墙没有禁用UDP-137UDP-138TCP-139TCP-445。此项检查后,所有计算机均未打开防火墙服务。

9、 检查RPCPlug and Play服务是否已经启动,重新注册以下的动态链接库:

regsvr32 netshell.dll

regsvr32 netcfgx.dll

regsvr32 netman.dll

经检查RPCPlug and play服务都均已启动,并成功重新注册了以上的动态链接库。

10、最后的可能就是系统Tcp/ip组件损坏或缺失,在windows 98/2k的计算机可以直接卸载再重新安装此协议,而在windows xp/2003,由于Tcp/ip是系统的核心组件,不能直接卸载,只能重置,复位Tcp/ip及相关的组件到干净的状态。在命令行窗口输入netsh interface ip reset c:\log.txt(其中,log.txt是是指定命令生成的状态日志文件名,可任意)。重新启动后,故障解决。

总结:

经过这么多的查错步骤,最后也就一条命令搞定,但是正确的排错步骤必不可少。netsh还有其它一些重要功能,以下列举几个netsh命令的一些常用子功能及使用方法,其它更详细用法请查看windows帮助和支持。

1、为网络接口指定IP地址和网关

下面的命令将配置名为 Local Area Connection 的接口,其静态 IP 地址为 192.168.0.2,子网掩码为 255.255.255.0,默认网关为 192.168.0.1

C:\>netsh interface ip

Netsh interface ip>set address name="Local Area Connection" source=static addr=192.168.0.2 mask=255.255.255.0 gateway=192.168.0.1

2重置winsock目录为空白状态

C:\>netsh winsock reset

3、为网络接口指定dns

下面的命令将配置名为 Local Area Connection 的接口,其dns地址为192.168.0.3

C:\>netsh interface ip

Netsh interface ip>set dns name=Local Area Connection”source=static addr=192.168.0.3 ddns=enabled suffix=interface

4、复位Tcp/ip及相关的组件到干净的状态

C:\>netsh interface ip reset c:\log.txt

复位Tcp/ip并将命令执行日志输出到c:\log.txt



本文转自 donhuang 51CTO博客,原文链接:http://blog.51cto.com/donhuang/50109


上一篇:Ktor: Kotlin Web后端框架 快速开始入门


下一篇:修改SUSE 10.2启动画面的方法