Isso me incomoda imensamente.
Eu preciso conectar-me à rede do cliente através de VPN. Mas eu definitivamente não quero enviar todo o tráfego através da rede do cliente, então esta opção está fora de questão. O que eu preciso basicamente é que o sistema operacional saiba que todos os subdomínios de rede do cliente (* .example.com) precisam passar pela conexão VPN.
Eu tentei algumas opções:
- Alterar a ordem dos serviços e definir a VPN no topo, mas isso funciona da mesma forma que "Enviar todo o tráfego pela conexão VPN".
- Usando "VPN on Demand" opção de opções avançadas de rede, mas esse recurso é muito lixo para ser honesto. Parece funcionar apenas no Safari (?!) E não direciona a conexão, mas basicamente aciona o sistema operacional para se conectar à VPN selecionada.
A razão pela qual eu preciso que ele funcione com base em nomes de host, em vez de intervalo de IP, é simples - meu cliente tem muitos servidores dentro de sua rede e é impossível para mim lembrar de todos os IPs. Eles estão todos dentro de um intervalo, mas isso não me ajuda a lembrar.
Outra opção seria colocar a conexão VPN na parte inferior dos serviços de rede e desmarcar "Enviar todo o tráfego ..." e colocar todos os nomes de hosts conhecidos no arquivo hosts, mas considerando que pode haver centenas de servidores (portanto, nomes de host e ips também) É um trabalho ridículo. E se o novo servidor aparecer na rede, precisarei editar o arquivo hosts novamente. Sisyphean labors .
No entanto, isso funciona no Windows de maneira muito simples. Se um nome de host não está disponível através da interface de rede padrão, então parece tentar conexão VPN e isso funciona de forma brilhante.
Então, como posso conseguir isso no Mac?
Conheço os endereços DNS internos do cliente, se isso for de alguma ajuda (como direcionar determinados domínios por meio de um DNS diferente)?
PS. Usando a última versão 10.6.6.
PS2 Eu estou usando VPN para acessar intranet, servidores de controle de versão (svn: //), compartilhamentos de samba e para acesso SSH a servidores.
fonte
Respostas:
Faça netstat -r antes e depois da conexão VPN. Observe a alteração na rota padrão do seu gateway padrão para o link da VPN. remover o link padrão para o endereço IP da conexão VPN adicionar sub-rede do cliente e sub-rede VPN à sua rota usando a sub-rede de destino para que o tráfego para o seu cliente passe pela VPN. Sua rota padrão original através do seu Gateway deve estar intacta e seu tráfego regular deve passar pelo seu próprio gateway.
fonte
A maneira padrão de fazer isso é rotear somente os intervalos de IP dos clientes pela VPN. Encaminhar outro tráfego pela sua rede padrão.
Por motivos de segurança, muitas conexões VPN forçam todo o tráfego pela VPN a controlar o vazamento de informações. Eu gostaria de discutir o contrário com seu cliente. Desconecte-se da VPN ao fazer seu próprio trabalho.
fonte
Se você puder executar o RIP ou outro prototol de roteamento no servidor VPN (por exemplo, Windows Server 2008 ), também poderá executar o RIP no seu Mac , o que adicionaria automaticamente rotas anunciadas pelo servidor. Dessa forma, você só precisaria especificar a lista de rotas uma vez e configurá-la automaticamente para clientes VPN.
Na prática, você provavelmente quer que o servidor VPN apenas faça propaganda de rotas e não ouça nada que os clientes anunciam, caso contrário, clientes mal-intencionados ou mal-intencionados poderiam desviar todo o tráfego.
fonte
O que você está sugerindo é conhecido como Split-Tunneling e, na maioria das vezes, os administradores de rede não permitem isso por motivos de segurança. Dependendo do cliente VPN que você está usando, o cliente VPN cria um adaptador de rede virtual e a rota padrão para o tráfego se torna o túnel. Com poucas exceções, o usuário da VPN não pode modificar esse comportamento.
Então, infelizmente, você terá que se desconectar da VPN para direcionar o tráfego para fora do túnel.
fonte