tcpdump+wireshark 调试网络应用

过去调试c/c++ 的socket代码,通常都只会打日志,打日志,其实这样的调试方法太慢,过低效~ html

本文介绍一种如今广泛在用的调试手段,落地成文,也给本身一个记录。 c++

【工具】tcpdump、wireshark windows

【说明】 网络

tcpdump用来抓tcp/udp包,能够落地成文件。见链接  socket

wireshark是window下的一款网络分析工具。见链接 tcp

【使用小记】 工具

step1: 完成编码,编译成二进制代码如 a.exe。 字体

step2: 启动a.exe,假设其向 100.2.3.4的9999端口请求,则,使用: 编码

tcpdump -i eth1 host 100.2.3.4 and port 9999 -w check.cap -s 1024 调试

step3: 下载到windows机器,直接使用wireshark打开。举例,找到以下图内容:

选中Data(xx bytes)

下面蓝色覆盖字体即为你向对方发的包体。如调试有问题,截图给对方,很快就能定位到问题~

如0000001e为网络序的长度1e(16进制)=30(10进制),这个表示数据长度,不包含自己,因此第一图中Length=34,这样很容易定位到如:网络序设置不对,长度不对等问题。

相关文章
相关标签/搜索