Android网络抓包

一、抓包:
直接使用Android移植版的tcpdump工具,该工具在Android模拟器的/system/bin目录下,源码位于Android系统源码的external\tcpdump目录。
执行以下命令开始抓包:

adb shell tcpdump -p -vv -s 0 -w /sdcard/capture.pcap
抓包的数据将保存在/sdcard/capture.pcap。
按ctrl+c停止抓包。
执行命令:
adb pull /sdcard/capture.pcap D:\
导出抓包文件到D盘。
二、分析:
安装Wireshark:http://www.wireshark.org/download.html。
安装好Wireshark后,双击打开capture.pcap即可分析之前抓包的数据。


注意:以上方法只适用于模拟器。真机需要root才能进行网络抓包,方法如下:
一、获取tcpdump软件,获取地址(http://www.strazzere.com/android/tcpdump)
二、将下载的tcpdump copy到手机上:
C:\android-sdk-windows\platform-tools>adb push d:/tcpdump /data/local/tcpdump
如果提示没有权限,直接将文件放到sdcard上,然后用re移动到/data/local目录下。
三、获取root权限:
C:\android-sdk-windows\platform-tools>adb shell
$ su
四、修改tcpdump的权限
C:\android-sdk-windows\platform-tools>adb shell
#chmod 777 /data/local/tcpdump
五、运行tcpdump,输入以下命令启动抓包。
/data/local/tcpdump -p -vv -s 0 -w /sdcard/capture.pcap
其他处理与模拟器是一样的。

PS:后来发现其实通过电脑分享网络,手机连接电脑的网络后,可以直接在电脑上进行抓包,方便快捷。

你可能感兴趣的:(Android网络抓包)