How to by pass network using WebProxy?
If I want to bypass a Network like 192.168.1.0/24 using webProxy is there any way?
开发者_Python百科WebProxy proxy = new WebProxy();
proxy.ByPassList = ???
You could set it up in Internet Explorer and then use
WebProxy proxy = (WebProxy) WebProxy.GetDefaultProxy(); Deprecated.
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);
or you could try to add "192.\.168\.1\.*"
to proxy.BypassList with something like
List<string> bypasslist = new List<string>(proxy.BypassList);
bypasslist.Add("192.\.168\.1\.*");
proxy.BypassList = bypasslist.ToArray();
You cannot alter the bypass list after the proxy creation. Use the following constructor overloads:
Uri address = ...
proxy = new WebProxy(address, **true**);
true means "bypass on local", and should be enough for you needs if you are using a 192.168.1.0/24 subnet.
or if you want to add a custom list:
Uri address = ...
proxy = new WebProxy(address, true, new string[] {"192.168.1.1","intranet",...});
Use this
WebProxy lb_proxy = new WebProxy("PROXY_IP", PROXY_PORT)
{
BypassProxyOnLocal = true,
BypassList = new string[] { "192.168.1.1", "192.168.1.2",...}
};
httpRequest.Proxy = lb_proxy;
精彩评论