在日常运维中,我们经常遇到同事反馈“网络突然断了”“网页打不开”“内网共享访问不了”,或者更夸张的“其实一断就全断,全公司都上不了网”这种现象。这些问题看起来复杂,但其实大部分(我敢说90%以上)都可以通过几条简单的命令行工具快速定位根源。

为什么说“其实一断就全断”?因为企业网络往往是星型或树型拓扑,核心依赖路由器、交换机或网关。一旦关键节点(如默认网关)出问题,或者出现广播风暴、arp欺骗、配置冲突等,整个网络就会集体“罢工”。
但别担心,今天我重点分享windows和linux下最常用的7条诊断命令,结合标准排查流程,帮助大家从物理层到应用层一步步排除故障。
第一步:基础检查
本机配置是否正确?(ipconfig / ifconfig)
网络不通的第一嫌疑人往往是本机配置出错。ip地址冲突、网关设置错、dns失效,都是高发问题。
windows下:打开cmd,输入ipconfig /all

检查点:
- ip是否在正确网段?
- 是否有“自动获取”但没拿到ip(显示169.254.x.x的自分配地址)?
- 默认网关是否正确?
- dns是否设置了公共dns(如8.8.8.8)?
常见修复:ipconfig /release + ipconfig /renew 重新获取ip,或者手动设置正确配置。
linux下:ifconfig 或 ip addr show

检查类似内容:ip、掩码、网关(通过ip route查看)。
有同事反馈上网慢,ipconfig一看,ip冲突了(两台机器同ip)。解决:修改一台ip,重启网卡。
如果本机配置没问题,进入下一步。
第二步:测试连通性
能ping通吗?(ping)
ping是万能入门命令,用icmp协议测试主机间是否可达。
用法:
- ping 本机回环:
ping 127.0.0.1(测试tcp/ip栈是否正常)

- ping 默认网关:
ping 192.168.1.1 - ping 内网其他主机:
ping 192.168.1.10 - ping 公网ip:
ping 8.8.8.8

- ping 域名:
ping www.baidu.com(顺带测试dns)

高级选项:
ping -t持续ping(ctrl+c停止)ping -n 100发送100个包,查看丢包率
解读:
- 全通、延迟低:链路正常。
- 请求超时:不通,可能物理断、防火墙阻挡、目标关闭icmp。
- 部分丢包:网络拥塞或不稳定。
为什么“一断就全断”常在这里体现? 如果ping不通网关,但本机ip正常,往往是物理层问题(网线松、交换机端口坏)或二层问题(vlan错、arp问题)。全公司ping不通网关,就是网关挂了或广播风暴导致交换机瘫痪。
第三步:检查二层映射
arp有问题吗?(arp)
arp负责ip到mac的解析,二层故障常出在这里(如arp欺骗、缓存错)。
用法:
- windows:
arp -a查看缓存表

- linux:
arp -n

检查点:
- 网关mac是否正确?(可对比交换机mac表)
- 有无重复ip对应的不同mac(冲突)?
修复:
arp -d *清空缓存(windows)- 如果怀疑arp攻击,用防arp工具或绑定静态arp。
内网互访慢,arp -a发现网关mac被伪造成某台机器的mac——典型arp欺骗。隔离中毒机后解决。
第四步:追踪路径
哪里断了?(tracert / traceroute)
ping只能测端到端,tracert能显示每跳路由,精准定位断点。
用法:
- windows:
tracert 8.8.8.8或tracert -d www.baidu.com(-d不解析域名,加快)

- linux:
traceroute 8.8.8.8


输出:每跳显示ip和延迟,* * * 表示超时。
解读:
- 前几跳正常,后续超时:问题在中间路由。
- 某跳延迟高/丢包:该节点拥塞。
比如,如果能上内网但上不了外网,tracert 8.8.8.8 在公司防火墙跳超时。检查防火墙策略,放行后正常。
第五步:查看连接状态
端口监听了吗?(netstat)
netstat显示活跃连接、监听端口、路由表等。
常用选项:
netstat -an查看所有连接和监听端口

netstat -rn查看路由表(相当于route print)

netstat -s查看统计(丢包等)

linux下推荐ss -tuln 替代,更快。

检查点:
- 目标服务端口是否listening?
- 有无大量time_wait或syn_sent(连接异常)?
比如共享文件访问不了,netstat发现服务器445端口没监听——smb服务停了,重启服务解决。
第六步:路由表对不对?(route)
路由错会导致数据包走错路。
用法:
- windows:
route print

- linux:
route -n或ip route

检查默认网关(0.0.0.0)是否指向正确。
修复:route add 添加静态路由,或删除错的route delete。
比如多网卡服务器,外网不通。route print发现默认网关指向内网卡,修改优先级解决。
第七步:dns解析正常吗?(nslookup)
网页打不开但ping ip通,往往是dns问题。
用法:
nslookup www.baidu.com

nslookup www.baidu.com 8.8.8.8指定dns服务器

解读:返回正确ip即正常。
修复:改dns为8.8.8.8或114.114.114.114。
遇到网络不通,按这个顺序走,效率最高:
- 检查物理层:网线灯亮吗?换根线/端口试试。
- ipconfig/ifconfig:本机配置对不对?
- ping 127.0.0.1 → ping 网关 → ping 公网ip → ping 域名(分层测试)
- arp -a 检查二层
- tracert 追踪路径
- netstat/route 检查连接和路由
- nslookup 测试dns
如果全公司“一断就全断”,优先检查核心设备(路由器、交换机日志)、广播风暴、病毒。
发表评论