Estou tentando configurar uma conexão VPN site a site entre dois de nossos escritórios. Os servidores VPN que estou usando são 2 "Edgerouter lite" e o software de tunelamento que estou usando é o OpenVPN.
É assim que está a configuração no momento:
-
R1:
LAN subnet: 192.168.2.0/24
LAN port: 192.168.2.1
WAN port: X.X.X.X
-
R2:
LAN subnet: 10.10.0.0/24
LAN port: 10.10.0.34
WAN port: Y.Y.Y.Y
-
R1 Open VPN config:
openvpn vtun0 {
local-address 192.168.2.1 {
}
local-port 1194
mode site-to-site
openvpn-option --comp-lzo
openvpn-option --float
openvpn-option "--ping 10"
openvpn-option "--ping-restart 20"
openvpn-option --ping-timer-rem
openvpn-option --persist-tun
openvpn-option --persist-key
openvpn-option "--user nobody"
openvpn-option "--group nogroup"
remote-address 10.10.0.39
remote-host X.X.X.X
remote-port 1194
shared-secret-key-file /config/auth/secret
}
-
R2 Open VPN config:
openvpn vtun0 {
local-address 10.10.0.39 {
}
local-port 1194
mode site-to-site
openvpn-option --comp-lzo
openvpn-option --float
openvpn-option "--ping 10"
openvpn-option "--ping-restart 20"
openvpn-option --ping-timer-rem
openvpn-option --persist-tun
openvpn-option --persist-key
openvpn-option "--user nobody"
openvpn-option "--group nogroup"
remote-address 192.168.2.1
remote-host Y.Y.Y.Y
remote-port 1194
shared-secret-key-file /config/auth/secret
}
-
show openvpn status site-to-site on R1
OpenVPN client status on vtun0 []
Remote CN Remote IP Tunnel IP TX byte RX byte Connected Since
--------------- --------------- --------------- ------- ------- ------------------------
None (PSK) Y.Y.Y.Y 10.10.0.39 51.6K 51.0K N/A
-
show openvpn status site-to-site on R2
OpenVPN client status on vtun0 []
Remote CN Remote IP Tunnel IP TX byte RX byte Connected Since
--------------- --------------- --------------- ------- ------- ------------------------
None (PSK) X.X.X.X 192.168.2.1 85.3K 84.5K N/A
-
Routing table R1:
IP Next hop INT TYPE
0.0.0.0/0 X.X.X.XGW eth1 static
127.0.0.0/8 lo connected
192.168.2.0/24 eth0 connected
X.X.X.X/X eth1 connected
10.10.0.0/24 vtun0 static
10.10.0.39/32 vtun0 connected
-
Routing table R2:
IP Next hop INT TYPE
0.0.0.0/0 Y.Y.Y.YGW eth0 static
127.0.0.0/8 lo connected
10.10.0.0/24 eth1 connected
Y.Y.Y.Y/Y eth0 connected
192.168.2.0/24 vtun0 static
192.168.2.1/32 vtun0 connected
De um host na LAN 192.168.2.0 (em R1), posso executar ping em 10.10.0.34 (IP da porta LAN em R2), mas não consigo executar ping em 10.10.0.4 (um host na LAN R2).
Há algo errado na minha configuração?
Responder1
Isso geralmente tem a ver com roteamento. Se você conseguir passar de um endpoint OpenVPN para outro, deverá estar bem próximo de uma configuração funcional - mas:
Certifique-se de que o encaminhamento de IP esteja ativado se houver uma LAN que precise ser acessível além de um terminal específico.
Os clientes no lado remoto de uma conexão não sabem como voltar para o outro lado da conexão. Isso é verdade nos dois sentidos do túnel.
Você pode corrigir isso usando as instruções iroute
e de sua escolha. Se você estiver unindo duas redes e , no lado do servidor (digamos ), poderá fazer o seguinte:push
openvpn.conf
x.x.x.x
y.y.y.y
x.x.x.x
push "route net mask"
oupush "route x.x.x.x 255.255.255.0"
por exemplo. Isso entrega aos clientes remotosy.y.y.y
a rota correta de voltax.x.x.x
ao túnel.Se o lado do servidor (
x.x.x.x
) precisar ver estações além do gateway OpenVPN emy.y.y.y
, você também precisará usar airoute
instrução. Coloqueiroute y.y.y.y 255.255.255.0
no lado do servidor para que isso aconteça. Basicamente, isso permite que o OpenVPN saiba qual cliente é responsável por uma sub-rede específica.iroute
as instruções precisam ir para occd
(diretório de configuração do cliente, eu acho). Isso geralmente estaria em arquivos nomeados/etc/openvpn/ccd/<client name>
.
Isso deve ajudá-lo, eu acho. Além disso, dê uma olhada na excelente documentação do OpenVPN -como esta parte em LANs. Espero que funcione para você!