[MASOCH-L] Roteamento entre 2 redes atrás de OpenVPN

Marcio Merlone marcio.merlone at a1.ind.br
Wed Sep 1 15:52:26 BRT 2010


  Colegas,

Desculpem o tamanho da questão e sejam caridosos com este bizonho que 
vos fala e confessa a incapacidade de rotear duas redes por uma VPN com 
o OpenVPN 2.1.0-1ubuntu1.1. Preciso de ajuda para fazer as duas redes se 
enxergar pela VPN, ou seja, o cliente e servidor ovpn vão ter que rotear 
de uma rede pra outra (não só o cliente e servidor, mas as redes todas). 
Todos os envolvidos estão em redes lógicas e geográficas distintas e 
(ainda) sem iptables. Resumindo:

Servidor: 192.168.0.100/24 (Default GW = 192.168.0.254 = gw.dominio)
Cliente: 10.1.0.1/16 (a VPN fecha via internet)
Rede para a VPN: 10.255.0.0/24

Server.conf:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
server 10.255.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-config-dir ccd
route 10.1.0.0 255.255.0.0
route 10.255.0.0 255.255.0.0
push "route 192.168.0.0 255.255.255.0"
push "dhcp-option WINS 192.168.0.1"
client-to-client
keepalive 10 120
tls-auth ta.key 0 # This file is secret
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
mute 20
script-security 1 execve

Configuração para cliente em 'ccd\cliente':
iroute 10.1.0.0 255.255.255.0
ifconfig-push 10.255.0.2 10.255.0.1

No default gateway da rede 192.168.0.0 (192.168.0.254) foi configurada a 
rota para a rede 10.1.0.0 via o 192.168.0.100.

Desta forma, quando subo a VPN, uma máquina qualquer da rede 
192.168.0.0/24 consegue pingar o cliente 10.1.0.1, mas não uma máquina 
na rede, por exemplo o 10.1.0.3 (que sei que existe e é ip fixo):

root at desktop:~# traceroute 10.1.0.1
traceroute to 10.1.0.1 (10.1.0.1), 30 hops max, 60 byte packets
  1  gw.dominio (192.168.0.254)  0.409 ms  0.453 ms  0.548 ms
  2  ovpn.dominio (192.168.0.100)  0.731 ms  0.758 ms  0.774 ms
  3  10.1.0.1 (10.1.0.1)  21.512 ms  22.055 ms  22.730 ms
root at desktop:~#

root at desktop:~# traceroute 10.1.0.3
traceroute to 10.1.0.3 (10.1.0.3), 30 hops max, 60 byte packets
  1  gw.dominio (192.168.0.254)  0.422 ms  0.495 ms  0.589 ms
  2  ovpn.dominio (192.168.0.100)  0.720 ms  0.759 ms  0.811 ms
  3  10.255.0.2 (10.255.0.2)  21.766 ms  22.897 ms  23.498 ms
  4  * * *
  5  * * *
  6  *^C
root at desktop:~#

O que me estranha é que o terceiro salto é diferente. Quando 
estabelecida a VPN, as tabelas de roteamento ficam:

Servidor:
root at ovpn:/etc/openvpn# route -n
Tabela de Roteamento IP do Kernel
Destino         Roteador        MáscaraGen.    Opções Métrica Ref   Uso 
Iface
10.255.0.2      0.0.0.0         255.255.255.255 UH    0      0        0 tun0
10.255.0.0      10.255.0.2      255.255.255.0   UG    0      0        0 tun0
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth3
10.1.0.0        10.255.0.2      255.255.0.0     UG    0      0        0 tun0
10.255.0.0      10.255.0.2      255.255.0.0     UG    0      0        0 tun0
0.0.0.0         192.168.0.254   0.0.0.0         UG    0      0        0 eth3
root at ovpn:/etc/openvpn#

Cliente:
root at cliente:/etc/network# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use 
Iface
10.255.0.1      0.0.0.0         255.255.255.255 UH    0      0        0 tun0
187.17.143.160  0.0.0.0         255.255.255.252 U     0      0        0 eth1
10.255.0.0      10.255.0.1      255.255.255.0   UG    0      0        0 tun0
192.168.0.0     10.255.0.1      255.255.255.0   UG    0      0        0 tun0
10.1.0.0        0.0.0.0         255.255.0.0     U     0      0        0 eth0
0.0.0.0         187.17.143.162  0.0.0.0         UG    100    0        0 eth1
root at cliente:/etc/network#

A pergunta é: ondé quieu tô comendo bola?

Grato por qualquer dica, rtfm, link, etc. Depois que eu resolver isso, 
ainda vou ter que adicionar mais outra rede cliente e fazer as duas se 
enxergarem pela VPN...

-- 
Marcio Merlone



More information about the masoch-l mailing list