Estado da meta : faça com que o tráfego de um computador na LAN use a configuração do túnel VPN entre o meu roteador e um provedor OpenVPN e não deixe que nenhum outro tráfego seja afetado.
Veja algumas informações relevantes sobre o meu roteador:
ssh ), root@hermes# nvram show | grep bytes size: 33129 bytes (32407 left)
O roteador DD-WRT ( hermes 10.1.1.1 ) é configurado como um cliente OpenVPN e se conecta com êxito ao servidor OpenVPN ( torchwood 10.8.0.1 ).
Eu testei isso executando tail -f /var/log/openvpn.log em torchwood e executando ping 10.8.0.1 em hermes , além de verificar o conteúdo de /tmp/var/log/openvpn.log em hermes - Eu definitivamente posso ver torchwood recebendo o tráfego de ping de hermes .
O que estou tentando fazer é usar o roteamento simples de políticas de origem para que outro computador ( solomon 10.1.1.20 ) na minha LAN terá todo o seu tráfego roteado através da conexão VPN. No entanto, minhas tentativas de configurar a tabela como no exemplo não foram bem-sucedidas.
Aqui estão os passos que eu dou:
iptables -I INPUT 1 -p tcp --dport 1194 -j ACCEPT iptables -I FORWARD 1 --source 10.8.0.0/24 -j ACCEPT iptables -I FORWARD -i br0 -o tun1 -j ACCEPT iptables -I FORWARD -i tun1 -o br0 -j ACCEPT
root@hermes# mkdir /tmp/etc/iproute2 root@hermes# echo "200 ovpn" >> /tmp/etc/iproute2/rt_tables root@hermes# ip rule add from all 10.1.1.20 lookup ovpn root@hermes# ip route add default via 10.8.0.1 dev tun1 table ovpn root@hermes# ip route flush cache
O resultado final é que a pasta iproute2 é criada e 200 ovpn é o conteúdo do arquivo rt_tables nessa pasta. No entanto, quando eu corro:
root@hermes# ip rule list
0: from all lookup local
32766: from all lookup main
32767: from all lookup default
root@hermes# ip route show table ovpn
root@hermes# ip route show table all
10.8.0.5 dev tun1 src 10.8.0.6
X.Y.Z.1 dev vlan2
10.8.0.0/24 via 10.8.0.5 dev tun1
10.1.10.0/24 via 10.8.0.5 dev tun1
10.1.1.0/24 dev br0 src 10.1.1.1
X.Y.Z.0/21 dev vlan2 src X.Y.Z.W
169.254.0.0/16 dev br0 src 169.254.255.1
127.0.0.0/8 dev lo
default via X.Y.Z.1 dev vlan2
broadcast 127.255.255.255 dev lo src 127.0.0.1
broadcast X.Y.Z.0 dev vlan2 src X.Y.Z.W
local 169.254.255.1 dev br0 src 169.254.255.1
local 10.8.0.6 dev tun1 src 10.8.0.6
broadcast X.Y.Z.255 dev vlan2 src X.Y.Z.W
broadcast 169.254.0.0 dev br0 src 169.254.255.1
broadcast 10.1.1.255 dev br0 src 10.1.1.1
broadcast 169.254.255.255 dev br0 src 169.254.255.1
local X.Y.Z.W dev vlan2 src X.Y.Z.W
broadcast 127.0.0.0 dev lo src 127.0.0.1
broadcast 10.1.1.0 dev br0 src 10.1.1.1
local 127.0.0.1 dev lo src 127.0.0.1
local 10.1.1.1 dev br0 src 10.1.1.1
local 127.0.0.0/8 dev lo src 127.0.0.1
root@hermes# ifconfig tun1
tun1 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.6 P-t-P:10.8.0.5 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:3 errors:0 dropped:0 overruns:0 frame:0
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:252 (252.0 B) TX bytes:252 (252.0 B)
Nenhum comando gera a informação que acabei de adicionar. Eu também tentei adicionar os comandos para o script de inicialização na interface do usuário da web do roteador e para /tmp/openvpn/route-up.sh sem resultados.
Também : existe uma alternativa? Por exemplo, talvez se eu pular a configuração VPN no roteador, e em vez disso estabelecer o link OpenVPN de solomon diretamente para torchwood , então eu tenho que mudar apenas a tabela de roteamento em solomon ?