Eu tenho um problema com algum tráfego OpenVPN não passando pelo túnel VPN. Minha configuração é a seguinte:
Eu uso o espaço de endereço 10.7.7.0/24 na minha rede doméstica. No meu Edgerouter (10.7.7.1) eu habilitei o hairpinning NAT, para que eu também possa acessar mydomain.com de dentro da LAN. Eu tenho um servidor OpenVPN (10.7.7.50) que funciona muito bem. Meu laptop recebe um IP (espaço 10.8.1.0/24) e o tráfego passa pelo túnel. Eu também vejo solicitações de DNS no meu pihole, como esperado. Agora só tenho um problema: quando tento acessar mydomain.com de fora (mas conectado à VPN), o tráfego não passa pelo túnel. Eu sei disso porque não vejo uma solicitação de DNS e mydomain.com é acessível apenas a partir da LAN local, por isso a página não é carregada. Eu também comparei traceroute google.com
e traceroute mydomain.com
, e com o google.com eu vejo o tráfego passando pelo 10.8.1.1 e depois para o meu roteador 10.7.7.1, enquanto que para o mydomain.com ele passa pelo 10.0.0.1, que é o gateway do wlan externo ao qual estou conectado.
Quando tento acessar mydomain.com do meu telefone (conectado à VPN), não há problema. O site carrega e esse tráfego passa pela VPN. Espero que o roteamento no meu laptop esteja de alguma forma errado, mas eu não sei muito sobre a rede para consertá-lo ... Algumas informações:
Saída de ip route
no laptop (não está funcionando corretamente):
default via 10.8.1.5 dev tun0 proto static metric 50
default via 10.0.0.1 dev wlo1 proto static metric 600
ip route
no telefone android (funcionando corretamente):
10.0.0.0/24 dev wlan0 proto kernel scope link src 10.0.0.35
10.8.1.8/30 dev tun0 proto kernel scope link src 10.8.1.10
Configuração do servidor OpenVPN:
port 1194
proto tcp
dev tun
....
push "dhcp-option DNS 10.7.7.4" <- pihole
push "dhcp-option DNS 10.7.7.1"
push "redirect-gateway def1 bypass-dhcp"
...
fonte