首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#结合GeckoFX + Tor.NET库

C#结合GeckoFX + Tor.NET库
EN

Stack Overflow用户
提问于 2016-12-29 09:58:43
回答 2查看 976关注 0票数 2

我正在尝试将GeckoFx库和Tor.NET库结合起来。

在我的代码中我做了所有准备使用tor网络的工作,

代码语言:javascript
复制
ClientCreateParams createParameters = new ClientCreateParams();
createParameters.ConfigurationFile = ConfigurationManager.AppSettings["torConfigurationFile"];
createParameters.ControlPassword = ConfigurationManager.AppSettings["torControlPassword"];
createParameters.ControlPort = Convert.ToInt32(ConfigurationManager.AppSettings["torControlPort"]);
createParameters.DefaultConfigurationFile = ConfigurationManager.AppSettings["torDefaultConfigurationFile"];
createParameters.Path = Path.Combine(root, ConfigurationManager.AppSettings["torPath"]);

createParameters.SetConfig(ConfigurationNames.AvoidDiskWrites, true);
createParameters.SetConfig(ConfigurationNames.GeoIPFile, Path.Combine(root, @"Tor\Data\Tor\geoip"));
createParameters.SetConfig(ConfigurationNames.GeoIPv6File, Path.Combine(root, @"Tor\Data\Tor\geoip6"));

client = Client.Create(createParameters);


  <appSettings>
    <add key="torConfigurationFile" value=""/>
    <add key="torControlPassword" value=""/>
    <add key="torControlPort" value="9051"/>
    <add key="torDefaultConfigurationFile" value=""/>
    <add key="torPath" value="Tor\Tor\tor.exe"/>
 </appSettings>

WebBrowser1是一个简单的浏览器,它与Tor设置一起工作。但是浏览器是GeckoFx,它不能工作。

代码语言:javascript
复制
webBrowser1.Navigate("https://duckduckgo.com/?q=my+ip&t=h_&ia=answer");
browser.Navigate("https://duckduckgo.com/?q=my+ip&t=h_&ia=answer");

正如你所看到的,ip应该和左边的控件一样。您可以从这里下载和测试整个项目。这是WinForms项目刚从解决方案中运行的“壁虎”项目。知道如何设置GeckoFx使用Tor网络吗?或者我需要设置GeckoFx来使用代理?

代码语言:javascript
复制
        //GeckoPreferences.User["network.proxy.type"] = 1;
        //GeckoPreferences.User["network.proxy.socks"] = "127.0.0.1";
        //GeckoPreferences.User["network.proxy.socks_port"] = 9150;
        //GeckoPreferences.User["network.proxy.socks_version"] = 5;
        //GeckoPreferences.User["network.proxy.socks_remote_dns"] = true;

VisualStudio 2015。谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-07 20:18:11

在初始化浏览器之前,您是否在代码中设置了任何Firefox首选项

尝试:

代码语言:javascript
复制
GeckoPreferences.Default["network.proxy.type"] = 1;
GeckoPreferences.Default["network.proxy.socks = "127.0.0.1"
GeckoPreferences.Default["network.proxy.socks_port"] = 9050
GeckoPreferences.Default["network.proxy.socks_remote_dns"] = 1
GeckoPreferences.Default["network.proxy.socks_version"] = 5

network.proxy.type值1等效于“手动代理配置”设置。

以下设置将SOCKS代理设置配置为以127.0.0.1:9050的Tor使用DNS解析而不是SOCKS (Tor)。

这似乎应该正确地将GeckoFX配置为使用Tor。

票数 2
EN

Stack Overflow用户

发布于 2017-01-07 11:56:52

Tor网络不是为即时HTTP代理通信而设计的。相反,TOR.NET实现web代理,默认情况下监听端口8182上的连接。

此外,您还可以用

client.Proxy.Port = 8042;

请记住,如果您更改代理端口,TOR.NET将关闭现有的http侦听器,并创建一个新的侦听器。

因此,您需要配置Gecko,以便在本地主机上使用此web代理。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41377272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档