计算机网络 实验2 IP协议分析

实验2 IP协议分析

1. 实验目的

  • 了解IP报文格式,熟悉IP报文各个字段含义、长度

  • 掌握基于tcpdump和wireshark软件进行数据包抓取和分析技术

2. 实验环境

  • 硬件要求:阿里云云主机ECS 一台。

  • 软件要求:Linux/ Windows 操作系统

3. 实验内容

3.1 tcpdump 基本用法

tcpdump是一个用于截取网络分组,并输出分组内容的工具。凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具

tcpdump 支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息

参考资料:

https://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html

https://www.jianshu.com/p/d9162722f189

3.2 wireshark基本用法

Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。

网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查资讯安全相关问题,开发者使用Wireshark来为新的通讯协定除错,普通使用者使用Wireshark来学习网络协定的相关知识。

参考资料:

https://www.wireshark.org/#download

https://pc.qq.com/search.html#!keyword=wireshark

https://www.cnblogs.com/csnd/p/11807736.html

https://pc.qq.com/search.html#!keyword=xshell

3.3 利用tcpdump抓包,wireshark分析包

在阿里云主机运行命令traceroute www.baidu.com ,并利用tcpdump抓包。下载文件到本地机器利用wireshark软件进行分析。

提示:

  • 必须首先执行抓包命令,然后再执行路径追踪命令。抓包命令 tcpdump -i eth0 -w test.cap
  • 可使用scp命令或者利用xshell和xftp下载数据包到本地机器。

1)利用tcpdump抓包,通过wireshark分析捕获的数据包,分析IP的报文结构,将IP协议树中各个名字字段,字段长度,字段信息填入下表。

字段名 字段长度 字段值 字段表达信息
Version
Header length IP
Differentiated services Filed
Total length
Indentification
flag
Fragment offset
Time to live
protocol
Header checksum
source
destination
2)  利用wireshark分析并解读相关traceroute命令执行结果。

​ 提示:在wireshark 过滤器工具栏设置仅显示ICMP

4. 实验结果与分析

  • 需给出实验中相关命令、脚本或者代码以及运行截图。注意格式规范、截图清晰,大小合适;

  • 对于中间过程和运行结果需给出必要分析说明;

    4.1 利用tcpdump抓包,通过wireshark分析捕获的数据包,分析IP的报文结构,将IP协议树中各个名字字段,字段长度,字段信息填入下表。

    4.1.1在阿里云运行终端安装traceroute。

    yum install traceroute
    

计算机网络 实验2 IP协议分析_第1张图片

如图所示,成功安装traceroute以便后续实验使用。

4.1.2 利用traceroute测量数据包到达百度网站所经过的路径。

traceroute www.baidu.com

计算机网络 实验2 IP协议分析_第2张图片

如图所示,利用traceroute测量路由情况,显示数据包到达百度网站的所经过的路径。

4.1.3 利用tcpdump对百度网站进行抓包。

tcpdump -i eth0 -w test.cap

计算机网络 实验2 IP协议分析_第3张图片

如图所示,利用tcpdump对百度网站进行抓包,成功抓取156个包,并且以test.cap的形式保存下来。

4.1.4在阿里云下载lrzsz,并且检查是否安装成功。

yum install -y lrzsz

计算机网络 实验2 IP协议分析_第4张图片

安装lrzsz,用于Windows与Linux之间的文件传输,用于之后把利用tcpdump抓取的包传输到本机。

sz --v

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-waOpJyA6-1680447193443)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230402213010811.png)]

如图所示,lrzsz已经成功安装,可以继续进行下一步实验。

4.1.5 下载Xshell,并将其连接阿里云虚拟机,将实验中保存下来的text.cap文件传输到本机。

计算机网络 实验2 IP协议分析_第5张图片

如图所示,填写连接阿里云虚拟机主机号。

计算机网络 实验2 IP协议分析_第6张图片

输入用户名密码,进行连接。

计算机网络 实验2 IP协议分析_第7张图片

如图所示,成功连接Xshell。

sz text.cap

计算机网络 实验2 IP协议分析_第8张图片

在Xshell中输入代码,将实验中获取的text.cap文件下载至本机中去。

4.1.6 下载Wireshark,并将从Linux中获取的text.cap文件在其中打开。

计算机网络 实验2 IP协议分析_第9张图片

如图所示,此为从百度网站抓取的数据包。

4.1.7 对text.cap文件中的数据进行分析,查看数据包中的具体信息,完成表格中内容的填写。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dKgZ7sGP-1680447193445)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20230402214430143.png)]

对具体数据进行分析,分别获取字段名的字段长度,字段值以及字段表达信息,完成表格中内容的填写。表格如下:

字段名 字段长度 字段值 字段表达信息
Version 4 6 版本号,IPv4
Header length IP 4 20 bytes IP报文头长度
Differentiated services Filed 8 0x00(DSCP:CS0,ECN Not-ECT) 服务类型
Total length 16 52 数据包总长度
Indentification 16 0x4f42(20290) 标识符
flag 3 0x2 标识
Fragment offset 13 0 分段偏移量
Time to live 8 48 生存期
protocol 8 TCP(6) 上层协议名称
Header checksum 16 0xe2c1 报文头校验和
source 32 118.31.243.243 源地址
destination 32 172.16.2.157 目的地址

4.2 利用wireshark分析并解读相关traceroute命令执行结果。

提示:在wireshark 过滤器工具栏设置仅显示ICMP

4.2.1 打开Wireshark进行抓包。

计算机网络 实验2 IP协议分析_第10张图片

4.2.2 打开阿里云虚拟机,使用traceroute命令,使wireshark抓取的包记录下来。

计算机网络 实验2 IP协议分析_第11张图片

4.2.3 当traceroute命令执行介绍自动退出的时候,停止抓包

4.2.4 在wireshark 过滤器工具栏设置仅显示ICMP,进行过滤。

计算机网络 实验2 IP协议分析_第12张图片

如图所示,利用wireshark过滤出了icmp。

5. 实验小结

(包括遇到的特定问题和解决办法、心得体会、意见与建议等)

问题与解决办法:

问题一:不知道如何将阿里云虚拟机中抓取的数据包传输到本机中去。

解决方法:查阅资料获得解决方法。首先,在虚拟中安装lrzsz,进行Linux与Windows系统间的文件传输;其次下载Xshell,并连接阿里云虚拟机,运行代码,将文件成功从虚拟机传输到本机中去。

问题二:无法成功将Xshell连接。

解决方法:在查阅资料后得知,连接Xshell需要输入阿里云虚拟机的主机端口,并输入阿里云虚拟机的登录名和密码,最终得以成功连接。

问题三:在运用Wireshark分析抓取数据包中的信息时,不能理解其具体数据所表达的含义,无法成功填写表格。

解决方法:通过查阅资料以及与同学之间的交流讨论,最后成功解决问题,成功填写表格。

心得体会:

1.成功的了解IP报文格式,熟悉IP报文各个字段含义、长度,但是还是过于生疏,需要在今后的学习生活中继续学习,多加巩固。

2.学习了解并初步掌握了tcpdump的基本用法,可以运用该语句完成实验的内容。

3.学习掌握了lrzsz的基本作用是进行Linux与Windows之间的传输,学习掌握了xshell的基本用法。

4.学习掌握了Wireshark的基本用法,运用其对抓取的数据包进行ip协议的分析。

你可能感兴趣的:(计算机网络,计算机网络,tcp/ip,网络)