rotear seletivamente o tráfego em split-VPN 12.04

rotear seletivamente o tráfego em split-VPN 12.04

Costumo trabalhar remotamente. Eu uso o Network Manager para configurar minha conexão VPN, que funcionou muito bem. A VPN que configurei atualmente usando o tipo Senha com Certificados (TLS). O que eu quero fazer é rotear apenas determinado tráfego pela VPN e todo o outro tráfego pela conexão local normal à Internet.
Isso é possível?

Só para ajudar a explicar a minha situação vou dar um exemplo do tipo de conexões que normalmente tenho que fazer com a rede VPN. Temos um site de "intranet" configurado em nossa rede de trabalho, portanto, esse site só é acessível para mim quando uso VPN, mas é acessado da mesma forma que acesso outros sites, como Google ou askubuntu.com. Costumo me conectar a um computador desktop por meio da conexão VPN por meio da área de trabalho remota, onde insiro o nome (endereço IP) do computador desktop, nome de usuário e senha. Eu me conecto a um servidor MySQL usando MySQL Workbench, onde você insere um endereço IP, nome de usuário e senha. Costumo me conectar a servidores Linux usando SSH.

Para todas as conexões acima, preciso da VPN. No entanto, também navego normalmente na web, bem como me conecto a recursos fora da rede de trabalho (Gmail, Stack Overflow, Gaming, etc.). Para essas conexões eu não desejo acessar através da conexão VPN porque essas conexões não precisam da minha VPN, a VPN apenas torna isso muito mais lento.

Eu tentei a técnica descrita neste link:http://darrenwatt.com/split-tunnel-ubuntu/

Isso não pareceu funcionar para mim. Especificamente, não consegui me conectar ao site "intranet" depois de marcar a caixa de seleção "Usar esta conexão apenas para recursos em sua rede" e conectar a VPN.

Alguém sabe como posso rotear seletivamente o tráfego através da VPN? Isso faz sentido?

Obrigado!!

Responder1

Não sei como isso funciona com NM, mas escrevo o roteiro

#!/bin/bash
function routeadd {
    route add -host xxx.xxx.xxx.xxx dev ppp0
    route add -net xxx.xxx.xxx.xxx/xx dev ppp0
}
function makepptp {
   echo pty \"pptp xxx.xxx.xxx.xxx --nolaunchpppd\" >> /etc/ppp/peers/vpn;
   echo remotename PPTP >> /etc/ppp/peers/vpn;
   echo require-mppe-128 >> /etc/ppp/peers/vpn;
   echo file /etc/ppp/options.pptp >> /etc/ppp/peers/vpn;
   echo ipparam vpn >> /etc/ppp/peers/vpn;
pppd call vpn &
}
if [ -a /etc/ppp/chap-secrets ];
        then
        rm /etc/ppp/chap-secrets
    echo $1 PPTP $2 '*' >> /etc/ppp/chap-secrets;
else
    echo $1 PPTP $2 '*' >> /etc/ppp/chap-secrets;
fi

if [ -e /etc/ppp/peers/vpn ];
    then
    rm /etc/ppp/peers/vpn;
    echo name $1 >> /etc/ppp/peers/vpn;
    makepptp;
    sleep 8;
    routeadd;
else
    echo name $1 >> /etc/ppp/peers/vpn;
    makepptp;
    sleep 8;
    routeadd;
fi

Uso:

sudo /path_to_script/vpn username password

nota: defina permissão de execução para script

O tráfego é roteado via VPN somente se você adicionar rota, qualquer resto será padrão gw.

informação relacionada