引言
有场景需要抓取外部的包,碰到的问题就是 Vxn 作为代理,直接把数据转发走了,抓不到想要的数据。后续找了部分方案,最终解决了这个问题。
流量流转流程
到达本机的流量会有个默认流转路径。不同软件的情况不一样,而且 windows 和 mac 有区别。目前单独讨论 mac 版本上的 vxn。
默认流向
目标流向
从上面的流向中,我们知道需要把抓包工具前置到 Vxn 上,这样就可以获取到自己需要的包了。
ProxyMan
一个抓包工具,目前市面上抓包工具很多,简单用 Proxyman 举例子,其他工具类似,有兴趣可以自行了解。
界面
Vxn 配置
配置好自己 Vxn 的代理,按照我的工具和顺序为例,分别点击1,找到2,选择3 填写你自己的 IP,Port 和类别,给下面的 外部工具使用
外部代理需要做配置
启用一下外部代理,然后设置 HTTP、HTTPS 和 SOCKS 协议,设置为自己想要的 IP + Port。
结果
上面配置好了之后,基本就差不多了,Proxyman 的监听地址是 9090,我在web中加了 9090 的端口转发,所有页面的请求都走 9090,就可以抓到对应的包,我用 youtube 示例,抓取成功。
扩展一下,可以用自己的代码走类似的 proxy 然后去请求,应该也可以达到一样的效果。比较方便抓取一些容易自动关闭窗口的项目的请求。