使用Privoxy将HttpRequests转发给TOR

时间:2014-02-23 01:15:20

标签: c# tor http-proxy

范围:

我正在尝试通过C#发出我的所有HttpRequests,以便通过TOR网络进行路由。

经过一些快速研究后,我发现了一些堆栈溢出问题,如This OneThis 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客户端,尽管它似乎正在运行。

问题:

正如用户@JuniorMayhé指出的那样,我必须在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分钟,但仍然出现此错误。

2 个答案:

答案 0 :(得分:0)

也许错过了一段时间?这就是我在配置文件中的内容。

forward-socks5   /               127.0.0.1:9050 .

答案 1 :(得分:0)

使用此端口:9150在privoxy设置中。为我工作