我正在尝试将GeckoFx库和Tor.NET库结合起来。
在我的代码中我做了所有准备使用tor网络的工作,
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,它不能工作。
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来使用代理?
//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。谢谢。
发布于 2017-01-07 20:18:11
在初始化浏览器之前,您是否在代码中设置了任何Firefox首选项?
尝试:
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"] = 5network.proxy.type值1等效于“手动代理配置”设置。
以下设置将SOCKS代理设置配置为以127.0.0.1:9050的Tor使用DNS解析而不是SOCKS (Tor)。
这似乎应该正确地将GeckoFX配置为使用Tor。
发布于 2017-01-07 11:56:52
Tor网络不是为即时HTTP代理通信而设计的。相反,TOR.NET实现web代理,默认情况下监听端口8182上的连接。
此外,您还可以用
client.Proxy.Port = 8042;
请记住,如果您更改代理端口,TOR.NET将关闭现有的http侦听器,并创建一个新的侦听器。
因此,您需要配置Gecko,以便在本地主机上使用此web代理。
https://stackoverflow.com/questions/41377272
复制相似问题