Vou tentar explicar minha configuração o mais breve possível. Basicamente, eu tenho um computador desktop conectado a um Raspberry Pi através de um cabo ethernet. O RPi é o servidor OpenVPN.
Assim:
O Raspberry Pi está ligado a:
- Rede Wi-Fi e a Internet (192.168.1.43 255.255.255.0 | Gateway: 192.168.1.254)
- Cabo Ethernet diretamente para a área de trabalho do Windows (10.8.1.1 255.255.255.0)
- Servidor OpenVPN em execução no 10.8.0.1
A área de trabalho do Windows está conectada a:
- Rede Wi-Fi e a Internet (192.168.1.63 255.255.255.0 | Gateway: 192.168.1.254)
- Cabo Ethernet diretamente para o Raspberry Pi (10.8.1.2 255.255.255.0)
Tudo está funcionando bem. Eu posso acessar a internet, meu desktop e tudo como um cliente VPN.
O problema: Quando conectado com outro dispositivo ao servidor VPN e dado o endereço IP 10.8.0.2 (por exemplo), se eu fizer ping no PC Windows (10.8.1.2), o IP mostrado como a fonte do ping é na verdade o Wi-Fi do Raspberry Pi. IP da placa de rede Fi (192.168.1.43) em vez do IP da placa Ethernet ou IP do cliente OpenVPN.
Existe alguma coisa que eu possa fazer quando o cliente VPN pinga / acessa o Windows PC, ele usa seu próprio IP real? (neste caso 10.8.0.2)?
Esta é a tabela de rotas no Raspberry Pi:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.254 0.0.0.0 UG 303 0 0 wlan0
10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0
10.8.1.0 0.0.0.0 255.255.255.0 U 202 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 303 0 0 wlan0
Instalei o OpenVPN usando este script: https://github.com/Nyr/openvpn-install/ No processo de instalação, quando ele me perguntou o meu IPv4 interno, digitei o IP da Ethernet 10.8.1.1. Não sei se isso faz alguma diferença.
Agradeço antecipadamente
SNAT
regras. Embora não esteja totalmente claro como as coisas acabaram do jeito que estão. Melhor começar de novo desde o início, desta vez configurando-a manualmente. Não é tão complicado.