移动端网络检测
移动端网络检测
通过移动端抓包,可以较快定位移动网络环境下,在资源访问和上传过程中的网络问题。
不使用HTTP Proxy抓包
网络上常用的方法是通过HTTP Proxy抓包。缺陷有二:
1.无法抓取EDGE/3G/4G的数据包
2.如果WiFi无法设置代理,此方案无法执行
安卓篇
首先你必须判断自己的安卓设备有无root。如果手机上有类似SuperSU的权限管理工具则说明已经是一台root设备。
已root
工具:
shark for root
界面:
使用方法:
点击Start即开始
点击Stop即结束
可在sdcard目录中找到抓的包
未root
工具: tPacketCapture
界面:
使用方法:
点击Capture
点击I trust this application
点击OK
下拉菜单中选中改应用,点击Disconnect
点击FILE LIST可以看到抓到的包。点击该包可以用QQ发送给电脑
也可在Android/data/jp.co.taosoftware.android.packetcapture/files中找到抓的包
IOS篇
环境:
MAC & Xcode
方法:
USB链接iOS设备和Mac
打开terminal
rvictl -s <UDID>
UDID可以在iTunes中的Summary找到。点击Serial Number直到出现UDID。注意UDID为小写,尽管iTunes显示为大写。
可以右键点击该UDID,选择copy,即可获得小写的UDID
输入UDID时,记得去掉<>
接着会提示成功
Starting device <UDID> [SUCCEEDED] with interface rvi0
这个时候在wireshark上选择rvi0这个设备开始抓包就行了
在Capture中的Options里可以找到rvi0.勾选之后,start
抓到要的信息之后,点击stop.并在file中选择save as,保存该包
退出
rvictl -x <UDID>
使用CURL获取http header
倘若能在移动端获取http头部信息,那么对于网络分析来说,将提供很大帮助。而且比起抓包要方便不少。
而且这种方法不需要root(目前仅限安卓)
工具:
Terminal IDE
使用方法:
进入应用,点击Terminal IDE
尽量选择IDE键盘,效果如图所示
我这里输入了
curl -voa http://7rfgur.com2.z0.glb.qiniucdn.com/tiger2.jpg
大家在使用过程中,请自行添加要检测的URL。跟在curl -voa 之后
附录
安装wireshark
这是抓包、分析工具。我这里默认MAC OS环境。
安装X11
安装wireshark
其他实用工具
安卓环境下
Fing
可查看WiFi中的其他设备
IP Tools
可查看IP信息,Trace route,Ping等等
Speedtest
可做速度测试
Terminal Emulator
强大的终端工具,需要ROOT权限
BusyBox
增添更多的linux命令,需要ROOT