Wifi 网络Charles无法抓包问题

2019-10-11  本文已影响0人  MrLyp

最近在调试APP的时候需要使用Charles抓包,但是一通操作下来手机始终无法连接电脑的代理。具体现象为

Mac + 连接Wifi + 打开Charles 设置好端口号,勾选代理。
App 连接同样的Wifi + 手动设置代理 + Mac的IP地址+设置好的端口号
手机连接代理后,无法连接网络,抓包窗口没有发现相关的网络请求。

网上很多文章的解决办法都说让电脑有线连接,开启wifi热点,让手机连接热点。这样确实可以解决问题,但是现在无论公司还是家里,开发环境基本都是笔记本+WiFi,让我单独扯一根网线出来实在是难为我。并且这并没有彻底解决连接同一个WiFi却无法抓包的问题,只是换了个方式绕开了。

研究下来发现其实解决办法也比较简单。连接同一个wifi但是不能抓包,一个可能的原因是路由器的设置问题。想要抓包,首先要保证手机能够通过访问电脑的ip的地址,现在的路由器可能是因为安全的原因,默认是都禁止了局域网内不同设备互相访问的。也就是说手机都无法访问电脑,无法把电脑当做代理服务器,也就无法抓包成功了。

我家里路由器型号是华为路由WS5200, 进入管理台后,路由器有个DMZ主机的功能,默认是关闭的。从他的说明可以大致理解意思为在局域网内设置某个设备为主机,其他的设备可以访问DMZ主机,正是我们需要的功能。


图片示意

把MAC设置为DMZ主机之后,Charles立刻就能抓到想要的数据了。不同的路由器设置可能不同,但是至少可以提供一个参考的思路。

上一篇 下一篇

猜你喜欢

热点阅读