网络丢包故障定位方法大揭秘:工程师必备技能
晚上好,这里是工程师俱乐部的。今天我们就来说说网络丢包。假设您去 ping 一个网站。如果能ping通,并且网站返回全面的信息,则说明与网站服务器通讯畅通;
如果Ping不通,或者网站返回的信息不一致,很可能是数据丢失了。
网络丢包最常见的原因有水晶头氧化、网卡适配器损坏、网线环路、光衰过大等原因。
当网络出现问题时,首先我们会使用ping命令来测试是否有丢包的情况。用过的人都知道,可以使用命令:ping -t 192.168.16.1 或 ping 192.168.16.1。
但丢包的原因其实有很多,定位问题也难倒了很多新手。因此,今天我给大家分享一些常见的丢包故障定位方法,希望大家在遇到丢包的时候不要惊慌。
当然,知道如何定位网络丢包只是互联网世界的沧海一粟。想要在职场上独当一面,学习系统理论、掌握实用方法才是硬道理。
01
什么是网络丢包
在解释网络丢包之前,需要先了解一下报文的发送和接收原理。
数据以数据包为单位传输,单位为字节。数据在网络上传输。受网络设备、网络质量等原因影响,导致接收的数据小于发送的数据,导致丢包。
了解了数据包的发送和接收原理后,我们可以了解到,丢包的原因主要涉及三类:网卡设备、网卡驱动、内核协议栈。
正如文章开头提到的,网络丢包是指在使用Ping查询目的站时,由于各种原因导致数据包在通道中丢失的现象。
Ping 命令使用 ICMP 回显请求和回显应答消息。
ICMP 回显请求消息是主机或路由器向特定目标主机发送的查询。接收此消息的机器必须向源主机发送 ICMP 回显应答消息。
该查询消息用于测试目的站是否可达并了解其状态。
需要指出的是,Ping命令是直接使用网络层ICMP协议的示例,它没有经过传输层的UDP或TCP协议。
网络丢包是网络中常见的故障之一,它会导致网络速度下降,甚至导致网络中断。
网络故障不可避免,但如何快速隔离和排除故障是网络工程师应具备的基本素质。
02
常见丢包问题+解决方案
01 网络数据包时断时续,丢包严重。
【故障现象】
https://img1.baidu.com/it/u=3784724709,63686366&fm=253&fmt=JPEG&app=138&f=JPEG?w=720&h=344
通常当出现故障时,该方向的网络会出现振荡中断。使用Ping命令测试,发现数据包发送延迟在一段时间内略高于正常值,并且短时间内数据包全部丢失。丢包率超过60%,丢包曲线规律,网络服务基本不可用。 。
【故障分析】
在局域网中,当网络出现振荡、断断续续的情况时,一般可能是由于互连的两台交换机之间存在环路,或者交换机的两个端口直接相连。
这会导致局域网的生成树协议无法构建,网络会反复检查并尝试构建新的生成树网络,从而导致网络振荡。
同时,由于广播报文在交换机之间反复发送,会形成“广播风暴”,使交换机不堪重负,网络传输通道严重阻塞,通信数据无法正常处理。
虽然某台接入交换机可能会出现环路,但会影响以三层交换机为核心的整个局域网的稳定运行。
【故障排除】
当发现网络数据包时断时续、丢包严重,特别是整个单元或整个楼层出现振荡中断时,即可判断单元内交换机出现环路。
作为网络管理员,首先应检查各接入交换机的指示灯闪烁情况。通常,当发生环路时,指示灯会快速闪烁,每秒超过4次,并且环路开关会更加突出。
将交换机级联接入网线一一拔掉,实时监控交换机状态。拔掉某个端口的网线后,交换机指示灯恢复正常。如果进一步查找,您会发现连接电缆的末端有一个环路。清洁回路。连接网线后,网络恢复正常。
02 网络数据包发送超时严重,时有不规则丢包现象。
【故障现象】
网络突然变得严重拥堵,日常办公程序无法正常运行,网页打开缓慢,有时会因超时而中断。未发现网络设备有问题。网络中的几台计算机在加入网络后速度明显变慢,但在禁用网卡或中断网络后恢复正常。
【故障分析】
首先在用户终端上测试ping网关。结果是可以ping通网关,但是数据包发送超时严重,丢包率在30%左右,而且丢包不规律。
其次,登录用户交换机,执行arp -a命令。发现网关IP和网关MAC地址指向正确。
通过以上测试,网络设置错误和ARP欺骗已经基本排除。丢包表现出一定程度的随机性,不具有连续性和振荡性。网络环路问题已基本排除。初步判断该现象可能是病毒攻击等原因造成的。
为此,需要进一步获取网络中传输的ARP信息、原始数据包等信息。
再次,部署数据包捕获分析。在交换机上配置一个镜像端口,将维护终端连接到该端口,启动网络协议分析工具()捕获并分析网络的数据通信,大约10分钟后停止。
在网络分析系统主界面左侧的节点浏览器中发现网络中可能存在伪造IP地址攻击或自动扫描攻击。
选择连接视图,发现10分钟内,网络上发起了12000多个连接,大部分状态为客户端请求同步。
据此判断网络中存在自动扫描攻击。
最后详细查看连接信息,发现这些连接大多是同一主机发起的。选择任意连接,选择数据包视图,查看传输数据的原始解码信息,发现这台计算机正在主动响应网络中其他主机的TCP 445。端口扫描攻击可能是由于主机感染了病毒程序或者有人使用扫描软件造成的。通过分析图表视图,进一步确定主机肯定存在自动扫描攻击。
【故障排除】
https://img0.baidu.com/it/u=374743666,3200756560&fm=253&fmt=JPEG&app=120&f=JPEG?w=719&h=500
找到问题根源后,对该主机进行了隔离。经过一段时间的测试,网络丢包情况有所缓解,但问题并没有从根本上解决。
于是我再次启动网络协议分析系统进行抓包分析,又发现了另一台主机也有类似的情况。据此,基本可以断定两台主机都感染了病毒,并且病毒会主动扫描网络上的其他主机,查看TCP 445端口是否开放。如果某个主机打开该端口,就会攻击并感染该主机。
如此循环就会造成上述网络故障。新发现的两台感染病毒的主机立即被物理隔离,网络通信立即恢复正常,随后对终端进行消毒。
03 网络数据包延迟严重,下载、浏览等服务无法正常使用。
【故障现象】
日常局域网内数据共享正常,但外出浏览外网、下载数据时速度明显下降。使用Ping命令发现某个方向的网络延迟特别大,甚至有少量丢包。
【故障分析】
一般情况下,远程登录交换机都是通过该方向。以华为系列交换机为例,输入以下命令:
# cpu 查看交换机CPU利用率
# 检查内存利用率
发现两者都很高,然后输入命令#port 查看各个端口下的数据流量。
经过对其数据流的抓包分析,发现有多个线程指向某网站的电影版块。为了避免影响整个网络的畅通,对所连接的交换机进行了处理。
发现其中两个端口的数据流量特别大,远高于正常网络流量。经过对其数据流的抓包分析,发现有多个线程指向某网站的电影版块。为了避免影响整个网络的畅通,对所连接的交换机进行了处理。
【故障排除】
进入端口配置界面,输入命令强制关闭端口并断开网络连接。联系终端用户并要求他们终止下载过程,然后恢复网络。
写在最后:
最后补充一点,很多网络工作者都会使用Ping命令来检测丢包,但实际上除了Ping之外,还可以使用其他常用命令来判断主机的网络连通性。
而且Linux下还有一个比较好用的网络连通性判断工具,可以结合ping来判断网络的相关特征。这个命令是mtr。
mtr的全称是my,是一款将ping和ping合二为一的网络诊断工具。
默认情况下使用UDP报文检测,mtr默认使用ICMP报文检测。 ICMP在某些路由节点上的优先级低于其他报文,因此测试中得到的数据可能会低于实际情况。
推荐给你了,记得收藏哦。如果您有更好的工具,请留言告诉我。
页:
[1]