VPN não funciona quando conectado à rede doméstica

Tenho um raspberry pi rodando pihole, unbound e pivpn (wireguard). Quando desativo o Wi-Fi no meu celular Android e estou conectado à VPN do wireguard, consigo navegar na internet e acessar servidores locais na minha rede doméstica sem problemas. Se eu conecto minha rede doméstica com o wireguard ativo, não consigo acessar sites ou servidores locais. Queria entender por que isso acontece e se há alguma solução alternativa. Não quero precisar desativar/ativar manualmente minha VPN toda vez que saio ou volto para casa. Agradeço qualquer conselho e, por favor, me avise se precisar de mais detalhes sobre a configuração do meu pi.

Provavelmente isso acontece porque você está tentando se conectar ao seu IP público de dentro da rede, o que geralmente não funciona por várias razões. Dependendo do seu roteador, talvez seja possível criar uma regra de NAT para converter solicitações vindas de dentro da sua rede para o IP do seu Pi.

Em vez disso, minha sugestão seria verificar se o aplicativo VPN que você usa tem um recurso de “on demand” que reconheça quando você está conectado à sua rede doméstica ou a outro SSID confiável e desative o túnel automaticamente. Não há realmente nenhum benefício em estar conectado à VPN enquanto estiver em casa.

Sou usuário da Apple, então não tenho certeza de quais aplicativos Android suportam isso — parece que o aplicativo oficial do WireGuard faz isso, mas a versão para iOS não funcionou bem pra mim, então uso outro aplicativo.

Qual versão do Android você está usando?

Eu não acho que o recurso de on demand ainda exista no Android (corrija-me se estiver errado)

A melhor forma de fazer isso é como o WireGuard faz ao se conectar ao seu SSID em casa, desligando a VPN. Olhe o aplicativo Tasker.

Obrigado pelo feedback. Eu imaginei que teria problemas usando uma VPN que se conecta à minha rede doméstica enquanto meu telefone está conectado ao SSID, mas fico feliz que alguém tenha confirmado minha suspeita. Como mencionei na minha outra resposta, gostaria de ativar/desativar a VPN automaticamente ao me conectar à minha rede doméstica, mas as rotinas do Samsung não permitem isso.

Versão do Android 14. Tenho um Galaxy e estava pensando em criar uma rotina para ativar/desativar minha VPN dependendo de estar ou não conectado à minha rede doméstica, mas por algum motivo só é possível conectar/desconectar de uma VPN que foi adicionada manualmente nas configurações, e não de uma VPN de um aplicativo baixado (WireGuard, neste caso). Vou explorar o Tasker para fazer uma configuração semelhante à que tinha em mente usando uma rotina.

Não tenho o Docker instalado no meu Pi, mas é uma boa informação para saber no futuro. É hora de pesquisar quais alterações preciso fazer nas regras do iptables! Nunca é bom fazer alterações de configuração sem saber exatamente o que estou fazendo.