【问题标题】:Why can't Fiddler detect traffic through proxy servers?为什么 Fiddler 无法通过代理服务器检测流量?
【发布时间】:2016-01-28 23:27:21
【问题描述】:

我最近打开了 Fiddler,没有打开过滤器,我正在从命令提示符运行一个与服务器通信的程序(它是一个简单的内部专有程序)。

有趣的是,Fiddler 没有接收到这种通信,它主要由 REST API 调用组成。我做了一些研究,发现了这句话,来自here

关于您在 Fiddler 中看不到此流量的原因—— 假设您没有设置任何过滤器,这表明无论 您用于发送 HTTP 请求的机制未采用 系统的代理设置。例如,这意味着您的代码 如果在需要代理服务器的公司计算机上运行会失败 访问互联网。

但是,我想知道为什么会这样。据我了解,我的电脑仍然需要将数据从我的网卡发送到代理服务器的网卡。流量没有绕过我的网卡——它只是携带一个不同的地址。为什么 Fiddler 看不到这个?

【问题讨论】:

  • 在使用手持设备与我的 PC 共享数据时,我遇到了我认为类似的问题;我在这里写了一个关于如何捕获此类流量的提示:codeproject.com/Tips/819121/… 在旁注中,我想知道他们为什么将您引用的工具命名为“Roots”中的一个字符?

标签: networking proxy fiddler


【解决方案1】:

原因是 Fiddler 不是通过嗅探您的网卡而是通过将其自身安装为系统代理来工作的。如果单击开始并键入“Internet 选项”并选择选项卡“连接”和“LAN 设置”按钮,您将看到 localhost:8888 是您的系统代理。现在,大多数表现良好的客户端(例如 IE 和 Chromer)都尊重并使用系统代理,但有些则不这样做。特别是 Java 程序对它们将使用哪个代理有自己的想法,您必须单独设置。对于只是硬编码以发出自己的直接 HTTP 请求的其他程序,您无法使用 Fiddler AFAIK 监视它们。

【讨论】:

    猜你喜欢
    • 2017-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-17
    • 1970-01-01
    • 2020-07-03
    相关资源
    最近更新 更多