实验六
IP 是整个 TCP/IP 协议族的核心,也是构成互联网的基础。IP 位于 TCP/IP 模型的网络层(相当于OSI模型的网络层),对上可载送传输层各种协议的信息,例如 TCP、UDP 等;对下可将 IP 信息包放到链路层,通过以太网、令牌环网络等各种技术来传送。为了能适应异构网络,IP 强调适应性、简洁性和可操作性,并在可靠性做了一定的牺牲。IP 不保证分组的交付时限和可靠性,所传送分组有可能出现丢失、重复、延迟或乱序等问题。——百度百科
1.从执行跟踪路线中捕获数据包
- 打开wireshark捕获,
- 设置一下pingplotter 首先是interval设置为10s 然后我们在输入框输入gaia.cs.umass.edu,
- 每次点击之后刷新完了暂停之后去包那里设置packet size为2000 再次点击开始即重新发送reset再暂停再设置为3500再次开始等线再次刷新完了就暂停去把wireshark的捕获暂停下面是我的pingplotter 和 wireshark的捕获截图
2.查看捕获的痕迹
1.选择发送的第一个 ICMP Echo Request 消息,然后在 packet details window 中展开数据包的 Internet 协议部分。您的计算机的 IP 地址是多少?
source = 192.168.31.1
2.在 IP header中,上层协议字段中值是什么?
上层协议字段中值是 1
3.IP header 有多少 bytes? IP datagram 的有效负载中有多少 bytes?
IP header 20 bytes,数据报一共有 56 bytes,因此有效负载中有 36 bytes。
4.此 IP 数据报是否已被分段(fragmented)?
应该没有,因为第一个包的 TTL 是 255,如果被分段就会出现多个 TTL 为 255 的包,可是没发现,所以没分段。
5.查看第一个 ICMP 及其所有后续 ICMP 消息。
6.在您的计算器发送的这一系列 ICMP 消息中,IP 数据报中的哪些字段一直改变?
标识符(Identification)、存活时间(Time To Live,TTL)、首部检验和 (Header Checksum)一直在变。
7.哪些字段保持不变?哪个字段必须保持不变?哪些字段必须更改?
ID 字段和 TTL 字段的值是多少?
ID是27749,TTL是1
对于第一跳路由器发送到您的计算器的所有 ICMP TTL 超出的回复,这些值是否保持不变?为什么?
在将 pingplotter 中的数据包大小更改为 2000 后,查找计算机发送的第一个 ICMP Echo Request 消息。该消息是否已碎片化为多个 IP 数据报?
可以看出该消息被碎片化为 2 个 IP 数据报。
IP 数据报的第一个片段。 IP 头中的哪些信息表明数据报已碎片化? IP 头中的哪些信息表明这是第一个片段还是后一个片段? 这个 IP 数据报有多长?
More fragments字段为 1 表示 Set,即该数据包被分片。通过 ID 字段判断这是第一个片段,分片长度为 1480 bytes。
找到碎片 IP 数据报的第二个片段。 IP 标头中的哪些信息表明这不是第一个数据报片段? 是否还有更多的片段?你是如何知道的?
在第一个和第二个片段中,IP 标头中哪些字段发生了变化?
分片偏移 (Fragment Offset)
从原始数据报创建了多少个片段?
创建了三个片段