网络故障排查

文章目录

    • 抓包工具
    • 设备是否有IP冲突
    • 网络抓包排查
    • 嵌入式linux网络故障处理的关注点

抓包工具

wireshark抓包工具是一款开源的网络协议分析软件。工能非常强大,对TCP、UDP进行抓包分析,是最适合的。

网络故障排查_第1张图片

设备是否有IP冲突

做硬件设备开发经常会遇到各种各样的网络问题,其中IP冲突是最常见的。设备IP冲突,是指不同的设备,设置成了相同的IP地址。此时的现象是:

  • ping路由器或外网,有时通有时不通。通的时候完全正常,不通的时候完全不通。
  • 通几十秒,然后不通又几十秒,而且时长不固定,有时通得久一些,有时通了过一会儿就又不通了。

如何确诊是IP冲突:

  1. 换一个IP试试,换了IP之后,再ping原来的那个IP,如果有应答,就能确诊是IP冲突。
  2. 换了IP后,ping原来那个IP无应答,并不能确认不是IP冲突(因为arp表可能还没有更新)。

如保确诊不是IP冲突:

  1. 拔掉不正常那台机器的网线。
  2. 另一台同局域网的电脑清空arp表(windows指令为:arp -d)。
  3. ping那个IP,如果能通一定是IP冲突,不通还要进一步查。
  4. 查看电脑的arp列表(windows指令为:arp -a),看有没这那个IP的mac。
  5. 如果没有,就可以判断不是IP冲突

网络抓包排查

软件开发,直接在电脑上抓包就可以。可做设备开发,又不能在设备上安装抓包工具,如何抓包分析呢。

**手机抓包:**将电脑的WIFI共享一个热点出来,让手机连这个热点,在电脑上抓包。

设备抓包:需要工具,买个抓包交换机,比如:TP-LINK的端口镜像交换机(TL-SF2005)。

说明:

  1. 普通的交换机或路由器,是不能对设备进行抓包的。因为网络连接后,数据不会发到所有端口,在抓包的那个端口就收不到数据。
  2. 有些路由器支持端口监控,可以用来对设备抓包,如:
    网络故障排查_第2张图片

嵌入式linux网络故障处理的关注点

  1. 先试一下能不能ping通外网域名,如:ping www.baidu.com
  2. 如果能则正常,如果ping不通,看一下ping的域名是否能解析出来IP。
  3. 如果ping域名虽不能通但能出来IP,说明DNS解析是通的,是网络禁止ping。
  4. 如果是网络禁止ping,可用telnet试,如:telnet www.baidu.com 80
  5. 如查ping域名,IP出不来,试一下直接ping外网IP,如:ping 114.114.114.114
  6. 用telnet时,确认服务器是否支持那个端口。如:telnet 114.114.114.114 80是不通的。
  7. 如果外网IP能通,应该是DNS没设置对,查/etc/resolv.conf
  8. 如果外网IP不通,试一下ping网关,如:ping 192.168.1.1
  9. 如果网关能通,外网IP不通,可能是路由器、入户网线、网络是否欠费等原因。
  10. 如果网关能通,外网IP不通,还有可能是默认网关没设置对,route -n查看。
  11. 如果网关不通,很可能本机网络没设置对,ifconfig查是否为同个一网段,是否设置了IP。
  12. 如果网关不通,也可能是路由器没开或路由器的IP不对(ping的ip不是路由器的IP)。
  13. 如果ifconfig看不到网卡,试一下手动打开网卡,如:ifconfig eth0 up
  14. 如果ping 127.0.0.1不通,试一下:ifconfig lo up

说明:

  • 以上这些网络知识要点,相信能应对绝大部分问题。如果对以上描述不明白原理,可以自行百度。

你可能感兴趣的:(编程)