
Estou tentando configurar um roteador sem fio e usar uma VPN. Como sou bastante novo neste tópico específico. Espero que alguém aqui possa me dar uma dica ou, se possível, uma solução prática. Pesquisei na web de cima a baixo, mas não encontrei uma solução convincente para o seguinte problema:
Eu tenho um dispositivo baseado em Ubuntu com duas interfaces sem fio (wlan0 e wlan1), bem como uma interface de rede física (eth0) que está conectada à internet. Também pretendo me conectar a uma VPN (openvpn para um provedor de VPN que terei que comprar primeiro), que provavelmente será tun0 ou algo assim. Quero que qualquer tráfego de dispositivos conectados ao wlan1 seja canalizado através da VPN e que todo o tráfego no wlan0 seja roteado diretamente para a Internet.
Aqui estão minhas perguntas: a) isso é possível? b) se (a == sim) como eu faria isso?
Preciso de uma solução confiável, então, por favor, não faça hacks sujos, se possível.
Agradecemos antecipadamente, colega
Responder1
Isso é feito usando roteamento baseado em políticas.
Normalmente, as decisões de roteamento são tomadas com base na rede de destino; no entanto, com o roteamento baseado em políticas, você pode rotear com base em todos os tipos de aspectos de uma conexão. Seu cenário é simples: se a interface de entrada for wlan1
, a rota padrão deverá estar fora detun0
Primeiro, configuramos uma nova tabela de roteamento chamada "vpn" (ou o que você quiser):
echo "200 vpn" >> /etc/iproute2/rt_tables
Ou você pode editar este arquivo e adicioná-lo 200 vpn
ao final.
Em seguida, precisamos adicionar uma regra:
sudo ip rule add iif wlan1 lookup vpn
Isso está dizendo "se a interface de entrada for wlan1
usada, use a tabela de roteamento chamada "vpn", em vez da tabela normal.
Em seguida, adicionamos uma rota padrão à tabela de roteamento VPN:
sudo ip route add default dev tun0 table vpn
sudo ip route flush cache
Isso diz que qualquer coisa que use a tabela de roteamento chamada "vpn" usará a interface tun0 como gateway padrão. Em seguida, liberamos o cache da rota para garantir.
Você pode usar este comando para visualizar a tabela de roteamento VPN:
sudo ip route list table vpn
Agora é só executar esses comandos, talvez como um script após a ativação da VPN. Tenho certeza que o openvpn tem um script post-up ao qual você pode adicioná-los.