PC使用wireshark直接查看android手机上tcpdump捕捉到的数据包

PC使用wireshark直接查看android手机上tcpdump捕捉到的数据包

(kangear注:在linux下也可以使用,安装adb,命令中去掉start, tcpdump-arm是自带的,就可以原封不动的应用到linux下了)


  在进行网络状况分析的时候,tcpdump和wireshark是必不可少的工具,手机上进行网络分析也是如此。在此之前,我都是在手机上使用tcpdump抓包之后,保存成一个.pacp文件,之后再在PC上使用wireshark来进行分析。在看到了参考网站中的内容之后,发现其实还有更加简便的方法,通过adb foward的功能,可以直接将手机上的tcpdump抓包结果通过USB发送到电脑,电脑上可以直接使用wireshark进行查看。具体步骤包括有

一、下载需要的文件包括

tcpdump-arm:可以在手机上运行的tcpdump文件

nc.exe:netcapture

二、将编译好的tcpdump文件发送到手机上

打开命令行cmd,进入电脑中保存了tcpdump-arm的目录,运行如下命令

adb push tcpdump-arm /data

adb shell "chmod 777 /data/tcpdump-arm"

三、将nc.exe保存至wireshark的安装目录

四、在命令行中以管理员权限运行如下命令

cd C:\Program Files\Wireshark
start adb shell "./data/tcpdump-arm -n -s 0 -w - | nc -l -p 7100"
adb forward tcp:6100 tcp:7100 && nc 127.0.0.1 6100 | wireshark -k -S -i -
#注意 nc后的端口号应当和adb forward最开始的端口号保持一致

五、可以将上面三行代码保存为.bat文件,今后需要时可以直接运行.bat文件。

参考

http://mobile.tutsplus.com/tutorials/android/analyzing-android-network-traffic/

http://blog.csdn.net/wanghui_nju/article/details/5630570

http://yangjunfeng.blog.51cto.com/539796/168972

http://www.securityfocus.com/tools/139

在linux下的命令:

adb shell "tcpdump -n -s 0 -w - | nc -l -p 7100"

adb forward tcp:6100 tcp:7100 && nc 127.0.0.1 6100 | wireshark -k -S -i -

PC使用wireshark直接查看android手机上tcpdump捕捉到的数据包_第1张图片

PC使用wireshark直接查看android手机上tcpdump捕捉到的数据包_第2张图片

PC使用wireshark直接查看android手机上tcpdump捕捉到的数据包_第3张图片

原文地址:http://www.cnblogs.com/jiangz/archive/2013/04/04/2997047.html

你可能感兴趣的:(Linux,应用程序编程)