我正在尝试向选项中带有代理的网站发出curl请求,但它似乎有效。但是如何验证网站是否收到代理IP?我安装了Fiddler,但它没有帮助我。 有什么建议吗?我想看看网站是否看到我的IP或代理IP。提前致谢
答案 0 :(得分:1)
您可以使用http://httpbin.org,它允许您显示请求中的所有HTTP标头。该网站有一些使用curl的好例子。
curl http://httpbin.org/get
将返回例如所有标头和原始IP。
如果您不想信任外部服务,则需要捕获所有网络流量。您需要在运行代理的计算机或Web服务器上运行它。这是因为您显然无法捕获代理从客户端发送到Web服务器的内容。
Wireshark(https://www.wireshark.org)是捕获和分析任何网络流量所需的工具。如果您的计算机具有图形用户界面,您可以使用它来捕获网络流量,否则使用tcpdump(见下文)
选择一个接口(例如您的WIFI或以太网接口)并开始捕获,您应该会看到在主窗口中滚动的任何网络活动。
为了过滤HTTP流量,只需输入" http"在"过滤器"在上面的输入框中单击"应用"。你应该改变标题,例如" X-Forwarded-for"根据代理的配置,可能会显示客户端的IP地址。 如果机器遇到大量流量,进一步过滤数据可能会有所帮助。您可以使用ip.addr过滤涉及某些IP的请求,即您可以使用" http和ip.addr = 1.2.3.4"过滤HTTP请求,其中收件人或发件人是指定的IP。请注意,这只是一个显示过滤器,因此出于性能原因,如果您确切知道要查找的内容,则可以使用捕获过滤器。
如果您在没有GUI的服务器上,可以使用工具tcpdump将网络流量写入文件,稍后可以在另一台机器上由Wireshark打开。
tcpdump host 1.2.3.4 and port 80 -w traffic.pcap
以上内容将捕获来自/到达IP 1.2.3.4以及从/到端口80的所有流量,并将其写入文件traffic.pcap。