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

栏目: 服务器 · 发布时间: 5年前

内容简介:本人正在进行网络编程方面的知识整理,想了好长时间不知道该从什么地方开始着手整理,正好最近项目上有个需求,需要在一对设备之间抓包,分析通信双方的数据是否正确。正好借这个机会梳理一下如何利用tcpdump+Wireshark实现TCP数据包的解析。可以说对TCP数据包的分析,是进行网络编程的基础。通过TCP数据包的分析,可以有效的解决网络编程中的好多问题。利用已有设备,我们部署了如下的网络拓扑图,进行功能测试。选择抓取Server:10.88.65.206与Client:10.88.65.128之间的通信数据。

本人正在进行网络编程方面的知识整理,想了好长时间不知道该从什么地方开始着手整理,正好最近项目上有个需求,需要在一对设备之间抓包,分析通信双方的数据是否正确。正好借这个机会梳理一下如何利用tcpdump+Wireshark实现TCP数据包的解析。可以说对TCP数据包的分析,是进行网络编程的基础。通过TCP数据包的分析,可以有效的解决网络编程中的好多问题。

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

利用已有设备,我们部署了如下的网络拓扑图,进行功能测试。选择抓取Server:10.88.65.206与Client:10.88.65.128之间的通信数据。

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

下面开始介绍抓包分析流程:

首先介绍一下测试环境,Server端,IP地址为:10.88.65.206,操作系统为:CentOS6.6。Client端,IP地址为:10.88.65.128,操作系统为:CentOS6.6。抓包工具:tcpdump,CentOS桌面操作系统自带。TCP协议分析工具:Wireshark。

客户端和服务端之间为长连接,为获取这对设备之间的通信数据。通过reboot命令重启Client端设备,让客户端重新连接服务端并发送数据。在重启客户端之前在Server端,执行抓包命令:

tcpdump tcp -i eth0 port 3366 -s 0 -w test.cap 

注意:简单说明下这个命令,在服务端eth0网口的3366端口抓取tcp的完整数据包,并将数据写入test.cap文件。client端和server端会有业务数据的发送,至于是什么业务数据,这取决于你的实际业务。

待客户端启动成功并与服务端的业务数据收发恢复正常后,停止抓包。从服务端机器下载test.cap抓包文件进行分析(可以使用WinSCP、xftp等 工具 进行下载)。

如果你的电脑上面已经安装Wireshark,无需重复安装,假设你的电脑上面没有安装Wireshark,你需要安装一下。安装完成后,可以直接双击打开test.cap文件。打开后结果如下所示:

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

与服务端通信的不止一台设备,为了快速查看这对设备之间的数据包,可以添加一下过滤条件。

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

经过过滤,我们可以看到剩下的数据全是这两台设备之间的数据。这样更有利于我们进行数据分析。

我们可逐条查看发送数据,直到找到我们需要检查的数据。找到检查的数据后,我们可以点击Data,查看数据是否正确。如图中的灰色部分,是我们测试中发送的业务数据。这里面的数据全是16进制字符串,你可以将你的业务数据也转为16进制字符串来与此数据比对其正确性。

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

得到上面的16进制数据后,我们可以逐项的检查数据的正确性。如果你是自定义协议,就可以将自定义协议,与实际发送数据进行逐一比对。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The Web Designer's Idea Book

The Web Designer's Idea Book

Patrick Mcneil / How / 2008-10-6 / USD 25.00

The Web Designer's Idea Book includes more than 700 websites arranged thematically, so you can find inspiration for layout, color, style and more. Author Patrick McNeil has cataloged more than 5,000 s......一起来看看 《The Web Designer's Idea Book》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

SHA 加密
SHA 加密

SHA 加密工具

html转js在线工具
html转js在线工具

html转js在线工具