Charles web调试代理没有检测到vpn连接

时间:2011-10-30 00:06:39

标签: debugging testing proxy charles-proxy

我有一个VPN连接,我正在使用Charles Web调试代理测试一些网站,但Charles似乎没有检测到我的VPN连接,因为它没有检测到我在VPN网络上运行的网站。有什么帮助吗?

谢谢

6 个答案:

答案 0 :(得分:11)

我在Mac上遇到了同样的问题,但是能够解决它。基本上连接到VPN后,无论是在VPN连接建立之前还是之后启动,Charles都会停止记录所有http流量

问题在于系统级别的自动代理配置。

我在“系统偏好设置”中打开了“自动代理配置”和“自动代理配置”。网络设置>您的网络>高级

我无法通过UI关闭它们,因为它们被VPN机器上的公司策略禁用/灰显但我能够从终端运行2个shell命令,但是在启动Charles和之前关闭了两个选项在连接到VPN之前(我认为您需要在您的帐户上使用管理员权限才能运行这些帐户)。

networksetup -setautoproxystate Wi-Fi off
networksetup -setproxyautodiscovery Wi-Fi off

Wi-Fi恰好是我正在运行的网络接口的名称。如果你是硬接线,你的可能是以太网。

这在网络设置中基本上未选中两个选项,使自动代理的URL保持不变。如果您可以通过UI取消这两个复选框 - 甚至更好。

到目前为止很棒,但你还没有完成!!

您需要找出公司代理的真实IP地址,并在Charles的外部代理设置下输入。您的VPN配置可能指向外部配置文件。取消选中“自动代理配置”时,带有配置的URL应显示在“代理配置文件”文本框中。下载该文件,找到代理设置,然后在Charles的外部代理设置中输入这些设置。

Voila - 启动Charles,启动VPN - 即使我在VPN上,所有HTTP流量都流经Charles - 正是我所需要的。

希望这会有所帮助,你在MAC上运行它:)

答案 1 :(得分:8)

答案 2 :(得分:7)

对于粘度:

添加此

dhcp-option HTTPPROXY 127.0.0.1:8888
dhcp-option HTTPSPROXY 127.0.0.1:8888

在连接设置中的“高级”选项卡下。

查尔斯现在将使用粘度:)

答案 3 :(得分:1)

使用Chrome和Viscosity作为我的VPN客户端,在VPN连接时,我无法从Chrome获取任何流量通过Charles。

我的解决方案是使用Firefox。这可能是因为Firefox建立了自己的代理连接(因此有自己的代理设置),而Chrome和Safari则遵循MacOS来建立HTTP连接。

答案 4 :(得分:0)

我设法通过以下设置将Charles与我的VPN配合使用:

  1. 打开charles->帮助-> SSL代理->“安装Charles Root 移动设备或远程浏览器上的证书”。这应该显示一个 带有代理IP和端口的对话框
  2. 打开“系统偏好设置”->“网络”。选择您的VPN并按 “进阶”
  3. 转到“代理”,然后对“ Web代理”,“安全Web代理”进行下一步 和“ SOCKS代理”:
    • 选中复选框
    • 对于“ Web代理服务器”,输入“ 127.0.0.1”
    • 对于端口,请在Charles帮助对话框中输入端口

它应该可以正常工作,直到VPN和Charles运行为止。 重新启动VPN或Charles后,您可以再次更改设置。 这不是最好的解决方案,但至少可以奏效。

答案 5 :(得分:0)

查尔斯代理+隧道熊

1. run Charles
2. Charles -> Proxy -> MacOS Proxy
3. Charles -> Stop Recording
4. Charles -> Stop SSL Proxying 

5. run Tunnel Bear

6. Charles -> Start Recording
7. Charles -> Start SSL Proxying