[计算机网络实验] IPV4协议
Written by Landasika首部最小值20,最大值是60首先打开wireshark开始监听,然后用tracert跟踪到我的服务器。利用过滤器然后按照时间排序导出特定分组可以得到完整的tracert的包。最后,可以看到对于的每一个点的包从而得到TTL值。TTL值依次增大。cmd输入然后抓包之后用分析过滤得到然后点开包,查看flags字段下的Don’t fragment。request包中
[计算机网络实验] IPV4协议
Written by Landasika
观察分析IPv4分组各字段
版本、首部长度
首部最小值20,最大值是60
tracert结果下的TTL
抓包
首先打开wireshark开始监听,然后用tracert跟踪到我的服务器。
tracert landasika.top

分析路由的TTL
利用过滤器
ip.addr == 172.0.2.27 && icmp
然后按照时间排序
导出特定分组可以得到完整的tracert的包。
最后,可以看到对于的每一个点的包从而得到TTL值。
TTL值依次增大。
ping -f 下的DF值
抓包
cmd输入
ping -f landasika.top
然后抓包之后用
ip.addr == 172.0.2.27 && icmp
分析
过滤得到
然后点开包,查看flags字段下的Don’t fragment。
request包中,DF字段是1表面设置了分片
response包中,DF字段是0,表示分包。
不同分组标识
分组标识字段不一样
观察IPv4数据报分片和重组
分片后响应时间

使用ping -l后,数据包变大,所以发送时间会长
每个分片的标志动态偏移量、总长度、规律
抓包
使用cmd命令
ping -l 10240 landasika.top
注意一个问题
有些服务器开启了防DDos攻击的防火墙,所以发送数据量过大的数据包会导致请求超时。
将
编辑->首选项->Protocols->IPV4->Reassemble fragment IPV4 datagrams的勾勾去掉,这样的话ICMP的包不是整合到一起的包。
利用wireshark抓包

可以看到每个包的偏移量。
分析
我们发送了10240个字节,
10240=1480*5+1472+1368
理论上是发送了7个包
ICMP的数据包
由于我们使用的是ping命令来发送的包,所以第一个包一定是ICMP包,
并且ICMP的头里面的Type字段标志是8(表示ping命令)
数据包的长度是
1514=1472(ICMP分片的数据长度)+8(ICMP报文头长度)+ 20(IPV4报文头长度)+14(以太网协议长度)
IPV4数据包
每个包的组成:
1514=1480(data长度)+20(IPV4长度)+14(以太网长度)
思考题
3、不同操作系统对IPv4数据包初始化TTL值是不同的,利用这一特征,可以进行操作系统的探测。通过ping程序,试探测互联网站点运行的操作系统类型,从而推断实验主机到达被测站点之间经过的路由器数目。

可以知道TTL=64,表名我的服务器用的是Linux系统,到达时候TTL=62,那么经过了12个路由器。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)