Presumo que * você está tentando acessar o servidor vpn em seu endereço público e esperando que essa conexão passe pelo túnel.
Isto não acontecerá, o seu cliente precisa se conectar ao seu servidor vpn através da rede pública para estabelecer e manter o túnel.
Você tem várias opções, a mais simples delas parece ser configurar uma espécie de DNS split-horizon usando o Dnsmasq.
- Instale o Dnsmasq no servidor
- Defina uma entrada
/etc/hosts
apontando o nome do seu servidor para o endereço vpn - Em vez de enviar
DNS 8.8.8.8
para os clientes, envieDNS 10.254.1.1
Dessa forma, seus clientes resolverão o nome do servidor internamente enquanto estiverem conectados à VPN.
Se você quiser que o próprio servidor continue a resolver seu próprio nome para o endereço público, use um arquivo de hosts adicional para o Dnsmasq em vez do sistema em /etc/hosts
.
* : se a suposição estiver errada, toda a resposta é inútil, então por favor me avise: -)