wireshark抓包 ,ping/tracert

您所在的位置:网站首页 wrieshark抓包命令 wireshark抓包 ,ping/tracert

wireshark抓包 ,ping/tracert

2023-04-16 11:36| 来源: 网络整理| 查看: 265

Windows提供了一系列用于检测网络状态,监控计算机与其他主机之间会话的命令用户可以通过这些命令发现、诊断网络连接问题,发现和处理外部终端为非法访问计算机资源而创建的会话。

本文以以下3个命令为例,对命令的相关协议进行分析:(采用wireshark抓包)

1、ping

1.1抓包:

1.2数据帧结构:

(观察第一个编号为 12333 的 Echo (ping) request 数据帧)

如上图所示,可以看到这个数据帧的结构是:

Ethernet IIIPICMP

1.3观察 Ethernet II 数据帧的内容

Ethernet II 数据帧的格式如下:

DASATypeDataFCS

DA: 该字段有 6 个字节,表示目的 MAC 地址。如上图所示,目的 MAC 地址为 d0:76:e7:16:c0:a0。

SA: 该字段有 6 个字节,表示源 MAC 地址。如上图所示,源 MAC 地址为 64:5d:86:56:7d:5e。

Type: 该字段有 2 个字节,表示数据包的类型。如上图所示,类型的值为 0x0800,表示 Internet Protocol(IP)。

Data: 数据载荷。

FCS: 该字段有 4 个字节,表示帧校验序列,用于校验帧是否出错。该字段内容已被网络设备滤去,抓包软件已无法获取。

1.4观察 IP 数据包的内容

如上图所示,可以看到 IP 数据包的信息:

Version: 4,表示 IPv4。

Header Length: 5, 表示 5 个以 32 bit 为单位的 word,即 20 bytes。

Time to live: 64, 生存时间。

Protocol: 1,表示 ICMP。

Source: 192.168.1.107,源 IP 地址。

Destination: 36.152.44.96,目的 IP 地址。

1.5观察 ICMP 数据包内容

ICMP 数据包的格式如下:

Type: 该字段有 1 个字节,表示特定类型的 ICMP 报文。

一台主机向一个节点发送一个类型字段值为8的ICMP报文,如果途中没有异常(如果没有被路由丢弃,目标不回应ICMP或者传输失败),则目标返回类型字段值为0的ICMP报文,说明这台主机存在。

Code: 该字段有 1 个字节,进一步细分 ICMP 的类型。如上图所示,Type 的值为 8,Code 的值为 0,表示回显请求。

Checksum: 该字段有 2 个字节,表示校验和。

Identifier: 该字段有 2 个字节,用于匹配 Request/Reply 的标识符。

Seq Num: 该字段有 2 个字节,用于匹配 Request/Reply 的序列号。

Data: 数据载荷。

2、tracert

2.1抓包

2.2 协议分析

由于tracrt命令的底层协议与ping的底层协议相同(都是ICMP),故不做具体分析。

3、nslookup

3.1抓包

3.2数据帧结构

如上图所示,这个数据帧的结构是:

(DNS为应用层协议,下层传输层采用UDP,再下层网络层是IP协议,然后是数据链路层的以太网帧.)

Ethernet II (已做分析)IP (已做分析)UDPDNS

3.3 UDP数据帧分析

可以看出格式如下:

SP:该字段占2个字节,源端口号为54064

DP: 该字段占2个字节,目的端口号为53

Length: 该字段占2个字节,长度,39bytes

Checksum: 该字段占2个字节,校验和

3.4 DNS报文分析

DNS报文结构为:

第一个是Transaction ID为标识字段,2字节,用于辨别DNS应答报文是哪个请求报文的响应.图中报文标识数为:0x0002。

第二个是Flags标志字段,如图所示:

QR(1比特):查询/响应的标志位,1为响应,0为查询。

opcode(4比特):定义查询或响应的类型(若为0则表示是标准的,若为1则是反向的,若为2则是服务器状态请求)。

AA(1比特):授权回答的标志位。该位在响应报文中有效,1表示名字服务器是权限服务器(关于权限服务器以后再讨论)

TC(1比特):截断标志位。1表示响应已超过512字节并已被截断(依稀好像记得哪里提过这个截断和UDP有关,先记着)

RD(1比特):该位为1表示客户端希望得到递归回答(递归以后再讨论)

RA(1比特):只能在响应报文中置为1,表示可以得到递归响应。

zero(3比特):不说也知道都是0了,保留字段。

rcode(4比特):返回码,表示响应的差错状态,通常为0和3,各取值含义如下:

0:表示无差错, 1:表示格式差错 ,2:表示问题在域名服务器上,3; 表示域参照问题

4: 表示查询类型不支持 ,5: 表示在管理上被禁止 ,6 – 15: 表示保留

问题数、回答资源记录数、授权资源记录数、附加资源记录数:这四个字段都是两字节,分别对应下面的查询问题、回答、授权和附加信息部分的数量。在图中报文对应字段分别为1,0,0,0;

第七个是Queries为查询问题区域,其包含正在进行的查询信息。包含查询名(被查询主机名字的名字字段)、查询类型、查询类。图中报文查询名为:www.baidu.com,查询类型为:A(IPv4地址),查询类为:IN(Internet数据)。(观察报文发现图中报文仅有查询问题区域,故不做其他区域的分析)

总结与体会

通过此次实验,加深了对ping、tracert、nslookup等命令的理解,同时也让我更加熟练的掌握了相关命令的操作。通过对相关命令的底层协议进行分析,也加深了我对一系列网络管理和监控命令的工作原理的理解,总的来说,此次实验收获很多。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3