网络故障排查

2023-11-01 13:38
文章标签 排查 网络故障

本文主要是介绍网络故障排查,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

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

抓包工具

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

在这里插入图片描述

设备是否有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. 有些路由器支持端口监控,可以用来对设备抓包,如:
    在这里插入图片描述

嵌入式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

说明:

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

这篇关于网络故障排查的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/323356

相关文章

网络故障排查和tcpdump抓包

网络故障排查: ping一台服务器不通,你如何排查 检查本机ip地址设置  网关和dns服务器是否设置正确 或者ip地址冲突能否上网 看路由器是否有问题 ping服务器是否运行服务器禁止ping   防火墙设置 iptables -A INPUT -P ICMP -j DROPiptables -D INPUT -P ICMP -j DROP用户不能访问服务器 怎么排查 检查用户网络连接检查服

Arthas问题排查工具

简介 Arthas 是Alibaba开源的Java诊断工具,动态跟踪Java代码;实时监控JVM状态,可以在不中断程序执行的情况下轻松完成JVM相关问题排查工作 。支持JDK 6+,支持Linux/Mac/Windows。这个工具真的很好用,而且入门超简单,十分推荐。 使用场景 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?我改的代码为什么没有执行到?难道是我没

日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个 嫌疑犯的一个。以下为4个嫌疑犯的供词。

日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个 嫌疑犯的一个。以下为4个嫌疑犯的供词。 A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说 已知3个人说了真话,1个人说的是假话。 现在请根据这些信息,写一个程序来确定到底谁是凶手。  static void Main()         {             int killer = 0;             fo

linux运维排查常用命令(开发专享)

cd: 进入到某个目录下 cd hikvision ll:详细展示该目录下有的文件 ll su 用户名:切换用户名 例子: su root 根据字符串在文件中查找信息:Grep –a –i 字符串 文件名 例子: grep -a -i 'indexCode=4a28a0dfe0244c0cbabcd9b2c3b60327' nms.nmsweb.debug.log cat 文

一次关于生产环境服务无故宕机的排查过程

故事的开始 这个故事是在一年之前,当时我们的系统运行在客户的k8s环境上。然后很神奇的是每个月底我们都会服务宕机,当然我们开启了多个实例。当时的容器线条就像心跳图一样(或许有些描述的不太准确,我没有找到当时那个像心电图一样的容器资源监控图)。 第一次的排查 当时我们还是很有信心去解决这个问题的。由于每个月的月底都是业务使用的高峰时段,也就是说,从表象上来看,qps一高,容器就挂。 业务日

排查 MyBatis XML 配置中的 IF 语句与传值名称不匹配的 Bug

文章目录 本文档只是为了留档方便以后工作运维,或者给同事分享文档内容比较简陋命令也不是特别全,不适合小白观看,如有不懂可以私信,上班期间都是在得 前言,在改一个bug得时候发现一个有意思得问题,就是mybatis得xml中if判断得问题,传值名字不匹配依旧可以进行判断,如下图 传值userName,但是有意思得事情出现了,进了if,并且没有报错,尝试了两次都是这

日志框架log4j打印异常堆栈信息携带traceId,方便接口异常排查

一、异常堆栈无traceId 排查定位问题异常痛苦        在日常项目开发中,我们会自定义一个traceId方便,链路追踪。在log4j2.xml 我们可能是这样去配置日志打印格式。 <Console name="CONSOLE" target="SYSTEM_OUT"><PatternLayoutpattern="${APP_NAME} %-d{yyyy-MM-dd HH:mm:ss}

BeanUtils.copyProperties复制属性失效排查

旁边的同事代码出现了bug, BeanUtils.copyProperties复制失败, 导致target类的值全是null BeanUtils.copyProperties复制是按照字段名称匹配的 首先注意字段名称是否完全对应, 以及对应的字段类型target的get和set类不全, 同事是因为类上没写@Data, 摸鱼帮忙排查了一些, 然后恍然大悟…

2024/9/4 Canlink配置介绍与常见故障排查

双击一个站进去配置,如果双击PLC则是PLC往外面发数据,双击伺服,则是伺服往外发数据。 例如我想读伺服的功能吗? 点击伺服的配置 将0b00的地址数据发给PLC(D100) ,寄存器长度是一个 然后下载程序即可

告别懵逼——前端项目调试与问题排查方法小结

在日常工作中,我们常常会遇到以下两类典型的挑战: 场景一: 接手无文档的老项目 1、情景描述: 你接手了一个历史久远的项目,项目文档缺失,前任开发者已经离开,而你对当前的业务逻辑和代码结构都不熟悉。然而,线上系统出现了故障,需要紧急解决。 2、挑战: 缺乏文档资料,难以快速了解系统架构。不熟悉业务流程,难以迅速定位问题。代码结构混乱,增加了调试难度。 场景二: 项目中出现难以复现的幽灵Bu