网络编程(1)TCP数据包分析

发布者:上海IT外包来源:http://www.lanmon.net点击数:1429

我正在研究网络编程的知识。我已经考虑了很长时间,我不知道从哪里开始。碰巧最近这个项目有需求。我需要在一对设备之间捕获数据包,并分析双方的数据是否正确。 。抓住这个机会,弄清楚如何使用TCPDcp + Wireshark来解析TCP数据包。可以说TCP分组的分析是网络编程的基础。通过对TCP包的分析,可以有效地解决网络编程中的许多问题。
使用现有设备,我们部署了以下网络拓扑图进行功能测试。选择捕获Server:10.88.65.206和Client:10.88.65.128之间的通信数据。
网络编程(1)TCP数据包分析
以下开始介绍数据包捕获分析过程:
首先介绍测试环境,服务器端,IP地址为:10.88.65.206,操作系统为:CentOS6.6。在客户端,IP地址为10.88.65.128,操作系统为:CentOS6.6。捕获工具:tcpdump,附带CentOS桌面操作系统。 TCP协议分析工具:Wireshark。
客户端和服务器之间的长连接是获得这对设备之间的通信数据。通过reboot命令重新启动客户端设备,让客户端重新连接到服务器并发送数据。在重新启动客户端之前,在服务器端执行数据包捕获命令:
Tcpdump tcp -i eth0 port 3366 -s 0 -w test.cap
注意:简要说明此命令,在服务器eth0网络端口的端口3366上获取完整的tcp数据包,并将数据写入test.cap文件。客户端和服务器将发送业务数据。至于什么业务数据,它取决于您的实际业务。
客户端成功启动并恢复服务器的服务数据后,将停止数据包捕获。从服务器下载test.cap包文件进行分析(您可以使用WinSCP,xftp和其他工具进行下载)。如果您的计算机上安装了Wireshark,则无需重复安装。如果您的计算机上没有安装Wireshark,则需要安装它。安装完成后,您可以双击打开test.cap文件。开业后的结果如下:
网络编程(1)TCP数据包分析
多个设备与服务器通信,为了快速查看这对设备之间的数据包,可以添加一个过滤器。
网络编程(1)TCP数据包分析
过滤后,我们可以看到其余数据是两个设备之间的数据。这更有利于我们的数据分析。
我们可以逐个查看数据,直到找到需要检查的数据。找到已检查的数据后,我们可以单击“数据”以查看数据是否正确。图中灰色部分是我们测试中发送的业务数据。这里的数据都是十六进制字符串,您也可以将业务数据转换为十六进制字符串,以便与此数据进行比较以获得正确性。
网络编程(1)TCP数据包分析
获取上述十六进制数据后,我们可以逐项检查数据的正确性。如果您是自定义协议,则可以将自定义协议与发送的实际数据进行比较。
IT外包
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部