本次实验使用wireshark流量分析工具进行网络嗅探,旨在了解TCP协议的原理以及连接建立过程。
本次实验使用Kali Linux虚拟机完成,主机操作系统为Windows11,虚拟化平台选择Oracle VM VirtualBox,组网模式选择“NAT网络”。
1、实验组网
本次实验只需要1个Kali Linux虚拟机即可完成,网络模式选择NAT网络,与外网连通。本次实验的组网如下图所示:
2、TCP协议原理
TCP(Transmission Control Protocol,传输控制协议)是面向连接的运输层协议(和无连接的UDP不同),使用三次握手方法在客户端(Client)和服务器(Server)之间建立连接。
3、TCP报文捕获
(1)本次实验通过在Kali Linux虚拟机和百度(www.baidu.com)之间建立TCP连接的方式,捕获相关报文,理解TCP协议的建立过程。
(2)首先,在Kali Linux虚拟机终端中执行命令
ping www.baidu.com
获得百度的服务器IP地址:
可以看出,百度的服务器IP地址为110.242.68.4。
(3)使用Kali自带的火狐浏览器访问www.baidu.com
(4)与此同时,启动Kali自带的Wireshark流量分析工具,在过滤条件一栏中,填写“tcp”,抓取该连接过程的TCP报文。
(5)重点关注序号为13~17的5条报文:
从上图中可以看出,客户的IP地址为10.0.2.5,即Kali Linux虚拟机的IP地址。服务器的IP地址为110.242.68.4,即百度的服务器IP。
13~15号报文为3次握手,之后,连接建立,客户和服务器互传"Hello"。
该过程可由下图简要表示。
至此,本次实验结束。
计算机网络 (第7版),谢希仁 编著,北京,电子工业出版社,2017年1月。