如何使用Web代理绕过网络?

时间:2009-11-25 13:30:59

标签: c# .net proxy webproxy

如果我想使用webProxy绕过像192.168.1.0/24这样的网络有什么办法吗?

WebProxy proxy = new WebProxy();

proxy.ByPassList = ???

2 个答案:

答案 0 :(得分:6)

您可以在Internet Explorer中进行设置,然后使用

WebProxy proxy =(WebProxy)WebProxy.GetDefaultProxy(); 已弃用。

var iproxy = WebRequest.GetSystemWebProxy();
var url = new Uri("http://www.example.com");
var wp = new WebProxy();
wp.Credentials = iproxy.Credentials;
wp.Address = iproxy.GetProxy(url);

或者您可以尝试将"192.\.168\.1\.*"添加到proxy.BypassList,类似于

List<string> bypasslist = new List<string>(proxy.BypassList);
bypasslist.Add("192.\.168\.1\.*");
proxy.BypassList = bypasslist.ToArray();

答案 1 :(得分:4)

创建代理后,您无法更改旁路列表。使用以下构造函数重载:

Uri address = ...
proxy = new WebProxy(address, **true**); 

true 表示“绕过本地”,如果您使用的是192.168.1.0/24子网,则应该足以满足您的需求。

或者如果您想添加自定义列表:

Uri address = ...
proxy = new WebProxy(address, true, new string[] {"192.168.1.1","intranet",...});