【网络】Wireshark练习3 analyse DNS||ICMP and response message

ip.addr == 172.16.0.100 && ip.addr == 172.16.0.5 && (dns || icmp)

包号 22--31 之所以被选中,是因为在整个抓包文件里,与执行 ping cat.inx251.edu.au 这一事件相关的所有报文,恰好连续出现在第 22 到第 31 条记录中。具体分布如下:

  1. DNS 查询/响应(包 22--23)

    • 包 22:客户端向 DNS 服务器发起域名解析请求(DNS Query)。
    • 包 23:DNS 服务器返回解析结果(DNS Response)。
      这两条报文完成了把域名 cat.inx251.edu.au 转换为 IP 的过程。
  2. ICMP Echo 请求(包 24、26、28、30)

    • 客户端向解析到的 IP(172.16.0.5)发送 4 次 ICMP Echo Request(Type 8)。
  3. ICMP Echo 回复(包 25、27、29、31)

    • 目标主机对每次请求分别回应 ICMP Echo Reply(Type 0),共 4 条。

因为这连贯的 DNS + 4 次请求/4 次应答正好从第 22 条到第 31 条,因此我们把表 6 填成 "22--31"。如果在 Wireshark 中用过滤器:

复制代码
ip.addr == 172.16.0.100 && ip.addr == 172.16.0.5 && (dns || icmp)

就可以一次性看到这 10 条报文,确认它们就是与这次 ping 操作直接相关的全部网络交互。

下面我示范在 Wireshark 中如何一步步定位 Event 3(ping cat.inx251.edu.au)所需的所有报文,并把它们填到 Table 6--9 中。


1. Table 6:本次事件涉及的所有报文序号

Table 6 Packet Numbers
22 -- 31

定位方法:

  • 在 Wireshark 打开 client_server.pcap,在过滤栏输入

    复制代码
    ip.addr == 172.16.0.100 && ip.addr == 172.16.0.5 && (dns || icmp)

    这样会同时显示 DNS 查询/响应 和 ICMP 请求/回复,且只看客户端 172.16.0.100 和服务器 172.16.0.5 之间的流量。

  • 观察列表,你会看到连续的序号 2231

    • 22--23:DNS 查询/响应
    • 24--31:四个 ICMP Echo Request/Reply 对

2. Table 7:DNS 查询报文细节

Table 7 DNS Query
Packet Number 22
Source IP address 172.16.0.100
Destination IP address 172.16.0.5
Source port number 62072
Destination port number 53
Type of DNS query (DNS lookup type) A

定位方法:

  1. 在已有的过滤器下 (dns || icmp),挑出第一个 DNS 报文 ------ 包号 22,它的 Info 列会显示 "Standard query A cat.inx251.edu.au"。

  2. 选中第 22 包,Packet Details 展开:

    • UDP 层 :Src Port = 62072 (客户端随机端口),Dst Port = 53(DNS)。
    • Internet 层:Src IP = 172.16.0.100,Dst IP = 172.16.0.5。
    • DNS 层 Question :Query Type = A(请求IPv4地址)。

3. Table 8:DNS 响应报文细节

Table 8 DNS Response
Packet Number 23
Source IP address 172.16.0.5
Destination IP address 172.16.0.100
Source port number 53
Destination port number 62072
DNS response (the host IP address) 172.16.0.5

定位方法:

  1. 紧接着的 DNS 报文,包号 23,Info 中会有 "Standard query response A cat.inx251.edu.au → 172.16.0.5"。

  2. 在 Packet Details:

    • UDP:Src Port = 53 → Dst Port = 62072
    • IP:Src = 172.16.0.5 → Dst = 172.16.0.100
    • DNS Answer:Address = 172.16.0.5

4. Table 9:ICMP 请求/应答报文细节

Table 9 ICMP Request ICMP Reply
Packet Numbers 24, 26, 28, 30 25, 27, 29, 31
Source IP address 172.16.0.100 172.16.0.5
Destination IP address 172.16.0.5 172.16.0.100
ICMP -- Type 8 0
ICMP -- Code 0 0

定位方法:

  1. 继续使用相同过滤器 dns || icmp,下拉到包号 24 开始,就能看到一系列 ICMP 报文。

  2. 查看每个报文的 Info 或 Packet Details:

    • Echo Request(Type 8)出现在包号 24、26、28、30,源 IP 172.16.0.100 → 目的 172.16.0.5;Code=0。
    • 对应的 Echo Reply(Type 0)是包号 25、27、29、31,源 IP 172.16.0.5 → 目的 172.16.0.100;Code=0。

为什么这样做

  • Table 6 只要在客户端和服务器之间同时包含 DNS 或 ICMP,就能一次性得到 22--31 这些相关包。
  • Table 7/8 通过 DNS 报文的 Query/Response 标志(Wireshark 中 Info 或 DNS 层字段)迅速区分查询和应答,并读出 IP/端口/类型。
  • Table 9 利用 ICMP 的 Type 字段(8=Echo Req, 0=Echo Reply)和 IPv4 层 Source/Destination,就能将所有 ping 往返对一一对应。

掌握好以下三点,就能答出所有与 ping + DNS 相关的表格:

  1. 过滤器ip.addr == X && ip.addr == Y && (dns || icmp)
  2. 协议层级:UDP→DNS 层看 Query/Answer、Type 字段;IP→看 Src/Dst;ICMP→看 Type/Code;
  3. 序号对应:抓包中 DNS 紧跟在握手后、ICMP 紧跟 DNS 后,总是连成一段连续的编号。
相关推荐
绝世剑仙纪宁7 小时前
TCP 三次握手、四次挥手
网络·网络协议·tcp/ip
胡耀超7 小时前
3.Python高级数据结构与文本处理
服务器·数据结构·人工智能·windows·python·大模型
索迪迈科技7 小时前
HTTP中Payload的含义解析
网络·网络协议·http
时空潮汐8 小时前
我用神卓 NAT 公网 IP 盒子搭建《我的世界》联机的经历
网络·网络协议·tcp/ip
liulilittle8 小时前
HTTP/3.0:网络通信的技术革新与性能飞跃
网络·网络协议·http·https·quic·流媒体·通信
岑梓铭9 小时前
计算机网络第四章(4)——网络层《ARP协议》
网络·笔记·tcp/ip·计算机网络·考研·408
非ban必选9 小时前
netty-scoket.io路径配置
java·服务器·前端
fasewer9 小时前
玄机--windows日志分析
运维·服务器·windows·网络安全
Linux运维技术栈9 小时前
域名网页加载慢怎么解决:从测速到优化的全链路性能优化实战
运维·网络·nginx·性能优化·cloudflare
会开花的二叉树9 小时前
彻底搞懂 Linux 基础 IO:从文件操作到缓冲区,打通底层逻辑
linux·服务器·c++·后端