LAN网络故障诊断脚本及原理

需积分: 5 0 下载量 177 浏览量 更新于2024-07-01 收藏 221KB DOC 举报
"LAN网络故障诊断脚本" 这篇文档主要涵盖了LAN(局域网)网络故障诊断的代码和原理,旨在帮助用户识别并解决网络连接问题。文档提供的诊断脚本是针对Windows操作系统设计的,通过命令行工具进行网络状态检查。 一、诊断代码解析 1. 物理连接检查:脚本首先使用`ipconfig /all`命令获取网络配置信息,然后通过`find`命令查找“Media disconnected”字符串来判断物理连接是否正常。如果发现物理连接断开,脚本会提示用户检查网络连接;否则,显示“----ok.”。 2. 启动或重启本地连接:当检测到物理连接正常后,脚本将遍历设备管理器中的网络适配器。它使用`devcon`命令(设备控制工具)列出所有网络设备,并检查第一个设备的状态。如果设备被禁用,脚本会使用`devcon enable`启用设备,同时执行`netsh winsock reset`重置Winsock,然后通过`ping`命令测试网络连通性。 3. 判断本地连接是否受限:接着,脚本通过`ipconfig /all`再次获取网络信息,查找IP地址是否为169.254.*.*,这是未获得有效IP地址时自动生成的APIPA(自动专用IP地址)。如果找到,说明本地连接受限或未正确配置,变量`localconn`设为0;否则,设为1。 二、诊断原理 1. 网络接口状态检测:通过`ipconfig /all`命令,系统可以获取到网络接口的详细信息,包括IP地址、子网掩码、默认网关等,从而判断网络连接是否存在。 2. 设备管理:`devcon`命令是设备管理的强大工具,它可以启用、禁用设备,这对于网络适配器的管理尤其有用。当网络适配器被禁用时,启用它能恢复网络连接。 3. 网络通信测试:`ping`命令用于测试与目标主机的网络连接,这里使用`ping -w1000 -n10 127.1`命令进行1秒间隔的10次ping操作,确保网络通信的稳定性和延迟。 三、更新与支持 文档提到的讨论地址(http://www.cn-dos.net/forum/viewthread.php?tid=51117&fpage=1)可能是用户获取代码更新和寻求帮助的地方。用户在遇到问题或者需要最新版本的诊断脚本时,可以访问这个论坛。 总结来说,这份LAN网络故障诊断脚本提供了自动化检查和修复网络连接问题的方法,适用于对网络连接有需求但缺乏专业知识的用户。通过运行此脚本,用户可以快速定位并解决常见的网络故障。

06-01 03:22:44.935 W/ ( 0): ==20210817==> hub_port_init 1 #2 06-01 03:22:44.935 W/ ( 0): Plug in USB Port2 06-01 03:22:44.938 W/ ( 0): [GLUE]__Glue_PM_SetupEthernetWakeup Disable WOL!! 06-01 03:22:44.938 W/ ( 0): [GLUE]__Glue_PM_SetupEthernetWakeup (EEP_WOW = 0) _gi4PDWNCWifiWowState=1 !! 06-01 03:22:44.938 W/ ( 0): [GLUE]__Glue_PM_SetupEthernetWakeup (EEP_WOL = 0) !! 06-01 03:22:44.938 W/ ( 0): [GLUE]Disable WOW 06-01 03:22:44.938 W/ ( 0): [GLUE]Enable WOBT, _u8BtGpioNum = 13 , Polarity = 1 06-01 03:22:44.938 W/ ( 0): [GLUE]Enable WOEWBS, _u8EwbsGpioNum = 255 , Polarity = 1 06-01 03:22:44.938 W/ ( 0): get env pu8Env = ENABLE_WAKEUP 06-01 03:22:44.941 W/ ( 0): Get Value 0 06-01 03:22:44.941 W/ ( 0): [GLUE]__Glue_PM_SetupVoiceWakeup[2321] _bWovEnable is 0 06-01 03:22:44.941 W/ ( 0): [GLUE]__Glue_PM_UpdateWakeupConfig(2637) Force Enable IR&SAR PM Wakeup! . 06-01 03:22:44.941 W/ ( 0): [GLUE]Disable VGA PM Wakeup 06-01 03:22:44.941 W/ ( 0): [GLUE]Enable CEC PM Wakeup 06-01 03:22:44.941 W/ ( 0): [GLUE]Disable WOL PM Wakeup 06-01 03:22:44.941 W/ ( 0): [GLUE]Disable Voice Wakeup 06-01 03:22:44.941 W/ ( 0): [GLUE]u8PmWakeWowLanGpioNumber = 255 , Polarity = 255 06-01 03:22:44.941 W/ ( 0): [GLUE]u8PmWakeBtGpioNumber = 13 , Polarity = 1 06-01 03:22:44.941 W/ ( 0): [GLUE] u8PmWakeEwbsGpioNumber = 255 , Polarity = 1 06-01 03:22:44.941 W/ ( 0): [GLUE]__Glue_PM_ResetWakeupSource[3070] done. 06-01 03:22:44.941 W/ ( 0): [GLUE] __Glue_PM_SuspendClearFlag done 06-01 03:22:44.942 W/ ( 0): __Glue_PM_EWBSWakeunlock 翻译这顿log

2023-06-07 上传