【发布时间】:2014-02-23 01:15:20
【问题描述】:
范围:
我正在尝试让我通过 C# 发出的所有 HttpRequest 都通过 TOR 网络进行路由。
经过一些快速研究,我发现了一些堆栈溢出问题,例如 This One 和 This One,所以我按照他们的示例自己尝试了。
代码示例:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(
"http://whatismyipaddress.com/"
);
request.Proxy = new WebProxy("127.0.0.1:8118");
using (var response = request.GetResponse())
{
using (var reader = new StreamReader(
response.GetResponseStream(),
Encoding.GetEncoding("utf-8")
))
{
string resp = reader.ReadToEnd();
}
}
结果:
我已经安装并运行了 Privoxy(netstat -b -a 表明它正在运行/监听端口 8118)。
请求未登录到 Privoxy 客户端,尽管它似乎正在工作。
问题:
正如用户 @Junior Mayhé 所指出的,我必须在 privoxy 配置文件中取消注释这一行
forward-socks5 / 127.0.0.1:9050
这样做之后,我的网络请求开始得到Error 503 - Server Unavailable。
我已经尝试启动 Tor 浏览器,但它仍然给我这个错误。
我做错了什么?
编辑一:
在与Netstat -b -a 玩了一下之后,Firefox 的 Tor 似乎实际上是在 Port:9151 上运行,而不是像这些旧问题所述的 Port:9050。
将 Privoxy 配置文件上的端口号更改为 9151 后,我不再收到 Server Unavailable 错误,而是收到 Operation TimedOut。我已经将请求超时(连接超时和读写超时)的值增加到 2 分钟,但仍然出现此错误。
【问题讨论】:
-
我已经编辑了你的标题。请参阅“Should questions include “tags” in their titles?”,其中的共识是“不,他们不应该”。
-
并且您已经对其进行了编辑以在标题中包含 tor 标签
标签: c# tor http-proxy