IP报头结构实验
实验目的
深入掌握IP报头结构,理解IP 分片和重组过程。
实验工具
科来网络分析系统、windows系统
实验内容
1.在cmd窗口ping 192.168.6.1 –l 3000 –n 1;
2.在ping的同时用科来网络分析系统抓包,ping操作完成停止捕获;(为了减少数据干扰,建议用过滤器)
3.切换到数据包视图,我们看到刚刚的ping操作总共有6个包;
从上图可知,ping共发了三个数据包,第一个协议是ICMP,后面两个是IP Fragment,前面两个数据包的大小是1518字节,第三个是86字节。
我们来看这三个数据包传输的数据大小:
IP分段标志 | 传输数据 |
---|---|
更多分段置1 | 1518-14-20-8-4=1472 |
更多分段置1 | 1518-14-20-4=1480 |
更多分段置0 | 86-14-20-4=48 |
上表中,第1个数据包中,多了一个ICMP报头,所以在计算传输的数据时,多减了8个字节的ICMP报头,而后面的两个数据包由于不存在ICMP的报头开销,所以不需要减去8字节的ICMP报头。将传输的数据加起来,1472+1480+48=3000,与执行的命令参数完全吻合。
注意:如果有更多的分段,按照此规则依次累加即可;
4.查看每个数据包的分段标志;
5.查看并计算每个数据包的偏移量
我们知道,段以8字节为单位,而第一个数据包传输的数据为1472,也就是有184个段(1472/8),所以第二个数据报的偏移则为184+1=185,依次类推,第三个数据包应是184+185(1480/8)+1=370。
注:分片第一个包的分段偏移量始终为0。
- 查看每个数据包的IP标识;
注:同一分片数据包的IP标识是相同的。