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!
Tags networking vpn routing c#