预习报告部分
- 实验目的:学习Wireshark 的基本操作,抓取和分析有线局域网的数据包;掌握以太网MAC帧的基本结构,掌握ARP协议的特点及工作过程。
- 实验原理:Wireshark软件是目前全球使用最广泛的开源网络数据包分析工具(前身为Ethe-real ),网络数据包分析是指进入网络通信系统、捕获和解码网络上实时传输数据以及搜集统计信息的过程。通过Wireshark对网络数据进行分析,我们能够了解网络是如何运行的、数据包是如何被转发的、应用是如何被访问的;能够分析各层网络协议的性能、掌握通信主体的运行情况,确认带宽分配和时延大小、查看应用的快慢并改进优化,识别网络中存在的攻击或恶意行为、解决网络异常和故障。Wireshark 可以在Windows、Linux 和l macOS操作系统中运行,具备友好的图形界面、丰富的统计及图表分析功能。
- 实验内容:
使用Wireshark抓取局域网的数据包并进行分析:
- 学习Wireshark基本操作: 重点掌握捕获过滤器和显示过滤器。
- 观察MAC地址: 了解MAC地址的组成,辨识MAC地址类型。
- 分析以太网帧结构: 观察以太网帧的首部和尾部,了解数据封装成帧的原理。
- 分析ARP协议: 抓取ARP请求和应答报文,分析其工作过程。
- 实验所用设备:PC个人计算机、Windows XP操作系统、Wireshark抓包软件
- 实验步骤:
1、安装和运行Wireshark软件;
到官网下载网络抓包工具Wireshark。
2、打开Wireshark软件,勾选WLAN网卡,进行抓包
- ping一个网站,并设置过滤条件将数据包列表过滤进行抓包,ip.addr显示源IP地址或目标IP地址为192.168.1.104的数据包列表
- 实验三个握手连接建立过程
Step1:启动wireshark抓包,打开浏览器输入www.cr173.com。
Step2:使用ping www.cr173.com获取IP。
Step3:输入过滤条件获取待分析数据包列表 ip.addr == 221.195.216.37
第一次握手
客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接。
第二次握手
服务器发回确认包, 标志位为 SYN,ACK. 将确认序号(Acknowledgement Number)设置为1。
第三次握手
客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1。
实验报告部分
- 实验步骤:
1.通过wireshark抓包查看未加密网站中输入的账号密码:
2.三次握手如下:
第一次握手:
第二次握手:
第三次握手:
- 通过Wireshark抓包查看QQ登录(是加密的)账号密码(QQ遵守OICQ协议):
- 实验数据及结果分析:
实验结果与预习准备的阶段内容相符合。
三次握手中SYN表示建立连接,FIN表示关闭连接,ACK表示响应,PSH表示有DATA数据传输,RST表示连接重置。
第一次握手数据包:客户端发送一个TCP,标志位为SYN,序列号为0,代表客户端请求建立连接。
第二次握手的数据包:服务器发回确认包,标志位为SYN,ACK. 将确认序号(Acknowledgement Number)设置为客户的ISN即0+1=1。
第三次握手的数据包:客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1。
对QQ这种加密网站进行抓包的话,输入的账号密码中的密码不会被显示出来而是会被加密处理。但是对不加密网站进行抓包,输入的账号密码是可以被看见的。
- 实验结论:
思考题:
1.使用了显示过滤器后,Wireshark的抓包工作量会减少吗?
不会。使用显示过滤器只会使显示的包减少,但是Wireshark的抓包工作量不会减少。
- MAC帧的长度和IP数据报的长度有怎样的关系?请用你的数据记录进行验证。
MAC帧:
IP帧:
如图所示,MAC帧是长的,MAC帧=6字节源mac地址+6字节目标mac地址+2字节类型(ipv4或ipv6)+ip数据报(46~1500字节)+4字节帧检验序列FCS。MAC帧长度是需要在64~1518字节之间的,太长或者太短都是无效的帧。
3.假设本机IP地址是192.168.0.38, 在本机上运行Wireshark 捕获报文,使用
“ip.addr == 192. 168.0. 38”作为过滤条件,能否过滤出本机发出/收到的ARP
报文?为什么?
不能。如图所示
4. ping同一局域网内的主机和局域网外的主机,都会产生ARP报文么?所产生的
ARP报文有何不同,为什么?
都会产生ARP报文,但是它们的发送端mac地址不同,同一局域网则是该连接的交换机mac,局域网外则是目的端交换机的mac。下图为ping同一局域网内的主机产生的ARP报文(图1)和ping局域网外的主机的报文(图2)。
图1
图2
5. ARP请求数据包是支撑TCP/IP协议正常运作的广播包。如果滥发或错发ARP
广播包会产生那些不良影响?如何发现和应对?
如图所示,不良影响:arp攻击会影响程序其它指令的稳定进行,会干扰Wireshark的抓包过程。
发现和解决:wireshark程序上可以看到源IP,可以封住sourseIP解决,
6.什么是免费ARP ( Gratuitous ARP )?它的作用是什么?请使用Wireshark进行捕
捉和分析。
免费ARP指主机发送ARP查找自己的IP地址,通常发生在系统引导期间进行接口配置时。与标准ARP的区别就是免费ARP分组的目的IP地址字段封装的是自己的IP地址,即向所在网络请求自己的MAC地址。
作用:
1起到一个宣告作用,它以广播的形式将数据包发送出去,不需要得到回应,只为了告诉其他计算机自己的 IP 地址和 MAC 地址。
2可用于检测 IP 地址冲突,当一台主机发送了免费 ARP 请求报文后,如果收到了 ARP 响应报文,则说明网络内已经存在使用该 IP 地址的主机。
3可用于更新其他主机的 ARP 缓存表。如果该主机更换了网卡,而其他主机的 ARP 缓存表仍然保留着原来的 MAC 地址,这时,可以发送免费的 ARP 数据包。其他主机收到该数据包后,将更新 ARP 缓存表,将原来的 MAC 地址替换为新的 MAC 地址。
- 总结及心得体会:
通过本次实验,我了解并学习使用 Wireshark 抓取局域网的数据包并进行一系列相关实验分析,进行了抓包,和观察 MAC 地址以及分析以太网帧结构,抓取 ARP 和HTTP等请求分析Wireshark工作过程等操作,让我受益匪浅。