BindIPEndPointDelegate para selecionar a interface VPN no Windows

1

Tenho várias conexões VPN L2TP interligadas pelo Windows em meu servidor. Por padrão, todo o tráfego da Internet deve ser roteado através do meu adaptador de rede local e não através da VPN. Meu aplicativo deve ser capaz de selecionar a interface VPN a ser usada para solicitações da Web específicas. Portanto, desejo decidir se uma solicitação da Web específica é roteada por meio de um adaptador VPN especial. No entanto, não posso codificar rotas (usando "route add"), porque o aplicativo deve determinar isso.

Desativei a opção "Usar gateway padrão na rede remota", para que nenhum tráfego seja roteado pelas VPNs por padrão.

Eu tentei usar BindIPEndPointDelegate para vincular à minha interface de VPN 10.0.0.13 , no entanto, recebo um WebException : "Não é possível conectar-se ao servidor remoto"

var req = (HttpWebRequest)WebRequest.Create("http://checkip.dyndns.org");
req.ServicePoint.BindIPEndPointDelegate = (servicePoint, remoteEndPoint, retryCount) => new IPEndPoint(IPAddress.Parse("10.0.0.13"), 80);
var webResponse = req.GetResponse();
Console.WriteLine(webResponse.ResponseUri);
var sr = new StreamReader(webResponse.GetResponseStream());
var readToEnd = sr.ReadToEnd();
Console.WriteLine(readToEnd);

Existe alguma outra maneira de conseguir isso?

Obrigado!

    
por ToniSoft 31.01.2014 / 09:59

0 respostas