I.IP 协议分析

概述:利用Wireshark 工具抓取网络数据,分析IP 数据报中各个字段的内容,分析IP 数据报的分片

过程与细节

  1. 抓取数据包
  • 启动wireshark
  • wireshark 分析并发连接_wireshark 分析并发连接

  • 启动pingplotter,输入gaia.cs.umass.edu地址后,# of times to Trace设置为3(新版pingplotter设置不了,只能手动),把数据包的大小调整为56bytes
  • wireshark 分析并发连接_网络协议_02


  • wireshark 分析并发连接_IP_03


  • wireshark 分析并发连接_tcp/ip_04

  • 同样,抓取2000字节的数据包
  • wireshark 分析并发连接_wireshark 分析并发连接_05

  • 抓取3500字节的数据包
  • wireshark 分析并发连接_网络协议_06

  1. 分析抓取的数据包并回答相关问题
    当时问了我一个问题,为什么IP分片发送的包是1514个字节?

因为网络层MTU的大小是1500字节,也就是规定了网络层的ip头加上ip报文的内容总共是1500字节,传递到链路层的时候,还要加上14字节的帧头。所有最大传输就是1514字节

  1. IP 分片
  • 单击Time 栏,按时间先后顺序排列数据报,找到在pingplotter 中将分组大小改为2000 字节后的第一个ICMP Echo Request 报文
  • wireshark 分析并发连接_网络_07

  • 分析IP 数据报分片信息
    看下面的分片的抓包,ipv4就显示了,当前最后分片的包,这个包显示的主要信息有:该ICMP包分为了2块,一块是0到1479,另一块是1480到1979,也就是当前的包。

抓包的时候,发现了ICMP包和IPv4包,它们的关系如下。

互联网在数据传输时,必定会发生差错,有些差错是不可知的,但有些却是可以知道的。TCP/IP协议包含一个专门的用于发送差错报文的协议,这一协议即为ICMP(Internet控制报文协议)。它是TCP/IP协议族的一个IP层子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。
一个标准的IP协议中,ICMP是不可少的。ICMP的主要功能包括:确认IP包是否成功送达目标地址,通知在发送过程当中IP包被废弃的具体原因,改善网络设置等。同时ICMP的这种通知消息会使用IP进行发送,收到ICMP包的主机会分解ICMP的首部

II.Ethernet&ARP 协议分析

概述:

抓取并分析Ethernet 数据帧的内容,观察ARP 协议在现实网络中如何工作

过程和细节:

  1. 抓取Ethernet 数据帧并进行分析
    使用wireshark抓包链接http://gaia.cs.umass.edu/wireshark-labs/HTTP-ethereal-lab-file3.html下的内容,通过ip过滤

    下面分析包含了 HTTP GET 数据的 Ethernet frame 的内容
Ethernet II, Src: Chongqin_86:10:5f (ec:5c:68:86:10:5f), Dst: NewH3CTe_d4:70:02 (44:1a:fa:d4:70:02)
    Destination: NewH3CTe_d4:70:02 (44:1a:fa:d4:70:02)
    Source: Chongqin_86:10:5f (ec:5c:68:86:10:5f)
    Type: IPv4 (0x0800)

由上图可知,我所在主机的以太网地址是 Chongqin_86:10:5f,即ec:5c:68:86:10:5f。以太网 Frame 中目标主机48位地址是:NewH3CTe_d4:70:02(44:1a:fa:d4:70:02)。它不是gaia.cs.umass.edu服务器的以太网地址,而是路由器的以太网地址。然后我们可以看到 Frame 头部 Type 字段的值为IPv4(0x0800),字段的值的含义是帧类型/长度,当该字段的值大于或等于 0x0800 时,表示上层数据使用的协议类型,8 表示以太网。

  1. ARP 协议分析
  • Windows 操作系统进入 CMD 下,使用 ARP 命令,分析 ARPcache的内容
    首先查看arp命令

    下面显示ARP表
  • 键入 arp -d *命令,清除 ARPcache内容
  • wireshark 分析并发连接_wireshark 分析并发连接_08

  • 发现权限需要提升,就以管理员身份运行cmd,重新尝试
  • wireshark 分析并发连接_IP_09

  • 打开浏览器,打开wireshark,抓取链接http://gaia.cs.umass.edu/wireshark-labs/HTTP-wireshark-lab-file3.html下面的请求,使用arp过滤

使用eth.addr eqeth.addr eq来过滤对应的mac地址

wireshark 分析并发连接_IP_10

wireshark 分析并发连接_wireshark 分析并发连接_11

  • 分析其中的内容
    很显然,里面的arp抓包的内容,包含了链路层的一些具体信息,主要的在以下

    很显然,里面的arp抓包的内容,包含了链路层的一些具体信息,主要的在以下