【网络协议分析】利用Wireshark分析IP分片

一、实验目的

利用Wireshark软件抓包分析IP分片,了解IP分片的工作原理。

二、实验过程

1 、网络拓扑

|--------|----------------|----------------|---------|
| 设备 | IP 地址 | 设备接口 | MTU |
| AR1 | 172.30.132.164 | Ethernet 0/0/0 | 700 |
| AR2 | 172.30.132.165 | Ethernet 0/0/0 | 1200 |

2 、实验过程

(1)在eNSP中按网络拓扑搭建网络,并配置好IP地址、子网掩码等。

(2)分别修改AR1和AR2各自E0/0/0口的MTU值为700和1200,并且查看修改后的效果。

(3)在AR1的E0/0/0口启动wireshark,抓取数据包。wireshark启动后,在AR1路由器E0/0/0口运行ping命令

3 、结果分析

根据源地址和目的地址可以看出,源为172.30.132.164发出的包有两个,分别为一个IP数据包、一个ICMP数据包,源为172.30.132.165回复的包也有两个,一个IP数据包、一个ICMP数据包.

  • 第一个报文
  • 第二个报文

可以看到,第一个包的MF字段被设置成1,说明还有其他分片,而最后一个包的MF字段为0,标志着这是最后一个分片。

汇总信息如图框中部分:

在第二个(也就是最后一个包)在汇总信息中可以看到2个分片(Frame)中的有效载荷(payload)分别为680B、528B,总的有效载荷为680+528=1208B。

回答下列问题:

  • 为什么分片的有效载荷最大为680B?

我们在实验开始时,设置了最大传输单元限制MTU为700/1200,通信时取小的一个作为限制,即MTU为700。去掉每帧的报文头20B,即最大还剩680B有效载荷

  • 为什么有效载荷总量为1208B?

分片大小分别为700B和548B,每个帧包括一个20B的报文头,两个帧共40B的报文头,有效载荷总量为总大小-报文头=1248B-40B=1208B。

  • 一个ICMP报文的首部出现在哪些分片中?

分别对两个分片进行分析,可知,ICMP报文的首部在第一个分片中,第二个报文中只包括剩余的ICMP数据。

三、思考和总结

总结:

本次实验主要为利用Wireshark和eNSP软件进行分析IP分片,了解分片的过程。

如果当传输数据量超过设置的MTU时,IP就会将数据报进行分片,将一个超过MTU的数据报分为多个不大于MTU的数据报进行发送。接收端收到后再进行组装,形成完整的数据报。在进行分片时,IP通过设置MF标志位为1作为标识是否为最后一个分片。

使用到的新命令:

mtu <数值>:设置当前接口的最大传输单元限制MTU

display current-configuration interface:查看全部接口的配置

相关推荐
可乐加.糖6 小时前
一篇关于Netty相关的梳理总结
java·后端·网络协议·netty·信息与通信
吴盐煮_7 小时前
使用UDP建立连接,会存在什么问题?
网络·网络协议·udp
忆源9 小时前
SOME/IP-SD -- 协议英文原文讲解9(ERROR处理)
网络·网络协议·tcp/ip
低头不见16 小时前
tcp的粘包拆包问题,如何解决?
网络·网络协议·tcp/ip
Aa美少女战士21 小时前
单域名 vs 通配符:如何选择最适合你的 SSL 证书?
网络协议·https·ssl
咕噜签名21 小时前
如何申请p12证书
网络协议·https·ssl
2a3b4c21 小时前
SSL/TLS
网络协议·https·ssl
沫夕残雪1 天前
HTTP,请求响应报头,以及抓包工具的讨论
网络·vscode·网络协议·http
the_nov1 天前
14.网络套接字TCP
linux·c++·网络协议