当网络出现问题时,第一需要的是锁定网络问题所在,然后再去尝试寻找解决的方法。下面是个人常用的排查手段总结,希望对你有所帮助。
ping命令的使用
ping:ICMP协议(查询报文、差错报文是traceroute命令),封装在IP包内
这里的类型:主动请求为8,主动应答为0
ping命令问题排查
根据信息提示缩小范围,例如下面常见错误
1. Unknown host: DNS解析不到
2. Destination host Unreachable:没有设置网关,导致第一步的路由都不可达,需要检查路由
3. timeout:网络不通,但最近的路由存在
排查步骤
1. ping 127.0.0.1确认本地网卡是否正常
2. 查看路由设置是否正确(网卡驱动是否正常--可能性较低)
3. 路由表是否遭到破坏
当然,有时ping返回timeout是主机采取了防护措施,不响应这样的ICMP请求
查看路由的方法
上面说到ping不通的一种情况是路由不对,那么查看路由的三个方法也是必须了解的
netstat -rn
route -n
> 网关的*表示不需要经路由中转,可以直达
> 标志的U表示该路由是up状态,G表示走特定路由
ip route (推荐)
traceroute命令使用
windows是tracert。相对于ping,它可以完整的记录下经过的路由,得到路由的方法是每次发送TTL=N的数据包出去探测,每经过一个路由就-1,0的时候就返回给主机。N从1开始累加
具体参数可以查手册,traceroute可以在返回代码中显示各种状态:例如终点不可达3,源抑制4,超时11,重定向5