Charles是一款很实用,界面很友好(至少跟fiddler比起来),功能强大的抓包神器,因为它是基于 java 开发的,所以跨平台,Mac、Linux、Windows下都是可以使用的,并且在Android和iOS设备上通用。它的原理是通过成为电脑或者移动设备的代理截取请求和请求结果达到分析抓包的目的。本文将介绍Charles的安装,如何配置代理和一些基础功能的使用介绍以及本人使用过程中踩到的坑。如有错误,欢迎指正。
Charles安装与破解
官网下载地址:https://www.charlesproxy.com/
破解jar包下载:https://www.zzzmode.com/mytools/charles/
一,网络与防火墙设置
1.1网络
电脑和手机连接同一wifi下,查看手机的ip地址,如10.X.X.X
在电脑上打开cmd,使用命令 ping 10.X.X.X,如下图,代表电脑和手机之间网络畅通
1.2防火墙
打开控制面板,找到防火墙选项
使用关闭选项关闭所有防火墙
确保所有防火墙是关闭状态,
二,Charles代理配置使用
配置代理
【注】这一步的目的是为了移动设备连接到Charles,这样移动设备发起的所有请求才能在Charles中看到。以下所有演示截图皆来自Android设备,iOS设备大同小异。
2.1使用Charles工具查看
PC本地IP和端口号(端口号默认为8888,也可自行修改),选择“Help->Local IP Address”
查看的结果例如下图,使用来自wifi分配的IP地址,
如不确定,可在“网络连接”中查看wlan状态
2.2查看设置代理默认端口号
“Proxy->Proxy Settings”
2.3设置wifi
长按Android设备当前连接的WiFi,选择”Modify network”->”Advanced options”->“Proxy”->”Manual”,如下图所示,输入”Proxy hostname”和”Proxy port”(即上一步查看的IP地址和端口号)然后点击保存,见下图:
2.4allowip
点击保存后,Charles会弹出connection确认弹窗,选择”Allow”,见下图:
2.5手动设置allowip
注意,如果首次连接时,Charles未出现该提示,请手动进入Charles的设置选项,添加当前手机的IP,选择“Proxy->Access Control Settings”
点击“Add”手动添加IP